From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Tue, 8 Oct 2019 17:32:29 -0400 From: sl@stanleylieber.com To: 9front@9front.org Subject: 9FRONT "NO THINKPAD" RELEASED MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: social basic DOM map/reduce component Message-ID: <20191008213229.W4X5svSPug1iBP6edw1Q-_YCfhRMrj3tmPBFOzwY0rY@z> 9FRONT "NO THINKPAD" RELEASED ============================== ![front (v1)](http://9front.org/img/nothinkpad.front.png) DASH 1 MANUAL ------------- dash 1 and man pages in print: THANKS: momus KERNEL AND DRIVERS ------------------ kernel: catch execution read fault on SG_NOEXEC segment kernel: clear FPillegal in pexit() and before pprint() kernel: expose no execute bit to portable mmu code as SG_NOEXEC / PTENOEXEC, add PTECACHED bits kernel: get rid of tmperrbuf and use syserrstr swapping instead in namec() kernel: make exec clear errstr, stop side-channels and truncate on utf8 boundary kernel: make user stack segment non-executable kernel: move common ethermii to port/ kernel: prohibit changing cache attributes (SG_CACHED|SG_DEVICE) in segattach(), set SG_RONLY in data2txt() kernel: simplify pgrpnote(); moving the note string copying to procwrite() bcm, kw, omap, teg2: implement setregisters() bcm: add cache invalidate before accessing prop buffer bcm: fix typo in gpio.c on unused AFedge0 constant bcm: flush out early boot messages on uart and screen initialization bcm: invalidate cache on Fbinfo after firmware completion bcm: set XN bits for kernel device mappings bcm64: add addarchfile() prototype to fns.h (for qeed) bcm64: add config for raspberry pi 4 bcm64: add driver for emmc2 controller bcm64: add gic interrupt controller driver for raspberry pi 4 bcm64: add gisb arbiter driver to catch bus timeouts bcm64: add pci express driver for raspberry pi 4 bcm64: add support for more than 1GB of ram (untested) bcm64: deal with discontinuous memory regions, avoid virtual memory aliasing, implement vmap() proper bcm64: do not use OTP_BOOTMODE_REG to determine OSC frequency (thanks richard miller) bcm64: enable devgpio in kernel configuration (thanks qeed) bcm64: enter page tables in mmutop *AFTER* switching asid in mmuswitch() bcm64: fix mmu0clear() mistake from previous commit bcm64: fix wrong prescaler for generic timer on rpi4 bcm64: generalize mmu code bcm64: implement dtracy support bcm64: implement reboot support bcm64: no need to flush instruction cache when switching TTBR0 bcm64: poll gisb arbiter for asynchronous bus errors bcm64: remove unneccesary tlb flush on mmuidmap() bcm64: reorganize virtual memory map for rapberry pi4 bcm64: replace emmc2 driver with richard millers sdhc driver bcm64: set XN bits for kernel device mappings bcm64: strip debug symbols to make sure .img file is multiple of 4 bytes bcm64: switch to 64k page size bcm64: update io.h for pci express and raspberry pi 4 bcm64: work in progress genet ethernet driver for raspberry pi 4 bcm, bcm64: add BCM2711 support for gpiopull(), fix gpiomeminit(), cleanup 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 bcm, bcm64: add vcore support for raspberry pi 3 GPIO expander bcm, bcm64: clean dma destination buffer before issuing dma in case of non cache-line-size aligned buffer bcm, bcm64: fix cache operations for dma and emmc bcm, bcm64: make irq.$O optional and add intrdisable(), use intrenable() bcm, bcm64: preserve memsize across reboots, avoid trashing atags while parsing cmdline devdtracy: make machlocks and dtktab static devip: fix permission checking devip: if the server does not support TCP ws option, disable window scaling (thanks joe9) devproc: fix fishy locking in proctext(), check proc validity, static functions devproc: move proctab() call after Qnotepg special case in procwrite() devproc: restore psstate info string in procstopwait() devuart: make sure uart is enabled in uartkick() ethergenet: fix flow control negotiation ethergenet: remove debugging emmc: 50MHz highspeed support (from richard miller) pc: move low-level allocation details out of mmu.c into memory.c rampage() function pc64: fix compiler warning in rebootjump() entry calculation pc64: implement NX bit discovery, map kernel mappings no-execute pc64: map kernel text readonly and everything else no-execute pc64: preallocate mmupool page tables sdide: silence compiler warning in atadebug() usbehci: introduce dmaflush() function to handle portable cache invalidation for device drivers usbehci: silence "param declared but not used" compiler warning in itdinit()/sitdinit() usbxhci: fix mysterious ENABLESLOT failures (update to XHCI spec revision 1.2 (2019)) usbxhci: implement portable dma flush operations and move to port/ usbxhci: fix endpoint stall recovery, handle Ep.clrhalt flag vgai81x: use vmap() for uncached access to cursor data instead of manipulating kernel page table COMPILERS AND DEBUGGERS ----------------------- 7l: don't hardcode 4k pagesize, use INITRND 8c, 6c: LEA x, R; MOV (R), R -> MOV x, R 8c, 6c: avoid allocating index registers when we don't have to 8c, 6c: fix INDEX node #reg calculation 8c: skip 64-bit regpair allocation for OINDEX nodes in cgen64() 8l, 6l: fix "unknown relation: TEXT" xfol() bug (thanks mischief) cc: fix void cast crash cc: remove nullwarn() from OCAST codegen, zap void casts cc: use 7 octal digits for 21 bit runes cc: Allow address expressions in ?c after int casts. cc: Import compiler warnings and bugfixes from Charles. acid/kernel: fix procstk() for arm64, set kdir for arm/arm64 to bcm/bcm64 acid/kernel: for stacktraces, try to use context from error stack when process is not sleeping LIBRARIES --------- ape: Add mkstemp to /sys/src/ape/lib/ap/gen/mkfile ape: don't hardcode list of ape library directories in /sys/src/ape/lib/mkfile ape: fix stdio putc() macro, avoiding "result of operation not used" warning ape: reimplement rename() - fixing compiler warnings and handling more error cases ape: revert rename() change ape: Include integer limits from generic stdint.h in system-specific stdint.h ape: Add missing UINTsz_MIN defines to ape stdint.h ape: Add test for pow.c ape: Add toascii() ape: Handle NaN and Inf edge cases as specified by posix, instead of barfing. ape: Turn on warnings when building libap. ape: Add mkstemp to stdlib.h lib9p: fix listensrv() filedescriptor leaks libauth: do not set errstr in auth_rpc() for ARdone result (thanks majiru) libflac: Tell it that we have stdint.h so it finds SIZE_MAX libstdio: fix putc(), plan9 version libventi: define VtEntryNoArchive constant libventi: implement vtreconn and vtredial functions libventi: implement vtsha1 and vtsha1check functions PROGRAMS -------- ape/cc: Add arm64 and remove alpha, add spim awk: no need to call getargv() twice to get the value for FILENAME cwfs: fix listen filedescriptor leaks date: Add RFC2822 (email style) formatted dates g: Make it grep recursively by default. auth/rsa2asn1: implement private key export with -a flag (thanks kvik) snoopy: add support for dhcp classless static routes option snoopy: avoid extra spaces in dhcp filter output snoopy: include dhcp.h instead of replicating bootp/dhcp options enum ssh: work around github.com's broken cipher negotiation code (thanks Ori_B) cmd/ip/*: chown the network connection after authentication cwfs: fix root access time qid path comparison cwfs: properly handle 64 bit qid path cwfs: remove old some assert() debugging cwfs: remove orphaned lrand.c disk/format: implement long name support file: recognise unified diff output gs: apply fixes for CVE-2018-16509 (thanks jsmoody) gs: apply mitigations against CVE-2017-8291 (thanks jsmoody) gs: fix missing type check in ztype (thanks jsmoody) ip/cifsd: add basic support for UNIX extensions ip/cifsd: dont return garbage in upper 32 bit of unix extension stat fields ip/cifsd: exit to close connection when we get malformed smb header (fixes linux mount hang) ip/ipconfig: don't leave behind null address when dhcp gets interrupted ndb/dnsquery, ndb/csquery: write ">" prompt to stderr (thanks kvik) pcc: Always turn on the -+ flag in cpp plumber: loop will go out of bounds when *++s == '\0'; replace with strstr rc-httpd: avoid duplicate log output in dir-index handler rc-httpd: only emit charset option for text/plain content type rc-httpd: serve markdown with text/plain content-type rc-httpd: set charset=utf-8 for all text/* content types sshfs: use threadexits() instead of exits() upas/fs: remove read timeout via alarm(2) in pop3resp upas/fs: speedup mtree and henter() upas/smtp: handle temporary authentication failures vmx: handle build arch exclude in /sys/src/cmd/mkfile vncv: fix snarf buffer realloc memory corruption DOCUMENTATION ------------- 2c(1): document 7c (arm64) draw(3): memlorigin nusb(2): remove startdevs() reference, document getdev() (thanks BurnZeZ) rsa(2): document asn1encodeRSApriv() and asn1encodeRSApub() functions rune(2): complete source references sshnet(4): ... and incoming TCP calls tinc(8): add history section vmx(1): update BUGS walk(1): add history section OTHER ----- /sys/lib/dist/mkfile: adjust 2GB for pi3 and zynq img /sys/lib/dist/mkfile: storage vendors idea of 2GB is deflating /sys/src/cmd/mkfile: fix PCONLY exclude (thanks stefan) /sys/src/boot/bcm/mkfile: add missing device tree file for raspberry pi 4 /sys/src/boot/bcm/mkfile: add raspberry pi 4 kernel and bootloader to pi3.img target bootrc: remount devip after /dev/hostowner has been written by factotum bootrc: unmount devip *before* starting factotum mkone: fix man target (thanks Amavect) ![back](http://9front.org/img/nothinkpad.back.png)