summaryrefslogtreecommitdiff
path: root/sys/src
AgeCommit message (Collapse)Author
2014-09-27games/gba: slowly working (no pun intended)aiju
2014-07-31spred: scrolling and other bugfixesaiju
2014-07-30added sprite editor spredaiju
2014-07-23rc: fix slow Xqdol(), avoid recursion in conclist(), estrdup(), avoid copyingcinap_lenrek
Xqdol() used to take quadratic time because of strcat(), the code isnt really needed as list2str() aready does the same thing in linear time without the strcat(). add estrdup() which uses emalloc() so allocation error are catched. move strdups() of name from callers into newvar(). avoid recursion of conclist(), and avoid copying of word strings by providing Newword() function which doesnt copy the word string.
2014-07-22games/md: add -2 -3 -a and trailing newline to usagestanley lieber
2014-07-22games/snes: add -a -h -m -T to usagestanley lieber
2014-07-22ratrace: make multithreaded ratraces less confusing (for mischief)cinap_lenrek
2014-07-21libdraw: add missing borderop() (thanks aiju)cinap_lenrek
2014-07-21pc64: cleanup syscallentry()cinap_lenrek
avoid the stack shuffeling and make syscallentry() and forkret() use the same stack offsets.
2014-07-20pc64: dont save/restore DS/ES/FS/GS segment registers on syscall or ↵cinap_lenrek
interrupt, they are ignored in long mode. we do not support 32 bit processes and DS, ES, FS and GS segment registers are ignored in long mode, so theres no point in saving and restoring them.
2014-07-20pc64: preserve user extern registers R14 and R15 across syscalls, use ↵cinap_lenrek
Ureg.bp (RARG) for syscall number the 6c compiler reserves R14 and R15 for extern register variables, which is used by the kernel to hold the m and up pointers. until now, the meaning of R14 and R15 was undefined for userspace and extern register would not work as the kernel trashes R14 and R15 on syscalls. with this change, user extern registers R14 and R15 are zeroed on exec and otherwise preserved across syscalls. so userspace *could* use them for per process variables like the kernel does. use Ureg.bp (RARG) for syscall number instead of Ureg.ax. this is less confusing and mirrors the amd64 calling convention.
2014-07-17libframe: use correct text color on frinsert depending on selection (thanks sl)cinap_lenrek
frinsert() used cols[TEXT] for drawing selected text instead of the HTEXT color. this was discovered with rio -b.
2014-07-15page: fix deadlock with addpage (thanks BurnZeZ for the stacktraces)cinap_lenrek
addpage() should not be called with the display locked as it calls showpage1() which sleeps when there are too many processes active. the bug was triggered by plumbing to trigger the addpage().
2014-07-15devproc: nilcinap_lenrek
2014-07-15devproc: fix syscalltrace error handling, conistent use of nil for pointerscinap_lenrek
2014-07-14devproc: fix mistakecinap_lenrek
2014-07-14devproc: fix proccrlmemio bugscinap_lenrek
dont kill the calling process when demand load fails if fixfault() is called from devproc. this happens when you delete the binary of a running process and try to debug the process accessing uncached pages thru /proc/$pid/mem file. fixes to procctlmemio(): - fix missed unlock as txt2data() can error - make sure the segment isnt freed by taking a reference (under p->seglock) - access the page with segment locked (see comment) - get rid of the segment stealer lock other stuff: - move txt2data() and data2txt() to segment.c - add procpagecount() function - make return type mcounseg() to ulong
2014-07-13libmach: fix break point instruction for little endian MIPS (from sources)cinap_lenrek
fix break point instruction for little endian MIPS in libmach. (patch /n/sources/patch/libmach-mipsle-bpinst)
2014-07-13tftpfs: make sure path is null terminatedcinap_lenrek
2014-07-13ftpd: dont skip unmountnet() and return proper error string from dialdata()cinap_lenrek
2014-07-13tftpd: fix error string packet overflow in nak(), fix syslog reportingcinap_lenrek
2014-07-12expr: fix missing type declarations for match(), which broke on amd64 as ↵cinap_lenrek
pointers dont fit into a long
2014-07-11kernel: only complain about no images when theres nothing more to reclaimcinap_lenrek
uncaching a thousand pages (arround 4MB) might not be enougth. so keep on reclaiming pages and only complain once theres nothing more to reclaim.
2014-07-10Add AHCI support for Intel 8 Series/C220 Series Chipset Family SATA ↵cinap_lenrek
Controller. (from sources)
2014-07-10Add Intel C226 chipset PCI support. (from sources)cinap_lenrek
2014-07-09abaco: fix double free race of p->status string (thanks BurnZeZ for the proc ↵cinap_lenrek
snap)
2014-07-09pc, pc64: initial machine check architecture supportcinap_lenrek
2014-07-08bcm: apply richards fix for mmukmap (from /n/sources/patch/bcm-mmukmap-bug)cinap_lenrek
2014-07-05nusb/serial: implement flushescinap_lenrek
handle reads and writes with 9pqueue(2) so they can be flushed and wont hang the filesystem. this also lets us get rid of the timeouts. ftdi is still full of braindamage that should be rewritten, but i dont have a device to test.
2014-07-05nusb/serial: more cleanupcinap_lenrek
2014-07-05support for huawei e220 g3 modem, cleanup nusb/serialcinap_lenrek
2014-07-03remove executable bit from /sys/src/lib9p/ramfs.ccinap_lenrek
2014-06-29nusbrc: ensure rpi ethernet always appears as /net/etherU0stanley lieber
2014-06-28nusb: fix spelling, sorrycinap_lenrek
2014-06-28mergecinap_lenrek
2014-06-28nusb: implement aijus stable uniqueue device namescinap_lenrek
instead of naming devices by ther dynamically assigned device address, we hash device uniqueue fields from the device descriptor and produce a 5 digit hex string that will identify the device across machines. when there is a collision (less than 1% chance with 100 devices), usbd will append the device address to the name to make it uniqueue for this machine. the hname is passed to drivers in the devid argument, which now has the form addr:hname, where the colon and hname can be omited (for backwards compatibility). when the new behaviour isnt desired, nousbhname= environment variable can be defined giving the old behaviour.
2014-06-28iostats: more procscinap_lenrek
2014-06-27mergemischief
2014-06-27unzip: fix usagemischief
2014-06-28ptp: fix alignment assumptions for amd64cinap_lenrek
2014-06-25upas/fs: disable imap mail fetch pipeline due to racemischief
pipeline = 1 with a dovecot imap server causes FETCH and OK responses get interleaved so some message bodies accidentally get merged together. disabling it will make fetching mail over imap slower, but it works.
2014-06-25xen: delete screen.h from pc that accidentally snuck in. a screen.h for xen ↵mischief
framebuffer will be added later.
2014-06-25xen: fix boot argv0mischief
2014-06-25xen: gotta go fastmischief
use smaller timeouts for sleeps while waiting for xen ether and sd devices to come online. in practice they come up very quickly.
2014-06-25xen: correct print format for longmischief
2014-06-24xen: fix early consolemischief
2014-06-24import xen 32 bit paravirtual kernel from /n/sources/xen.mischief
2014-06-23kernel: more proc.c cleanupcinap_lenrek
2014-06-23kernel: make use of nil and 0 consistent in proc.ccinap_lenrek
always explicitely compare with nil if pointer. sorry for the noise. :(
2014-06-23kernel: fix cooperative scheduling for wired processescinap_lenrek