New 9front release “DON’T FORGET TO VOTE”


direct download

kernel and drivers:

kernel: fix segattach() rounding of va+len (thanks kenji arisawa)

pc: sanity check bda value in lowraminit() to avoid overflow with efi

pc: add *bootscreen= variable to pass pre-initialized framebuffer info to kernel

pc: enable page size extension early in apbootstrap

pc, pc64: fix ps2mouse memory corruption race

pc, pc64: allow passing RSDT pointer in *acpi= boot parameter, early bootscreeninit(), fix rampage() usage

pc, pc64: make mtrr() callable from interrupt context and before mpinit

pc, pc64: more sanity checking for lowraminit()

pc, pc64: implement acpi reset (for efi)

pc64: put return value of nsec syscall in register on amd64 pc64: syscallfmt for nsec syscall

pc64: print “Plan 9” on boot, cleanup pccpu64 files

pc64: enable rtl8169 driver (thanks awabimakoto for testing)

pc64: remove unused pdballoc and pdbfree counters from mach structure

devcons: avoid division by zero reading Qsysstat

devip: print protocol name in garbage collection notification

devip: sanity check Nchan in Fsproto()

acpi: fix pcibusno() when PCI0._ADR = 0

bcm: fix baudrate setting for serial console (thanks to aap and hiro)

efi: add experimental efi bootloader

efi: add initial pxe support (v4 only)

efi: iso filesystem support for cdrom booting

nusb/kb: dont set boot protocol on HidCSP interface when we failed to read report descriptor (thanks aap_)

compilers and debuggers:

6c/8c: eleminate moves by swaping source and destination operands in peephole pass

vi: implement _nsec syscall


acid: fix sysr1() stack corruption

cs: use /net/ether* instead /net/ether[0123], dont remove srv file with -n, dont write dns logfile

cs: fix linefeeds in syslog(), cleanup

games/nes: reduce volume, causes overflow and confuses ac97

hg: make intermediate directories like newer hg does

hgfs: make data files with meta headers having the right size after open

inst: ignore *bootscreen= variable when generating plan9.ini

ip/ayiya: experimental anything in anything tunnel protocol client

mk9660: add -E option to create EFI boot entry

ndb/dns: request recursion only for local dns servers

newt: implement ned-style address ranges

oggdec: recognize “begin of stream” packets and restart decoding

pkg: change default repo to

ramfs: fix directory check in wstat() (thanks mischief)

ramfs: allow changing mtime in wstats

realemu: make sure instruction arguments are initialized even when decoding traps

rio: fix “-cd dir” in mountspec being ignored

rio: dont serve a kbd file per window when we didnt got one from the environment

snap: change ulong return of stackptr() to uvlong for amd64

stats: handle /dev/sysstat 32bit overflow in delta calculation

sysinfo: relax regex for start of kernel boot messages

sysupdate/psfax/play: fix unquoted brackets causing rc to perform unnecessary file lookups

teg2: fix wrong l2 setshift address in wholecache() (from sources)

wpa: fork note group when going to background (thanks jpm)

add crc32

add games/gba: Nintendo Game Boy Advance emulator

add gbatype


lib9p: fix nil dereference crash in remove for directory permission check

lib9p: fix .. walk crash in deleted directory (thanks BurnZeZ)

lib9p: prevent files from being created in deleted directories (thanks BurnZeZ)

libauthsrv: allow multiple auth= attributes for backup auth servers, authdial() tries each one in order

libmemdraw: update drawtest to use same rounding in alpha calculation as libmemdraw

libmemdraw: fix byte ordering in memfillcolor()

libsec: ecgen() and ecdsasign() fix

libsec: fix hmac for keys bigger then 64 byte block size

libsec: add diffie-hellman functions


9boot(8): document efi booting

fortunes: this exact error message is in the fortunes file.

fix some manpage cross references

add /lib/terry