New 9front release “GZ”
http://9front.org/iso/9front-5641.6149f97a7801.iso.gz.torrent
http://9front.org/iso/9front-5641.6149f97a7801.iso.gz
dash 1 manual
http://fqa.9front.org/dash1.gz.pdf
kernel and drivers
kernel: avoid padblock copying for devtls/devssl/esp, cleanup debugging
kernel: fix missing ; in panic() call
omap: fix format string warning %d for long
omap: cleanup mouse.c, just a dummy for mousectl()
pc: pat write combinding support for 386 kernel, honor cpuid bits
pc: modify cpu0 page tables in patwc() instead of current cpu ones
pc64: check if vmap() range fits in VMAPLEN window, remove unneeded vmapsync(), rename fault386() to faultamd64()
pc64: implement simple write combining for framebuffers with the PAT
xen: fix build by adding missing rdrandbuf() function
archacpi: fix format string warning on amd64
gre: check nil for pullupblock()
ip: always pass a single block to Medium.bwrite(), avoid concatblock() calls in Dev.bwrite()
ip: remove nil checks for allocb() and padblock()
ip: fix typo (rfc -> ifc)
ip: get rid of update_mtucache() and restrict_mtu() prototypes
ip/nullmedium: free passed block in nullbwrite()
ip/pktmedium: fix wrong hsize, theres no ethernet header on packet media
ip/pktmedium: no mintu, no maclen… thi is ip packets
ip/tcp: remove useless nil checks for padblock() and allocb() return value
ip/tcp: only calculae mss from interface mtu when directly reachable for v6
ip/tcp: never raise the mss over the link mtu < 1280 for v6
qio: big cleanup of qio functions
qio: fix comments, fix qiwrite() on close queue, remove debug setmalloctag() call in qwrite()
qio: implement concatblock() with pullupblock()
qio: get rid of unused qcopycnt debug variable
qio: make readblist() offset of type ulong as the rest
devbridge: various bugfixes and improvements from charles forsyth
devbridge: simplify etherwrite() as we dont deal with block lists
devcons: simplify putstrn0()
devloopback: simplify loopoput()
devmnt: avoid memory copies of I/O rpc buffer by using bwrite()
devmouse: various bugfixes, simplify
devmouse: change msec argument of *mousetrack() to ulong
devmouse: remove unused static map[] array
devtls: remove unused get32() function
audioac97: support for ICH4-ICH7 based cards with memory mapped registers (thanks echoline)
libraries
libauth: don’t attempt to mount when opening mount srv file fails in nsop()
libavl: put debug functions back
libc: move calloc() into its own compilation unit
libmemdraw: remove unused static drawbuf variables and ptrfn() declaration
libmemdraw: cleanup fillpoly(), remove unused fillcolor hack
libmp: mpxor: sign should be 1/-1, not 0/-1
libregexp: put debug functions back
ape/libsec, libsec: add secp384r1 curve parameters for tls
libsec: remove unused aes_setupDec
libsec: remove unused get32() function
libstdio: fix sclose() buffer overrun when terminating string, realloc() error handling (thanks porlock)
compilers and debuggers
8c: fix double compiling FNX complex lvalue in cgen64()
acid: fix y.tab.h dependency for proc.$O
programs
aan: didn’t ask about sendcommand
auth/as, auth/none, auth/newns: consistent handling of command arguments, cleanup
aux/acpi: make it stats(8)-friendly
awk: improve random number generation
clock: remove unused variable
cryptsetup: fix bugs and cleanup
nusb/ether: support for “bridge” ctl message
page: remove unused variables
ramfs: remove unused variable
rcpu: avoid filedescriptor conflict with <{} (thanks mycroftiv)
stats: alternatively read battery and temp from aux/acpi
tar: remove unused variable
vncs: update devmouse code
vncs: don’t prompt for password on auth_respond() failure
winwatch: middle mouse button click also prompts for label
winwatch: no more ‘l’ key labeling
winwatch: put previous label contents in edit buffer for relabling
documentation
alv(2): new avl implementation
srv(4): add SOURCE for srvtls
other
cdproto: explicitely create /$objtype/bin subdirectories for all archs
tcp17019: make service proto and netdir arguments optional (for aux/listen1)