Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-05-11 | devip: avoid media bind/unbind kproc reader startup race, simplify etherbind | cinap_lenrek | |
mark reader process pointers with (void*)-1 to mean not started yet. this avoids the race condition when media unbind happens before the kproc has set its Proc* pointer. then we would not post the note and the reader would continue running after unbind. etherbind can be simplified by reading the #lX/addr file to get the mac address, avoiding the temporary buffer. | |||
2019-05-11 | timezones: add India (thanks joe9) | 23hiro | |
2019-05-10 | bcm64: use exclusive monitor on nrdy to wake up idlehands() | cinap_lenrek | |
when the exclusive monitor is cleared, a event is generated which we can use to wake up idlehands. that way we do not need to wait for the next timer interrupt until a cpu takes work from the run queue. | |||
2019-05-10 | ape: fix malloc to deal with more than 4GB of memory on 64 bit systems | cinap_lenrek | |
2019-05-09 | libc: fix return value for arm64 memset() and memove() | cinap_lenrek | |
2019-05-09 | libc: use MOVP instruction for arm64 memmove() and memset() | cinap_lenrek | |
2019-05-09 | bcm64: use MOVP instruction for saving and restoring registers | cinap_lenrek | |
2019-05-09 | libmach: remove newline | cinap_lenrek | |
2019-05-09 | libmach: support for MOVP instruction disassembly for arm64 | cinap_lenrek | |
2019-05-09 | 7l: implement MOVP instruction | cinap_lenrek | |
2019-05-09 | libc: provide arm64 assembly versions for memmove() and memset() | cinap_lenrek | |
just a first approximation, uses unaligned 8 byte loads and stores. MOVP not yet implemented by the linker. no ZVA cache magic yet. | |||
2019-05-09 | bcm64: map framebuffer write-through to allow unaligned access | cinap_lenrek | |
2019-05-07 | wadfs: avoid comma operator after PBIT32() macros | cinap_lenrek | |
2019-05-07 | plan9.ini(8), boot(8): clarify the use of $rootdir and $rootspec | cinap_lenrek | |
2019-05-07 | nusb/usbd: work around devices that ignore the high byte of wLength in ↵ | cinap_lenrek | |
control transfer reads there appear to be devices out there such as Realtek RTL2838UHIDIR SDR that do not process control transfers correctly, ignoring the high byte of the wLength field. to work around this, we specify an odd number of bytes for read sizes >= 256 which keeps the low byte 0xFF. | |||
2019-05-06 | Sand edges down on GBIT64()/PBIT64() macros. | Ori Bernstein | |
Now, you can safely use them in unbraced if statements, and with char*s. | |||
2019-05-06 | merge | cinap_lenrek | |
2019-05-06 | dist/mkfile: add *.pi3.img target for ARM64 raspberry pi3 | cinap_lenrek | |
2019-05-05 | lib: update pci database | mischief | |
2019-05-05 | bootrc: fix $rootdir and $rootspec handling (thanks lucio) | cinap_lenrek | |
we did not interpret the $rootdir and $rootspec environment variables right. $rootdir is what gets bound to / (usually /root) and $rootspec is the mountspec of /root. | |||
2019-05-05 | bcm: make sure fiq is on enabled on cpu0 | cinap_lenrek | |
2019-05-05 | bcm64: provide idlehands() function | cinap_lenrek | |
2019-05-05 | bcm64: get rid of usb workaround delay | cinap_lenrek | |
2019-05-05 | usbdwc: enable Slowbuilkin workarround, improve split transaction timing, ↵ | cinap_lenrek | |
handle erroring sleep(), debugging i'v been seeing the error condition described above in the Slowbulkin comment. so i'm enabling the work arround which seems to fix the lockup. in the split transaction case where we want to start the transaction at frame start, acquire the ctlr lock *before* checking if we are in the right frame number. so the start will happen atomically. checking the software ctlr->sofchan instead of checking the interrupt mask register seems to be quicker. setting the haint mask bit for the chan under ctlr lock in chanio() instead of chanwait() avoids needing to acquire the ctlr lock twice. mask wakechan bits with busychan bitmap in interrupt handlers so we will not try to wake up released chans by accident. sleep() and tsleep() might get interrupted so we have to release the split qlock in the split transaction case and in all cases, make sure to halt the channel before release. add some common debug functions to dump channel and controller registers. | |||
2019-05-05 | libc: fix NaN check precedence bug in modf() (thanks BurnZeZ) | cinap_lenrek | |
2019-05-04 | acid: add arm64 support | cinap_lenrek | |
2019-05-03 | rootstub: add /sys/lib/dist/ndb/dhcp/ | cinap_lenrek | |
2019-05-03 | pc kernel: remove countpagerefs() (thanks BurnZeZ) | cinap_lenrek | |
forgot to commit this... | |||
2019-05-03 | kernel: exec support for arm64 binaries | cinap_lenrek | |
2019-05-03 | bcm64: add experimental work in progress arm64 kernel for raspberry pi 3 | cinap_lenrek | |
2019-05-03 | bcm: don't call nil on PADDR() in dmaaddr(), return busdram dummy address | cinap_lenrek | |
2019-05-03 | bcm: move fiq saved pc adjust into lexception.s so it can be shared with arm64 | cinap_lenrek | |
2019-05-03 | uartpl011: dont touch line control while uart is enabled | cinap_lenrek | |
2019-05-03 | ktrace: arm64 support | cinap_lenrek | |
2019-05-03 | arm64: add mkfile | cinap_lenrek | |
2019-05-03 | python: arm64 support | cinap_lenrek | |
2019-05-03 | gs: arm64 support | cinap_lenrek | |
2019-05-03 | gs: avoid stupid shifts by casting to uint64_t | cinap_lenrek | |
2019-05-03 | ape: initial support for arm64 | cinap_lenrek | |
2019-05-03 | libthread: initial support for arm64 | cinap_lenrek | |
2019-05-03 | libmp: add dummy mkfile for arm64 | cinap_lenrek | |
2019-05-03 | libsec: dummy mkfile for arm64 | cinap_lenrek | |
2019-05-03 | libmach: initial arm64 support | cinap_lenrek | |
2019-05-03 | libc: initial arm64 support | cinap_lenrek | |
2019-05-01 | 7l: add missing AFMOVD with EXT/AUTO/LOREG operands to optab | cinap_lenrek | |
2019-05-01 | kernel: get rid of checkpagerefs() debugging | cinap_lenrek | |
was only implemented by the pc kernel. does not account pages used by the mount cache. | |||
2019-05-01 | kernel: export freepages() function so it can be used in mmurelease() | cinap_lenrek | |
2019-05-01 | kernel: include lock pointer in error report, stop spamming lockloop prints ↵ | cinap_lenrek | |
when we are panicing | |||
2019-05-01 | kernel: insert memory barrier in the scheduler before setting up->mach = nil | cinap_lenrek | |
we have to ensure that all stores saving the process state have completed before setting up->mach = nil in the scheduler. otherwise, another cpu could observe up->mach == nil while the stores such as the processes p->sched label have not finnished. | |||
2019-05-01 | [5678vq]c: fix .safe node type for *FUNC() = *FUNC() sugen | cinap_lenrek | |