]>
git.lizzy.rs Git - plan9front.git/log
cinap_lenrek [Wed, 8 Jul 2015 00:13:16 +0000 (02:13 +0200)]
5e: enable VFP emulation by default, doubles only need to be 4 byte aligned
this adds -F flag to 5e (same as 5l) to disable VFP emulation
and makes VFP emulation the default.
cinap_lenrek [Tue, 7 Jul 2015 19:13:36 +0000 (21:13 +0200)]
pc64: use unsigned long for kmapindex and mmu counts avoiding signed integer division
cinap_lenrek [Tue, 7 Jul 2015 17:53:26 +0000 (19:53 +0200)]
ape: port libc smp tas() for arm
cinap_lenrek [Tue, 7 Jul 2015 17:24:10 +0000 (19:24 +0200)]
libc/arm: implement _tas() with LDREX/STREX, execute memory barrier on smp systems (zynq)
cinap_lenrek [Tue, 7 Jul 2015 17:17:55 +0000 (19:17 +0200)]
all kernels: declare _tas() to prevent pulling in libc version (for libmemdraw)
cinap_lenrek [Tue, 7 Jul 2015 04:30:34 +0000 (06:30 +0200)]
5e: approximate LL/SC with cas()
cinap_lenrek [Tue, 7 Jul 2015 04:26:56 +0000 (06:26 +0200)]
5e: make sure stack base is aligned to avoid unaligned memory trap on arm
stanley lieber [Thu, 2 Jul 2015 01:46:47 +0000 (21:46 -0400)]
open(2): fix typo
cinap_lenrek [Mon, 29 Jun 2015 20:28:23 +0000 (22:28 +0200)]
nusb/audio: dont sysfatal on bad endpoint (no altc)
cinap_lenrek [Sun, 28 Jun 2015 19:50:30 +0000 (21:50 +0200)]
nusbrc: handle fat formated usb drives without partition table
on some usb drives, there is no dos partition table, so check
the filesystem type and consider the whole drive.
cinap_lenrek [Sun, 28 Jun 2015 19:13:34 +0000 (21:13 +0200)]
etherwpi: remove debug prints, use iprint() in interrupt
cinap_lenrek [Sun, 28 Jun 2015 18:40:19 +0000 (20:40 +0200)]
wpa: do not prompt for key when there is already one in factotum
cinap_lenrek [Sun, 28 Jun 2015 16:32:54 +0000 (18:32 +0200)]
etherwpi: Intel PRO Wireless 3945abg driver based on openbsd's if_wpi (thanks aap)
cinap_lenrek [Sun, 28 Jun 2015 16:22:36 +0000 (18:22 +0200)]
pc, pc64: toggle bit 2 in port 0x61 to reset and enable PCI SERR# nmi's, print nmi status
stanley lieber [Sat, 27 Jun 2015 23:45:24 +0000 (19:45 -0400)]
approx: chmod 775
aiju [Sat, 27 Jun 2015 20:00:33 +0000 (22:00 +0200)]
added approx(1)
stanley lieber [Fri, 26 Jun 2015 18:10:01 +0000 (14:10 -0400)]
fortunes: No we can't.
cinap_lenrek [Sun, 21 Jun 2015 17:35:08 +0000 (19:35 +0200)]
wifi: berlin prime bunny hopping
- reduce delay for channel hop to 200ms
- use 1000ms timeout for auth response (dont hop channels while we wait)
- bunny hop sequence is mathematically prooven
cinap_lenrek [Fri, 19 Jun 2015 12:43:32 +0000 (14:43 +0200)]
5e: implement DSB,DMB,ISB and CLREX instructions
cinap_lenrek [Fri, 19 Jun 2015 08:27:26 +0000 (10:27 +0200)]
kernel: do not pull in atom.s from libc for arm kernels
- provide our own copy of cas() in l.s
- replace use of libc ainc()/adec() with portable incref()/decref()
cinap_lenrek [Fri, 19 Jun 2015 07:02:59 +0000 (09:02 +0200)]
exec(2): return register (R0) contains address of Tos structure.
cinap_lenrek [Fri, 19 Jun 2015 00:45:58 +0000 (02:45 +0200)]
kernel: ignore last page at the top of virtual kernel address space for xalloc()
avoding kernel address -BY2PG because of end pointer wrapping to zero.
stanley lieber [Thu, 18 Jun 2015 19:14:06 +0000 (15:14 -0400)]
ndb(6): fix typo (thanks, pena)
stanley lieber [Thu, 18 Jun 2015 18:28:25 +0000 (14:28 -0400)]
dhcpd(8): the fs attribute refers to the file server, not the name server (thanks, pena)
cinap_lenrek [Thu, 18 Jun 2015 10:16:54 +0000 (12:16 +0200)]
zynq: use KADDR() for kmap() if we can avoiding the mapping
cinap_lenrek [Thu, 18 Jun 2015 10:15:33 +0000 (12:15 +0200)]
kernel: ignore memory pages with singular kernel addresses
addresses va's of 0 and -BY2PG cause trouble with some memmove()/memset()
implementations and possibly other code because of the nil pointer
and end pointers wrapping to zero.
cinap_lenrek [Thu, 18 Jun 2015 02:35:46 +0000 (04:35 +0200)]
zynq: fix barriers
unlock()/iunlock():
we need to place the coherence() *before* "l->key = 0", so that any
stores that where done while holding the lock become observable
*before* other processors see the lock released.
cas()/tas():
place memory barrier before successfull return to prevent reordering.
cinap_lenrek [Thu, 18 Jun 2015 01:13:50 +0000 (03:13 +0200)]
kernel: do not inherit Proc.dot (current working directory) in kproc()
making sure to close the dot in every kproc appears repetitive,
so instead stop inheriting the dot in kproc() as this is usually
never what you wanted in the first place.
cinap_lenrek [Thu, 18 Jun 2015 20:58:56 +0000 (22:58 +0200)]
kernel: do not inherit current directory channel (dot) to pager
kproc() inherits dot and slash, pager needs to drop these
channels, otherwise it will keep the files open preventing
say, ramfs to exit.
ftrvxmtrx [Wed, 17 Jun 2015 16:07:32 +0000 (18:07 +0200)]
usps: cut the useless part
cinap_lenrek [Tue, 16 Jun 2015 06:08:42 +0000 (08:08 +0200)]
stats: add kernel malloc and kernel draw allocation size graphs
cinap_lenrek [Tue, 16 Jun 2015 06:05:33 +0000 (08:05 +0200)]
devcons: add current pool allocations to #c/swap
cinap_lenrek [Tue, 16 Jun 2015 04:05:12 +0000 (06:05 +0200)]
kernel: remove waserror() arround newpage() in mntcache
newpage() does not raise error().
cinap_lenrek [Mon, 15 Jun 2015 15:40:47 +0000 (17:40 +0200)]
kernel: add pagechaindone() to wakeup processes waiting for memory
we keep the details about palloc in page.c, providing pagechaindone()
for mmu code to be called after a series of pagechainhead() calls.
cinap_lenrek [Mon, 15 Jun 2015 15:13:19 +0000 (17:13 +0200)]
dontkill: only use noswap flag to mark processes as not to be terminated on oom
changing procmode has the nasty side effect that notes cannot
be posted to them, prventing sysfatal() and threadexitsall()
to cleanup properly.
recent kernels also check the noswap flag to void killing them
in out of memory condition, so this is really all we need now.
aiju [Mon, 15 Jun 2015 14:27:27 +0000 (16:27 +0200)]
there's plenty of room in /lib
cinap_lenrek [Mon, 15 Jun 2015 14:05:00 +0000 (16:05 +0200)]
kernel: implement separate wait queues for page allocation
give kernel processes and local disk file servers (procs
having noswap flag set) a clear advantage for page allocation
under starved condition by giving them ther own wait queue so
they get readied as soon as pages become available.
cinap_lenrek [Mon, 15 Jun 2015 06:28:10 +0000 (08:28 +0200)]
hjfs: defer parent directory permission check for wstat
check parent directory permission *after* we determined
that the new name does not exist in the parent, so that
when the new name is the same as old name then no write
permission is required in the parent directory.
cinap_lenrek [Sun, 14 Jun 2015 23:57:54 +0000 (01:57 +0200)]
hjfs: fix wstat
- rename to same name is ok
- only truncate when file size is different
- check for uid/gid *change*, not if it is specified or not
cinap_lenrek [Sun, 14 Jun 2015 22:30:19 +0000 (00:30 +0200)]
nusb/serial: remove unused channel
cinap_lenrek [Mon, 15 Jun 2015 20:32:15 +0000 (22:32 +0200)]
zynq: remove unused PTE typedef
all the mmu code uses ulong, so get rid of the typeded.
cinap_lenrek [Mon, 15 Jun 2015 20:13:55 +0000 (22:13 +0200)]
zynq: remove unused statistics fields from Mach structure
cinap_lenrek [Sun, 14 Jun 2015 19:31:44 +0000 (21:31 +0200)]
ndb/dns: cleanup forwarding code (redistrib())
instead of copying the whole packet, just save the
udp header and restore it aftwards. dont call redistrib()
when there are no forwards (this should be almost always
the case).
stanley lieber [Sun, 14 Jun 2015 00:34:33 +0000 (20:34 -0400)]
theo: You are on your own.
ftrvxmtrx [Sat, 13 Jun 2015 19:28:33 +0000 (21:28 +0200)]
aux/vga: == is not strncmp
cinap_lenrek [Sat, 13 Jun 2015 18:58:56 +0000 (20:58 +0200)]
htmlroff: fix wrong newline in \name handling (| -> ||)
ftrvxmtrx [Sat, 13 Jun 2015 18:21:26 +0000 (20:21 +0200)]
qc, 9/ppc, 9/mtx: fix wrong if statements
cinap_lenrek [Sat, 13 Jun 2015 15:50:26 +0000 (17:50 +0200)]
kernel: dont use smalloc() to allocate pte array in ibrk()
when we'r out of kernel memory, it is probably better to
let that alloc fail instead of hanging while holding the
segment qlock.
cinap_lenrek [Sat, 13 Jun 2015 13:03:56 +0000 (15:03 +0200)]
vblade, cifs, usbuhci: fix parenthesis
cinap_lenrek [Sat, 13 Jun 2015 13:01:02 +0000 (15:01 +0200)]
lock: reopen lockfile after changing mode to make lock effective
lock is acquired on open/create when file has DMEXCL set in mode,
so we need to reopen the file after setting the bit with wstat.
cinap_lenrek [Sat, 13 Jun 2015 10:43:15 +0000 (12:43 +0200)]
lib9p: fix lib9p wstat qid.type/mode checks (fixes lock(1) for ramfs/hjfs)
cinap_lenrek [Sat, 13 Jun 2015 20:37:26 +0000 (22:37 +0200)]
ndb/dns: use same buffer size of udp packet in redistrib() as dnudpserver() (fixes assert)
cinap_lenrek [Fri, 12 Jun 2015 15:50:43 +0000 (17:50 +0200)]
games/doom: remove Makefile
cinap_lenrek [Fri, 12 Jun 2015 15:28:09 +0000 (17:28 +0200)]
games/doom: fix desyncing demo (thanks qwx)
the code used P_Random()-P_Random() in some places which has
undefined evaluation order resulting in the wrong pseudo random
numbers being returned causing demo playback to desync.
this change adds P_Random2() function which returns the right
delta-random number and uses it in place of P_Random()-P_Random()
expression.
cinap_lenrek [Fri, 12 Jun 2015 12:28:31 +0000 (14:28 +0200)]
kernel: fix accounttime() for HZ >= 1000
"milli-CPU's" is too low resolution for the decaying load average
calculation when HZ >= 1000.
cinap_lenrek [Thu, 11 Jun 2015 19:26:26 +0000 (21:26 +0200)]
zynq: increase kernel memory for graphics
cinap_lenrek [Thu, 11 Jun 2015 14:44:05 +0000 (16:44 +0200)]
zynq: mouse acceleration
cinap_lenrek [Thu, 11 Jun 2015 14:14:11 +0000 (16:14 +0200)]
zynq: make screen and cursor kprocs exit properly
cinap_lenrek [Thu, 11 Jun 2015 14:04:24 +0000 (16:04 +0200)]
zynq: add support for hardware cursor
to enable hardware cursor, write "addr va" to /dev/mousectl where
va is the virtual address of the cursor position register.
ftrvxmtrx [Thu, 11 Jun 2015 20:14:24 +0000 (22:14 +0200)]
merge
ftrvxmtrx [Thu, 11 Jun 2015 20:13:55 +0000 (22:13 +0200)]
fix strncmp/memcmp used with a wrong number
cinap_lenrek [Wed, 10 Jun 2015 15:18:31 +0000 (17:18 +0200)]
cifsd: smbrename is still ok when file is readonly (fixed git)
cinap_lenrek [Tue, 9 Jun 2015 23:27:44 +0000 (01:27 +0200)]
zynq: fix flushmemscreen()
ftrvxmtrx [Tue, 9 Jun 2015 16:25:09 +0000 (18:25 +0200)]
remove drawlsetrefresh and convM2Tnoenc: undefined functions
ftrvxmtrx [Tue, 9 Jun 2015 10:32:38 +0000 (12:32 +0200)]
addpt(2): put badrect in .SH NAME so that it gets into the searchindex
ftrvxmtrx [Tue, 9 Jun 2015 10:29:57 +0000 (12:29 +0200)]
esetcursor(2), alarm(2): fix prototypes
ftrvxmtrx [Tue, 9 Jun 2015 09:54:22 +0000 (11:54 +0200)]
event(2): fix estartfn prototype
ftrvxmtrx [Tue, 9 Jun 2015 09:46:37 +0000 (11:46 +0200)]
authsrv.h: remove nonexistent prototypes
ftrvxmtrx [Tue, 9 Jun 2015 08:33:30 +0000 (10:33 +0200)]
libdraw: sync allocimage/allocwindow prototypes with man pages
cinap_lenrek [Tue, 9 Jun 2015 08:04:04 +0000 (10:04 +0200)]
ip: fix wrong radix for iphash() (thanks yoann padioleau)
yoann padioleaus report on 9fans:
> I think I’ve found a bug in the network stack.
> in 9/ip/ip.h there is
> struct Ipht
> {
> Lock;
> Iphash *tab[Nipht];
> };
>
> where Night is 521,
>
> but then in 9/ip/ipaux.c there is
>
> ulong
> iphash(uchar *sa, ushort sp, uchar *da, ushort dp)
> {
> return ((sa[IPaddrlen-1]<<24) ^ (sp << 16) ^ (da[IPaddrlen-1]<<8) ^ dp ) % Nhash;
> }
>
> where Nhash is just 64,
cinap_lenrek [Tue, 9 Jun 2015 07:17:55 +0000 (09:17 +0200)]
zynq: add /dev/fbctl to attach framebuffer to devdraw
cinap_lenrek [Tue, 9 Jun 2015 01:33:37 +0000 (03:33 +0200)]
devsegment: fix parsecmd() memory leak
cinap_lenrek [Mon, 8 Jun 2015 23:42:59 +0000 (01:42 +0200)]
libdraw: consistent use of nil for pointers, error handling
ftrvxmtrx [Mon, 8 Jun 2015 22:15:59 +0000 (00:15 +0200)]
unix is BUGGERED. remove it
ftrvxmtrx [Tue, 9 Jun 2015 21:53:07 +0000 (23:53 +0200)]
authsrv: remove unused opasstokey
ftrvxmtrx [Tue, 9 Jun 2015 21:34:36 +0000 (23:34 +0200)]
addpt(2): document badrect function
ftrvxmtrx [Tue, 9 Jun 2015 21:23:00 +0000 (23:23 +0200)]
freeimage(2), readcolmap(2), writecolmap(2): fix prototypes
cinap_lenrek [Mon, 8 Jun 2015 19:08:57 +0000 (21:08 +0200)]
exec(2): exec argument size only limited by user stack size
ftrvxmtrx [Mon, 8 Jun 2015 10:59:51 +0000 (12:59 +0200)]
exec(2): fix prototypes
cinap_lenrek [Mon, 8 Jun 2015 00:49:02 +0000 (02:49 +0200)]
merge
cinap_lenrek [Mon, 8 Jun 2015 00:43:49 +0000 (02:43 +0200)]
aux/vga: disable nvidiascale() as it broke modeset on kenjis card
this code needs revision, need a list of cards where this actually
works.
stanley lieber [Sun, 7 Jun 2015 19:12:06 +0000 (15:12 -0400)]
/lib/face: add updated addresses for quanstro, bwc, steve.simon (thanks, erik)
cinap_lenrek [Sun, 7 Jun 2015 15:41:43 +0000 (17:41 +0200)]
devfs: remove useless ~OTRUNC mask for openmode
cinap_lenrek [Sun, 7 Jun 2015 15:33:31 +0000 (17:33 +0200)]
zynq: fix /dev/pl
prevent double sleep():
callers to sleep() need to be serialized as there can only
be one process sleeping at a time. plrlock and plwlock do
this.
wait for dma to complete in plwrite():
we have to wait for the dma to complete before touching
plbuf again.
maintain COPEN flag in archopen()/archclose():
when open fails because it was in use, clear the COPEN
flag, so archclose() wont screw stuff up.
stanley lieber [Sat, 6 Jun 2015 22:20:48 +0000 (18:20 -0400)]
fortunes: Turning off comments.
stanley lieber [Sat, 6 Jun 2015 22:18:38 +0000 (18:18 -0400)]
sysinfo: update -p for sysinfo.9front.org
cinap_lenrek [Sat, 6 Jun 2015 22:11:47 +0000 (00:11 +0200)]
sysupdate: change source repo to https://code.9front.org/hg/plan9front
code.google.com is shutting down, the new repository is on code.9front.org.
cinap_lenrek [Sun, 7 Jun 2015 20:14:01 +0000 (22:14 +0200)]
libsec/tlshand: implement client side ECDHE (many thanks to pr!)
cinap_lenrek [Sun, 7 Jun 2015 20:12:46 +0000 (22:12 +0200)]
libsec/ecc: fix memory leak (free() vs mpfree())
cinap_lenrek [Sat, 6 Jun 2015 00:13:01 +0000 (02:13 +0200)]
prep(8): edisk also adds a EFI system partition (esp) when not already exists.
cinap_lenrek [Sat, 6 Jun 2015 00:00:51 +0000 (02:00 +0200)]
inst: provide gpt/mbr choice when disk is blank, format esp
cinap_lenrek [Fri, 5 Jun 2015 19:57:08 +0000 (21:57 +0200)]
disk/edisk: create esp partition in addition to plan9 partition in auto mode
cinap_lenrek [Fri, 5 Jun 2015 03:09:22 +0000 (05:09 +0200)]
9boot: look for plan9.ini in all filesystems accessible to efi to find plan9 partition
try the handle buffer in reverse order looking for plan9.ini
to find plan9 partition (9fat). when that fails, we'll default
to the first handle which should be the esp.
mischief [Fri, 5 Jun 2015 00:16:23 +0000 (17:16 -0700)]
ape: define long long limits
cinap_lenrek [Thu, 4 Jun 2015 02:34:08 +0000 (04:34 +0200)]
dossrv: maintain file creation date/time on disk, fsinfo sector can be 0 (disabled)
cinap_lenrek [Thu, 4 Jun 2015 01:58:03 +0000 (03:58 +0200)]
disk/format: create Fatinfo sector for fat32
cinap_lenrek [Wed, 3 Jun 2015 21:19:13 +0000 (23:19 +0200)]
disk/edisk: fix blank mode
there where two problems with blank (-b flag):
we did not update the backup header when there was already a valid
backup header in place. we always want to initialize a new backup header
in blank mode!
we now also check the backup header matches the primary (or the other
way arround depending on which header could be read), reporting any
mismatches and restoring the backup from the data of the primary.
the protective mbr needs to start at sector 1 not 0 (apparently, this
matters for ovmf).
cinap_lenrek [Tue, 2 Jun 2015 14:56:19 +0000 (16:56 +0200)]
rc-httpd: cleanup cgi handler
- avoid silly stats and checks for $cgi_dir, just use status
from builtin cd.
- log proper http status code from the cgi script
cinap_lenrek [Mon, 1 Jun 2015 23:15:43 +0000 (01:15 +0200)]
authsrv: use plan9 key for http authentication
in addition to /sys/lib/httppasswords, allow http authentication
to use the plan9 password, which can be changed by the user.
cinap_lenrek [Tue, 2 Jun 2015 21:44:39 +0000 (23:44 +0200)]
hgweb.cgi: +x