summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-12-19libc: implement getppid() reading /proc/$pid/ppid instead of /dev/ppidcinap_lenrek
The devcons driver is really the wrong place to serve per process information.
2020-12-19devsons: remove #c/pgrpidcinap_lenrek
The process group id is essentially a unique id of the namespace but it was never well documented nor is it used by any program.
2020-12-19g: initialize files env varSigrid
2020-12-18vt: rfork environment varibles (thanks fshahriar)Ori Bernstein
vt sets several environment variables ($TERM, $COLS, $LINES) after exiting. This change rforks the environment so that this detritus doesn't get left behind.
2020-12-18strndup: don't assume buffer is terminatedOri Bernstein
Using strlen in strndup will walk past the first n bytes up to the terminator, which may not be present. This is not what we want. While we're here, do some cleanups.
2020-12-18kbmap: add Turkish keymap (thanks Kemal)kvik
2020-12-17hpost: support custom headers (thanks julienxx)Ori Bernstein
hget supports adding custom headers with -r; it makes sense for hpost to do the same, both because custom headers are more likely necessary with POSTs, and for consistency.
2020-12-17libap: add strndupOri Bernstein
strndup is part of POSIX.1, so APE should provide it. This patch adds it, so need to patch it out of fewer programs going forward.
2020-12-17ether2114x: make sure pci bar0 is I/Ocinap_lenrek
2020-12-17ether2114x: vetting the driver for pc64cinap_lenrek
the tulip driver is used in microsofts hypver-v as the legacy ethernet adapter for pxe booting. to make the driver work on pc64, we need to store the Block* pointers in a separate array instead of stuffing them into buffer address 2 of the hardware descriptor. also, enable the driver in the pc64 kernel.
2020-12-15pc: set exit status depending on errorsSigrid
2020-12-15pc: treat EOF gracefully, allowing easier use within sam command languageSigrid
2020-12-15mergeAlex Musolino
2020-12-15ico: avoid potential nil pointer dereferencesAlex Musolino
Bgeticon can fail, leaving the Icon img pointers nil.
2020-12-15ico: fix interpretation of 0 widths/heightsAlex Musolino
2020-12-13iostats: dup 9p pipe to both fd 0 and fd 1 for exportfscinap_lenrek
2020-12-13cpu(1): refer to oexportfs(4)cinap_lenrek
2020-12-13import(4): refer to oexportfs(4)cinap_lenrek
2020-12-13oexportfs: move legacy code for cpu and import to separate programcinap_lenrek
The initial protocol handling in exportfs for cpu and import services is a huge mess. Saparate the code out into its own program with its own oexportfs(4) manpage.
2020-12-13kernel: implement per file descriptor OCEXEC flag, reject ORCLOSE when ↵cinap_lenrek
opening /fd, /srv and /shr The OCEXEC flag used to be maintained per channel, making it shared between all the file desciptors. This has a unexpected side effects with regard to channel passing drivers such as devdup (/fd), devsrv (/srv) and devshr (/shr). For example, opening a /srv file with OCEXEC makes it impossible to be remounted by exportfs as it internally does a exec() to mount and re-export it. There is no way to reset the flag. This change makes the OCEXEC flag per file descriptor, so a open with the OCEXEC flag only affects the fd group of the calling process, and not the channel itself. On rfork(RFFDG), the per file descriptor flags get copied. On dup(), the per file descriptor flags are reset. The second modification is that /fd, /srv and /shr should reject the ORCLOSE flag, as the files that are returned have already been opend.
2020-12-12sdiahci: assume 64-bit PCIWADDR()cinap_lenrek
2020-12-12sdiahci: enable pci busmaster before ahciconfigdrive() (fix qemu crash)cinap_lenrek
enable pci busmaster before set the fis-receive-enable bit in the port command register. not doing so triggers a crash in qemu like: address_space_unmap: Assertion `mr != NULL' failed. as qemu tries to process the dma command list as soon as we set that flag and busmaster dma needs to be enabled at this point.
2020-12-11mergecinap_lenrek
2020-12-11pc, pc64: make sure write combining is supported in MTRR's before setting itcinap_lenrek
2020-12-11pc, pc64: ignore MTRR's when MTRRCap.vcnt and MTRRCap.fix are zerocinap_lenrek
Bhyve returns 0 in MTRRCap register, so we can use that instead on relying on cpuid only to see if MTRR's are supported. That way we can get rid of the sanity check in memory.c.
2020-12-11update Finnish kbmap: fix ¤ on shift+4 and add more AltGr variantsSigrid
2020-12-10vmx: clean up mksegment, memset only if segment existed (devsegment clears ↵Sigrid
new ones)
2020-12-10src: work on awk scripts too, see "src valley" (thanks phil9)Sigrid
2020-12-10pc, pc64: work around bhyve all uncached MTRR'scinap_lenrek
2020-12-09mergecinap_lenrek
2020-12-09backout OCEXEC changes when potentially opening /srv filescinap_lenrek
Opening a /srv file sets the close-on-exec flag on the shared channel breaking the exportfs openmount() hack. The devsrv tries to prevent posting a channel with the close-on-exec or remove-on-close flags. but nothing currently prevents this poisoning on open. Until this gets fixed in eigther exportfs or devsrv, i'll back out the changes that could have potential side effects like this.
2020-12-08sega(1): fix keys (thanks bigato)kvik
2020-12-08plan9.ini(8): document *nomtrr= and order the tablecinap_lenrek
2020-12-08pc, pc64: cleanup cpuidentify() and some commentscinap_lenrek
2020-12-08pc, pc64: add *nomtrr= kernel parametercinap_lenrek
2020-12-08pc64: preserve reserved bits in CR0/CR4 for amd64 in mtrr setstate()cinap_lenrek
On AMD64, CR0/CR4 are 64-bit registers, with the upper half reserved. So use uintptr type to store the register values to get 32 bit on 386 and 64 bit on AMD64.
2020-12-08vncv: backing out previous change, this needs another revisioncinap_lenrek
2020-12-08vncv: do NOT map Kaltgr to meta, introduce Mod4 (Super) as an extra key to ↵Sigrid
use instead
2020-12-08vmx(1): build vmxgdb by default, clean it up as wellSigrid
2020-12-08vmx: nanosec(): fix non-interruptable temporary, assign fasthz only once ↵cinap_lenrek
after xstart
2020-12-08pc: move ldmxcsr() prototype to fpu.ccinap_lenrek
2020-12-08vmx: add fmt checking, fix fmt errors, remove duplication for vmdebugcinap_lenrek
2020-12-08nusb/kb: update button state if event was actually received, fix typos ↵Sigrid
(thanks umbraticus)
2020-12-08devmouse: remove redundant checkSigrid
2020-12-08mouse(3): blankS, setS to follow the convention (thanks umbraticus)Sigrid
2020-12-08mouse(3): document "scrollswap" ctl message, fix style a bit (thanks umbraticus)Sigrid
2020-12-08vesa: make unsupported function not an error, set return statusSigrid
2020-12-08vmx: add -D option to enable debug messages, use vmdebug for non-fatal "errors"Sigrid
2020-12-07vmx: add -v|-w flag to control window creation behaviourcinap_lenrek
The -v flag now does not create a new rio window, while -w flag does (restores the old behaviour). This allows vmx to run under vncs and is in general mode aligned to other emulators and programs.
2020-12-07libcomplete: open internal file-descriptor with OCEXEC flagcinap_lenrek