ip/cifsd: dont return garbage in upper 32 bit of unix extension stat fields
ip/cifsd: add basic support for UNIX extensions
ip/cifsd: exit to close connection when we get malformed smb header (fixes linux mount hang)
usbehci: silence "param declared but not used" compiler warning in itdinit()/sitdinit()
sdide: silence compiler warning in atadebug()
ape: Add mkstemp to /sys/src/ape/lib/ap/gen/mkfile
Add toascii() to ape
Add mkstemp to stdlib.h
kernel: clear FPillegal in pexit() and before pprint()
devproc: restore psstate info string in procstopwait()
Allow address expressions in ?c after int casts.
Libflac: Tell it that we have stdint.h so it finds SIZE_MAX
Include integer limits from generic stdint.h in system-specific stdint.h
Add missing UINTsz_MIN defines to ape stdint.h
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