ip/ipconfig: don't leave behind null address when dhcp gets interrupted
sys/src/libventi: define VtEntryNoArchive constant
sys/src/libventi: implement vtsha1 and vtsha1check functions
sys/src/libventi: implement vtreconn and vtredial functions
Add RFC2822 (email style) formatted dates to to date(1).
kernel: get rid of tmperrbuf and use syserrstr swapping instead in namec()
rune(2): complete source references
kernel: make exec clear errstr, stop side-channels and truncate on utf8 boundary
bcm64: enable devgpio in kernel configuration (thanks qeed)
ndb/dnsquery, ndb/csquery: write ">" prompt to stderr (thanks kvik)
rsa(2): document asn1encodeRSApriv() and asn1encodeRSApub() functions
auth/rsa2asn1: implement private key export with -a flag (thanks kvik)
pc64: map kernel text readonly and everything else no-execute
8l, 6l: fix "unknown relation: TEXT" xfol() bug (thanks mischief)
kernel: prohibit changing cache attributes (SG_CACHED|SG_DEVICE) in segattach(), set SG_RONLY in data2txt()
kernel: make user stack segment non-executable
pc64: implement NX bit discovery, map kernel mappings no-execute
kernel: catch execution read fault on SG_NOEXEC segment (for mips)
kernel: catch execution read fault on SG_NOEXEC segment
kernel: expose no execute bit to portable mmu code as SG_NOEXEC / PTENOEXEC, add PTECACHED bits
vncv: fix snarf buffer realloc memory corruption
emmc: 50MHz highspeed support (from richard miller)
bcm64: replace emmc2 driver with richard millers sdhc driver
/sys/lib/dist/mkfile: adjust 2GB for pi3 and zynq img
/sys/lib/dist/mkfile: storage vendors idea of 2GB is deflating
bcm64: deal with discontinuous memory regions, avoid virtual memory aliasing, implement vmap() proper
bcm: invalidate cache on Fbinfo after firmware completion
bcm: flush out early boot messages on uart and screen initialization
/sys/lib/acid/kernel: fix procstk() for arm64, set kdir for arm/arm64 to bcm/bcm64
bcm: set XN bits for kernel device mappings
bcm64: do not use OTP_BOOTMODE_REG to determine OSC frequency (thanks richard miller)
disk/format: implement long name support
add missing device tree file for raspberry pi 4
add raspberry pi 4 kernel and bootloader to pi3.img target
bcm64: add support for more than 1GB of ram (untested)
bcm64: add driver for emmc2 controller
bcm: fix typo in gpio.c on unused AFedge0 constant
bcm64: poll gisb arbiter for asynchronous bus errors
ethergenet: remove debugging
bcm64: set XN bits for kernel device mappings
cc: use 7 octal digits for 21 bit runes
libauth: do not set errstr in auth_rpc() for ARdone result (thanks majiru)
bcm, bcm64: add vcore support for raspberry pi 3 GPIO expander
bcm, bcm64: add BCM2711 support for gpiopull(), fix gpiomeminit(), cleanup
bcm64: fix wrong prescaler for generic timer on rpi4
ethergenet: fix flow control negotiation
bcm, bcm64: clean dma destination buffer before issuing dma in case of non cache-line-size aligned buffer
bcm64: add config for raspberry pi 4
bcm64: work in progress genet ethernet driver for raspberry pi 4
bcm64: reorganize virtual memory map for rapberry pi4
bcm64: update io.h for pci express and raspberry pi 4
bcm64: add pci express driver for raspberry pi 4
bcm64: add gic interrupt controller driver for raspberry pi 4
bcm64: add gisb arbiter driver to catch bus timeouts
bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable()
bcm64: strip debug symbols to make sure .img file is multiple of 4 bytes
bcm, bcm64: add dmaflush() function and make virtio size and virtual address configurable in Soc.virtio and Soc.iosize
bcm, bcm64: add support for device tree parameter passing
usbxhci: implement portable dma flush operations and move to port/
usbehci: introduce dmaflush() function to handle portable cache invalidation for device drivers
kernel: move common ethermii to port/
devuart: make sure uart is enabled in uartkick()
walk(1): add history section
tinc(8): add history section
usbxhci: fix mysterious ENABLESLOT failures (update to XHCI spec revision 1.2 (2019))
pc64: preallocate mmupool page tables
ape: reimplement rename() - fixing compiler warnings and handling more error cases
8c, 6c: LEA x, R; MOV (R), R -> MOV x, R
8c, 6c: avoid allocating index registers when we don't have to
8c: skip 64-bit regpair allocation for OINDEX nodes in cgen64()
ape: revert rename() change
Turn on warnings when building libap.
gs: apply mitigations against CVE-2017-8291 (thanks jsmoody)
cwfs: remove orphaned lrand.c
cwfs: remove old some assert() debugging
bcm, kw, omap, teg2: implement setregisters()
cwfs: fix root access time qid path comparsion
upas/smtp: handle temporary authentication failures
rc-httpd: serve markdown with text/plain content-type
pc64: actually fix it, what was i THINKING
pc64: fix compiler warning in rebootjump() entry calculation
stdio: fix putc(), plan9 version
ape: fix stdio putc() macro, avoiding "result of operation not used" warning
cc: remove nullwarn() from OCAST codegen, zap void casts
cwfs: properly handle 64 bit qid path
pcc: back out -+ flag removal to allow gracefull upgrade path with new pcc but old cpp
Always turn on the -+ flag in cpp
Import compiler warnings and bugfixes from Charles.
8c, 6c: fix INDEX node #reg calculation
rc-httpd: set charset=utf-8 for all text/* content types
rc-httpd: only emit charset option for text/plain content type
Handle NaN and Inf edge cases as specified by posix, instead of barfing.
devdtracy: make machlocks and dtktab static