This is a partial list of the major machine-independent changes
(i.e., these are the changes people ask about most often). Machine
specific changes have also been made, and are sometimes mentioned
in the pages for the specific platforms.
Note: Problems for which patches exist are marked in red.
For changes in other releases, click below:
2.0,
2.1,
2.2,
2.3,
2.4,
2.5,
2.6,
2.7,
2.8,
2.9,
3.0,
3.1,
3.2,
3.3,
3.4,
3.5,
3.6,
3.7,
3.8,
3.9,
4.0,
4.1,
4.3,
4.4,
4.5,
4.6,
4.7,
4.8,
4.9,
5.0,
5.1,
5.2,
5.3,
5.4,
5.5,
5.6,
5.7,
5.8,
5.9,
6.0,
6.1,
6.2,
6.3,
6.4,
6.5,
6.6,
6.7,
6.8,
6.9,
7.0,
7.1,
7.2,
7.3,
7.4,
current.
Changes made between OpenBSD 4.1 and 4.2
- Fix in pkg_add(1) regarding package names.
- Make sure sppp(4) aligns the packet after the ppp header, fixes use on sparc.
- Add rlphy(4) to amd64 RAMDISK kernels.
- Do not fill spamd(8) debug with bogus config errors if there are no traps.
- Make ftp-proxy(8) add rules immediately after the client sends the PORT command instead of waiting until the client actually requests a transfer.
- Update sudo(8) to 1.6.9p4, adds IPv6 support and improved man pages.
- Add sti(4) at uturn on hppa GENERIC and RAMDISK kernels.
- Make ssh(1) not fall back to the trusted X11 cookie if generation of an untrusted cookie fails.
- Added nxe(4), a driver for the Netxen 10GE cards.
- Work around problems on VIA CPUs when switching between FPU context and Padlock entropy polling.
- Fix segmentation fault in tcpdump(8) when decoding 802.11 traffic in certain ways.
- Remove unfinished nx(4) driver.
- Add missing siop(4) at phantomas and uturn on hppa GENERIC and RAMDISK kernels.
- Error out on passwd(1) if trying to change the YP password and the rpc.yppasswdd(8) daemon is unreachable.
- Stop isakmpd(8) from complaining about not being able to read non-existent files.
- Enable CF malo(4) for macppc GENERIC kernels.
- Endian fixes for malo(4) in the association code path.
- Be more careful on sparc64 when asking the openprom for the next property.
- Fixed a DoS in httpd(8) where the server might terminate arbitrary processes.
- Add event handler to malo(4), which allows for automatic reassociation after receiving a disassociation frame.
- Make systat(8) also handle NULL when doing realloc.
- Make btree DB code in libc handle NULL when doing realloc.
- Make sure ld.so(1) does not get built and installed on NOPIC architectures.
- Fix in httpd(8) mod_status module for CVE-2006-5752.
- Prevent a potential null-pointer derefence on amd64.
- Force xterm to legacy mode regarding Shift-F1 to Shift-F4, since the behaviour changed in xterm-225.
- Add "dma" and "ledma" on sparc64 as buses again, makes Ultra-1 machines find their root disk.
- Make isakmpd(8) check file type after fstat, since d_type is not passed over NFS.
- Make sppp(4) use length of the mbuf instead of the packet when sending a protocol reject.
- Make kqueue(2) correctly handle EOF on pipes.
- Provide software HMAC for glxsb CPUs, so IPSec can use the crypto HW.
- Make sure OpenSSH executes LocalCommand after the tunnel device is opened.
- Bring vfs handling back to former performance levels.
- Make malo(4) RX/TX work on big endian arches.
- Disable XDCMP over IPv6 for now.
- Fixed two issues in ospfd(8) regarding RIB calculation.
- Add support on hppa machines for Zalon NCR 53c720 FW scsi.
- Add support in siop(4) for non-PCI NCR 53c720/70-based devices in big-endian mode.
- Enable Compact Flash driver for Marvell 88W8385 Chips on amd64, i386 and zaurus GENERIC kernels.
- Fix crash in mkalias(8) for yp(8) when using specific malloc.conf settings.
- Full HW WEP in malo(4).
- Allow key exchange in isakmpd(8) with RSA signature authentication with peers who only send their certs in response to CERT_REQUEST.
- Add AGP support for Intel i965 chipsets.
- Fix crash in X11 savage driver during resolution change.
- Add ne(4) on cardbus for sparc64 GENERIC kernels.
- Added rbus to the sparc64 platform.
- Make ddb(4) ps able to print full name of wait states instead of truncating them.
- Fixed a potential deadlock when the pagedaemon waits for pages.
- Add nvram(4) code from i386 to the amd64 platform.
- Fix memory leaks and potential null dereference in ksh(1).
- Add proper recording encodings to auich(4).
- In netstart(8), move the delay for IPv6 DAD to after all interfaces have been started.
- Retired the cats platform.
- Stop making de(4) win over dc(4) on alpha machines, and include both dc(4) and de(4) on all installation media.
- Fix for null dereference in column(1) when -t flag is given and a line consists solely of delimiters.
- Lots of 802.11 improvements and code in preparation for WPA and other auth styles.
- Make ksh(1) escape [, ] and ? as well.
- Allow ftp-proxy(8) to add tag statements to the pf(4) rules it inserts.
- Add code for auto association in the malo(4) driver.
- Plug a mbuf leak in the malo(4) TX path.
- Fixes for mixer handling on azalia(4).
- Improvements in the malo(4) RX/TX path.
- When setting a vlan device without specifying a tag in ifconfig(8), infer the tag from the interface name.
- Make ln(1) warn when source and destination are identical.
- Improvements in the way pcmcia based malo(4) devices get rates-element-id from management frames sent from certain APs.
- Avoid segfault in ifconfig(8) when given an empty interface name.
- Fix for isakmpd(8) cases where it could not get in-kernel last-used-counters in order to implement DPD.
- Various improvements to make(1).
- Add support on sparc64 for different styles on the bootpath so Ultrabooks booting off wd(4) can find their root disk.
- Fix for random crashes on PA-8700 and PA-7200 hppa machines due to cache-line sharing.
- Bring in GLw from XF4 to xenocara to replace the Mesa version.
- Do not map sparc64 interrupts that already are fully specified. Makes onboard IDE work on Ultrabook 170/200.
- Prevent PXE-booted i386 and amd64 machines from storing the MAC address in case root is supposed to be local disk instead of NFS.
- Replaced a few malloc() calls with calloc() for safety in top(1).
- Make powernow-k7 code use the ACPI _PSS table for retrieving p_state data.
- Updated sudo(8) to 1.6.9p1. Note that environment handling differs from earlier versions.
- Make it possible to show alternate routing tables in netstat(1).
- Added an rc4_skip() function so you can discard bytes from the arc4 stream.
- Make wpi(4) use hardware WEP in the TX path.
- Add rl(4), ssio(4) and its com(4) ports to hppa RAMDISK kernels.
- Enable thread support in libobjc.
- Improvements in the cdce(4) driver, makes Sony Ericsson K610 and other devices work.
- In ospfd(8), display multipath routes in "ospfctl sh fib" output if they exist.
- Fix in make(1) where .for loops could give weird results.
- Enable rl(4) on hppa GENERIC kernels.
- Add 64 bit mips support to arla lwp code.
- Added sk(4) to hppa GENERIC and RAMDISK kernels.
- Enable lcd(4) on hppa GENERIC kernels.
- Make sure pf(4) does not drop outgoing packets in case of a congested input queue.
- Enable emu(4) on mips64 GENERIC.
- Fix for hangs on i386 and hickups on mips64 when copying data out of /dev/audio with dd due to incorrect pointer advancement.
- Fix for mips64 ddb trap handling.
- Fix for re(4) MAC address reading out of the EEPROM for 9346 and 9356-based devices.
- Backported a gcc3 fix (cse_end_of_basic_block).
- Fix percentage computation of wrapping numbers in top(1).
- Add a lcd(4) driver for the front panel LCD display found on the four-digit B/C/J-class hppa workstations.
- Delay switching to the real serial console on hppa until we attach the serial device. Should make the second serial port on four-digit B/C/J-class machines work as console too.
- Make sigreturn(2) set the proper space ID for the instruction queue. Fixed some more pthreads regressions on hppa.
- Make sure encrypt(1) does not trim whitespace from stdin.
- Fixes in delay constant calibration for mac68k on machines configured to use A/UX style interrupts.
- Add bge(4) to hppa GENERIC and RAMDISK kernels.
- Various 802.11 fixes.
- Make the arc(4) driver use the full 64 bits when reporting sizes, now bioctl(8) shows the correct size for 2+TB volumes.
- Add FFS2 support to quotacheck(8).
- Prevent division by zero in the disklabel code if argument values are bogus.
- Fix for emu(4) audio which was overriding the reqeusted encoding format.
- Upgraded the wpi(4) driver to handle the new 2.14.4 firmware. Do not forget to update the wpi-firmware package.
- Implement a -q option in bioctl(8) to query scsi disks for inquiry data like vendor, model, revision, serial # and so on.
- Change SGI O2 LED behaviour so it is red in user mode and green while idling.
- SECURITY FIX: Fix potential heap overflow in file(1)
A source code patch is available.
[Applied to stable]
- Reduce optimization when compiling growfs(8) on m68k to work around compiler code generation bug.
- Do not allow clustering reads for filesystem whose block size is smaller than the hardware page size. Fixes vnd(4) read problems on alpha and sparc64.
- Make the PPP printing in tcpdump(8) support IPv6.
- Various internal changes in make(1).
- Enable "ifconfig -M" support for pcmcia based malo(4) devices.
- Make sure both pthreads(3) and rthreads report the correct stack size and top.
- Add support for Realtek ALC883 in azalia(4).
- Thread fixes for hppa machines.
- Update growfs(8) to support FFS2.
- Fix for using poll(2) on audio devices.
- Try harder on sparc64 to print the actual faulting address on SIGSEGV instead of the mmu tag word.
- Various 802.11 code improvements.
- Fix a really old bug in the socket code when passing M_NOWAIT to sblock().
- Fix for the SGI ddb disassembler printing code.
- sk(4) and skc(4) removed from first install floppy for i386.
- Add FFS2 support to quot(8).
- Removed the fe(4) driver.
- Fix a "use after free" in the network interface code, when detaching an interface before it is removed from the multicast group.
- In pf(4), fix ICMP rdr/binat corruption.
- On hppa machines, mark ukbd(4) as console keyboard when appropriate.
- In ipsecctl(8), allow proto ESP/AH in flow specifications.
- Fix memory leak in the kernel sensors code.
- In the tcpdump(8) 802.11 output routines, display payload for DS to DS and NO DS traffic.
- Add pciide(4) on jmb(4) for amd64, i386 and sparc64 GENERIC and RAMDISK kernels.
- Allow pciide(4) to attach to jmb(4) too.
- Enable jmb(4) SATA on amd64, i386 and sparc64 GENERIC and RAMDISK kernels.
- Fix potential crash on ISA-based lm(4) sensors.
- Add gentbi(4) to sparc64 GENERIC kernels.
- On hppa machines, reset PDC devices before enabling iova space if not on a serial console. Makes glass console on four-digit B/C/J-class systems work.
- Make pfctl(8) accept "states" also, for the -s and -F options for consistency.
- Bump the number of supported interrupt routing entries for hppa machines.
- Update libc to tz2007f code base.
- Add 802.11d command to the pcmcia malo(4) driver code.
- Fixes for timeouts in the ugen(4) driver.
- Make it easier in tcpdump(8) to spot which version of NFS the traffic is.
- Add a SIGCHILD handler to identd(8) when running in background mode so it will not leave a zombie.
- Fix for netstat(1) due to the IPX removal.
- Add aliases "1" and "2" to "l" and "r" on sdiff(1) to make interactive merges easier.
- Make tcpdump(8) handle overlapping data on 64 bit arches when decapsulating packets.
- Fix for Intel errata AI91 in the i386 pmap handler code.
- Make OpenCVS handle updates regarding remote files which have been removed from the repository,
- Prevent checknr(1) from accepting zero-length strings for the -a and -c options, and fix a file descriptor leak.
- Enable newfs(8) to create FFS2 file systems larger than 1TB. Note, work still remains.
- On hppa, switch pciide(4) to native mode on ssio(4)-based machines.
- Division by zero fix in fortune(6) for empty input files.
- Fix for PC87415-equipped hppa machines in the pciide(4) code.
- Fix a race condition in the pfsync(4) code during ruleset reload.
- Fixes in the vframe handling for i386 trap code.
- Make ath(4) devices use a O(log(N)) algorithm instead of O(N) for bit swaps.
- Alignment fixes to kue(4).
- Fix buffer overflow in lam(1) by increasing the file descriptor limit to the correct limit.
- Rework the algorithm in scandir for estimating the number of directory entries.
- Add support for rlog to OpenCVS.
- Allow OpenCVS to ci -N<tag name> even when you have no changes, to match GNU behaviour.
- Make the lm(4) driver support early W83627EHF-A chips.
- Teach fsdb(8) and fsck_ffs(8) about 64-bit block addresses.
- Crank the ifq_maxlen from 50 to 256, so it will match most interface rx rings.
- Make com(4) on ssio(4) on hppa attach as console when appropriate.
- Make the scsi(4) midlayer handle disk sizes above 2^32-1.
- Expand disklabel(8) size/offset to 16 characters, and drop the Cyl comments.
- Removed the vr(4) driver from i386 install floppy C due to space restrictions.
- Make carp(4) use a masked destination network instead of the interface IP for the destination of the route belonging to the carp interface.
- Update FFS1/2 time last written for cylinder groups in clusteralloc().
- Add PCI-based malo(4) to alpha GENERIC kernels.
- Extend SGI bus_dma(9) to cope with different views of memory. Allows for more than 256M RAM again.
- For pfsync(4), reimplement interface bound states. Adds forwarding performance.
- Make tcpdump(8) print leading zeroes in MAC addresses.
- Fix case where a 4.2BSD partition falls partly within the area defined by the 'b' command in disklabel(8).
- Add lpt(4) at ssio(4) for hppa GENERIC kernels.
- On the SGI platform, make sure the IPL_CLOCK blocks device interrupts.
- Make NFS bail out if the READDIRPLUS option is set on a v2 mount, since it is a v3 option only.
- Make pf(4) allow "log" for NAT rules without "pass".
- Make pkg_add(1) deal gracefully with absent packing lists, to make it easier to recover from disk crashes that leave /var/db/pkg half empty.
- Add support for VIA CX700/VX700 IDE to the pciide(4) driver.
- Add Novatel ES620 to the list of supported umsm(4) devices.
- Add com(4) at ssio(4) for hppa GENERIC kernels.
- Add a ssio(4) driver for the PC87560 SuperIO chip on hppa.
- Add support in ospfd(8) for mapping route labels to AS-external route tags.
- Allow ospfd(8) reconfigurations through SIGHUP too.
- Ignore SIGHUP in bgpd(8) children to allow the use of "pkill -1 bgpd" for reloading.
- Fix in the i386 pmap code for a possible AMD bug, which slightly speeds up TLB misses.
- Make ifconfig(8) accept IPv6 addresses that use CIDR notation.
- Prevent spin in ssh(1) by using poll() if the file descriptor is non blocking.
- Handle azalia(4) interrupts for the record stream as well. Recording now works.
- Disable memory above 256M on SGI machines for now, it triggers bugs as it is.
- Make sure alpha (or SRM) designs accept level 3 interrupts for I/O, instead of the more commonly encountered level 4.
- Simplified disklabel infrastructure, MBR handling is now machine independent to simplify hotplug media on most architectures.
- Lots of internal work on package(5) tools.
- Implement a 'keep-alive' option to ftp(1) that sends NOOPs over an inactive connection.
- Enable iophy(4) for fxp(4) on hppa GENERIC and RAMDISK kernels.
- Make gcc(1) regard INTMAX_TYPE and UINTMAX_TYPE as long long always, regardless of the size of a long.
- Fix in dump(8) to prevent access to the wrong blocks.
- Merge xterm(1) code with version 225.
- Drop the current random timestamps and ISN generation code for TCP and replace both with a RFC1948 based method so TCP clients now have monotonic ISN/timestamps.
- Make systrace(1) keep trailing slashes in path normalization, as they might result in errors otherwise hidden by systrace.
- Fix crash in pf(4) where a IPv4 packet labeled with IPPROTO_ICMPV6 would be incorrectly handled.
- Fixed a panic in the vic(4) driver.
- Make sure netstat(1) does not truncate long interface names.
- Update time zone data files to tzdata2007f.
- Add "rtlabel" option to ifconfig(8).
- Make tcpdump(8) print BGP communities in a nicer format.
- Make the pfsync code compile if you remove the kernel IPSEC option.
- Various enhancements in the disklabel handling code.
- Swap xOrigin and yOrigin in the XRender rectangle clipping code.
- Fix crash on shutdown in ospfd(8) in the vertex removal code.
- Make ospfd(8) ignore updates that do not change the route.
- Enable cookie support in ftp(1).
- Allow IPv4 addresses be specified in ifconfig(8) with CIDR notation.
- Make azalia(4) support the Macbook, Macbook Pro, Mac Mini and possibly the iMac.
- Switch macppc to the interactive bootloader.
- Fix a 10-year old bug in make(1) which was causing it to spin if given large -j values.
- Add -K flag to ssh(1) to set GSSAPIAuthentication=Yes and GSSAPIDelegateCredentials=Yes.
- Fix slave exit value in ssh(1) when control master goes away without passing the full exit status.
- Make scp(1) try to skip FIFOs rather than blocking when nothing is listening to the other end of the socket.
- In rcs(1), allow checkin without locking (after rcs -U).
- In ospfd(8), when removing AS-EXT LSA, initialise the metric to a sane default.
- Make dump(8) store old_atime and old_mtime too, when dumping FFS1 file systems.
- Make ssh(1) send "window adjust" messages every three packets, and do not wait until 50% of the window is consumed.
- Make top(1) clear to end of line at quit, needed for terminals that do not restore content on quitting curses mode.
- Enable re(4) at cardbus for macppc GENERIC kernels.
- Fix in pf(4) regarding pflog(4).
- Better handling of old libraries in pkg_add(1).
- Update the "nv" driver in X.Org to xf86-video-nv 2.0.2. Adds new chipset support.
- Make disklabel(8) aware of new fields in the labels, allowing for larger than 2T disks, partitions and offsets.
- In rcs(1), if strict locking is disabled, make file writable on checkout.
- Add support in puc(4) for Digi Neo 8-port serial adapter.
- Fixed memory corruption bug in the X.Org i810 driver.
- New MAC algorithm available for data integrity in ssh(1), UMAC-64. About 20% faster than HMAC-MD5.
- Fix for pfioctl() panics from the state - state key split in pf(4).
- Enable reload support in hoststated(8) for layer-3 configurations.
- Fix cylinder rounding calculation in disklabel(8) for those who wants to use all space.
- Fix for vlan(4) to handle reconfigurations better.
- Make the USB hub output shorter in the dmesg.
- Make rm(1) unlink files with multiple links when using -P.
- Major wpi(4) update, be sure to update the firmware file.
- Big changes to libc and libpthread, various fixes and cleanups.
- Make ssh(1) preserve context between packets, saving 2 hash calls per packet. Gives some 12-16% speedup for arcfour256/hmac-md5.
- Enable channel switching on pcmcia malo(4).
- On cold-start panics, make ddb(4) print out a few lines of backtrace, since the glass console might not work at this stage.
- Various internal package(5) improvements.
- Removed IPX support.
- Unbreak tcpdump(8) 802.11 element parsing by using the TCHECK2 macro correctly.
- Fix for apmd(8) when using auto-adjust modes. Cycle through 0 and 100 to make sure we are in a known state when starting up.
- Make malo(4) RX path work on big endian machines too.
- Add FFS2 support to dump(8) and restore(8).
- Add a check for Intel Core CPUs with Scalable Bus Speed of 200 MHz.
- Add support for ICH8M IDE in the pciide(4) driver.
- Fix ssh(1) memory leak on error path.
- Fix in the parser code for OpenCVS remote merging.
- Enabled softraid(4) in GENERIC so people can test. Work in progress.
- Add RX path to malo(4) and enable monitor mode.
- Add infrastructure to allow hppa to have root on wd0.
- Add Gude Export mouseCLOCK to the list of supported udcf(4) devices.
- Fix for some Pentium 4 machines running in 64-bit mode and have EST, but with a different MSR.
- Add paranoid snprintf calculation to avoid possible overflow in SSL session ID parsing in httpd(8).
- In disklabel(8), add RAID to the list of partition types for which we do not prompt for a filesystem.
- In OpenCVS, add support for local and remote branch checkout.
- Make the VFS layer not request zeroed memory when allocating data regions for buffers. Saves a lot of memset calls when doing heavy I/O.
- Establish interrupts for xlights(4) after checking the i2s subsystem, fixes a problem with Xserve G5.
- Removed support for mounting AmigaDOS filesystems.
- Fix for bogus PHYs seen on Marvell Yukon 88E8036 msk(4) devices.
- Apply the "skip ipsec if there are no flows" to IPv6 too.
- Add Intel pchb RND device support to amd64, same as i386 earlier.
- Add Bluetooth drivers to GENERIC, not enabled yet.
- All NFSv2 client to retry when getting ESTALE from the server, matches NFSv3 behaviour.
- Add more PCI IDs to the list of pchb chipsets with a randomness source.
- Make ksh(1) only process ENV when in interactive mode.
- Fix in spamdb(8), prevents corrupt database if given an empty spamtrap address.
- In softraid(4), fix redundancy for RAID 1.
- Initial driver for the Myricom Myri-10G Lanai-Z8E 10GE driver, myx(4). Not working yet.
- Make PowerNow-K8 on amd64 and i386 use the _PSS object from ACPI to retrieve p_state data.
- Make bgpd(8) check the AS community number so nobody uses 65535.
- Add Gunze USB Touch panel to the list of supported uts(4) devices.
- Prevent autonegotiation with every address change on em(4) by only calling em_init if IFF_UP is set.
- Bring em(4) flow control delay timer down to what it should be. Increases throughput.
- Extend the Sun disklabel format to contain filesystem types. Allows for creation of raid partitions.
- Add basic support for crypto(9) backed RAID C discipline in softraid(4).
- Various package(5) tools improvements.
- Major update to sensorsd(8). Smart sensors that provide status by themselves are automatically monitored and make WARN, CRITICAL and UNKNOWN statuses not being considered the same.
- Import parts of the NetBSD bluetooth stack.
- Make xlights(4) probe correctly on Xserve G5.
- Fixes for the i386 and amd64 ELF32/ELF64 code. Allows i386 and amd64 boot blocks to boot both ELF32 and ELF64 kernels.
- Add new kevent(2) filter type for timers, allows processes to create a series of oneshot or periodic timers.
- Window fixes for cwm in the xenocara codebase.
- Add demote support to ospfd(8), makes carp setups with ospfd(8) more reliable.
- Fix for rip code in cdio(1) so it gets the size of the current track instead of the previous track.
- Add support for CPU temperature sensors on Intel Core CPUs.
- When forcibly mounting dirty filesystems, do not clear the "unclean" flag.
- In hoststated(8), make sure relay processes do not start unless L7 balancing is needed.
- Remove Token Ring support from the networking code.
- Removed support for 80386 processors in the i386 platform code. 486 or better required from now on.
- Another performance improvement in the networking code by skipping ipsec tag checks if there are no ipsec flows.
- Add new check method to hoststated(8) which allow to run external scripts/programs for custom evaluations.
- Fix race in softraid(4) sync code.
- Added workarounds in the SHM code, fixes current opera with SHM.
- Make i386 machines with APM not attach ACPI by default.
- Improvements in the amd64 EST code for intel CPUs and support for CPU temperature sensors.
- Update disklabel(8) format to support larger disks and partitions.
- Make ldd(1) able to print dynamic linking information on libraries themselves.
- New driver for the Sparc v215/245 front panel LEDs added to sparc64 GENERIC.
- 64-bit fixes in the softraid(4) code.
- Move top(1) to use curses instead of hand-crafted redraws.
- Another pf(4) speed improvement. Delay packet checksumming in the PF code until we are sure we need to send RST/ICMP error messages back, and only do it then.
- Allow set-uid binaries to dump core into /var/crash if the sysctl(8) kern.nosuidcoredump is set to 2.
- Remove support in boot for the long list of different kernel names to look for.
- Removed unmaintained COMPAT_NETBSD code.
- For fxp(4), nudge the interrupt coalescing timeout to 128 ms. Lessens the interrupt load on busy fxp(4) cards a lot.
- Small steps towards hoststated(8) reloads.
- Fixes for the softraid(4) disk assembly code. Not usable yet.
- Improvement in the memory pool handling code, removing time from the pool header leads to better packet rates.
- Add a global-wd-mode command to mg(1), which toggles between the current and the old behavior of one global working directory.
- Enable interrupt holdoff on DP83816 sis(4) chips. Significantly improves performance of such devices under load.
- Allow bgpd(8) to match on communities using 0 in the AS path.
- Large performance improvement for pf(4) by keeping information previously stored in a mbuf tag in the mbuf header directly.
- Fix for sparc64 machine dependent code for autoconf, fixes panics seen on Sun v215 machines.
- Add pcn(4) to the macppc GENERIC and RAMDISK kernels.
- Make the internal random pool seed only from network interrupts, not once per packet due to drivers using interrupt mitigation more now.
- Remove support for the old Archive/Wangtek cartridge tape driver, wt(4).
- Lots of internal work on the various package(5) utilities.
- Clean up NFS and the nfssvc() system call, and remove old non-working kerberos code.
- Second step of making hoststated(8) reload checked in.
- Allow hoststated(8) to specify table templates in the configuration file and to inherit them from multiple services or relays.
- Completely rewritten ips(4) driver.
- On hppa, dynamically allocate IRQs for PCI devices on elroy(4).
- Enable ips(4) on amd64 GENERIC kernels.
- Make pcmcia-based malo(4) devices work on big endian arches too.
- Add additional truncation checks in tcpdump(8) when parsing and printing bgp packets.
- Fix off-by-one in i386 bounce buffer allocator code.
- Fix off-by-one error in the cvs(1) server code.
- Link mount_vnd(8) to the build scripts, and make usr/sbin/vnconfig a link pointing to it.
- Add tht(4) to sparc64 GENERIC kernels.
- Add dynamic buffer cache to all platforms, instead of fixed amount of pages.
- First steps to implementing reload support in hoststated(8).
- Enable bio(4) on all platforms.
- Initial import of a che(4) driver for Chelsio 10GE ethernet cards.
- Add support in X11 to use the "W" axis for mouse and input devices.
- Add re(4) to the sparc64 RAMDISK kernel.
- Fix for macppc machines which boot off 2940 scsi disks.
- Make mount_vnd a C program, in order to completely replace vnconfig(8) in the future.
- Add cdrip and cdplay commands to cdio(1).
- Protect against races in rthreads code when initializing mutexes.
- Remove y2k hack in date(1), if no century is specified, use this one.
- Make cron(8) handle SIGPIPE when writing to sendmail, allows cron(8) to run jobs when sendmail is missing or broken and will log a warning instead.
- Rework TLB shootdown code for i386 and amd64, gives fairly large speed improvements.
- Added skeleton implementation of Xwscons, a kdrive based X server for wscons dumb framebuffer mode.
- Sanity check the time spec for touch(1), and if no century is specified, use this one.
- Initial driver for Marvell 88W8385 PCMCIA malo(4) device.
- Add support for W83627DHG hardware monitors chipsets in the lm(4) driver.
- Fix integer overflow in the freetype lib for xenocara X11.
- Improved partitioning and installation procedure for macppcs machines.
- Make at(1) default to this century if not specified.
- Add ZD1211B-based Edimax EW-7317LDG Wireless Detector / USB Adaptor to the list of supported zyd(4) devices.
- Add code to spin up secondary CPUs on macppc, still work in progress.
- Change dmesg printing of memory to MB instead of KB.
- Enabled elroy(4) on hppa GENERIC and RAMDISK kernels.
- Fix in pf(4) for pppoe f_addrhook panics.
- Add BCM5709 SerDes to the list of bnx(4) devices. Disabled for now.
- Add pciide(4) support to hppa GENERIC and RAMDISK kernels.
- Prevent newly created interfaces from causing reload problems in ospfd(8).
- In bgpd(8), only try to merge an AS_SEQUENCE if there is a difference between the 4-byte AS path and the 2-byte one. If they are the same length, just use the new path instead of trying to merge.
- On TCP input when a partial ACK is received, check if congestion window is larger than acked bytes and update the window accordingly.
- Make Logitech Quickcam Notebook attach to ugen(4) and not uaudio(4).
- Enable uts(4) - USB touchscreen support on amd64 and i386 GENERIC kernels.
- Add support for bluetooth adapter found on MSI S270 laptops in the ubt(4) driver.
- Add support for hppa 8700/pcvw2 CPUs.
- Ask hppa firmware for reset before trying ourselves, needed for four-digit b/c/j hppa models.
- Improved i386 and amd64 PCI interrupt code to handle several levels of PCI-PCI bridges, fixes mapping for devices that sit behind two such bridges and the firmware only provides mapping for the first.
- Add msk(4) to hppa GENERIC and RAMDISK kernels.
- Initial driver for the hppa astro(4) and elroy(4) chips.
- Add FFS2 support to ncheck_ffs(8) and clri(8).
- Make bridge(4) mark packets with M_PROTO1 if gif(4) needs to use etherip encapsulation. Unbreaks remote ipsec bridges.
- Handle extra open events in sppp(4) due to timeouts/retransmissions.
- Add -f option to wsconsctl(8), to specify alternative control devices.
- Added xtsscale(1), used to calibrate uts(4) touchscreens.
- Add support for zmore(1) to be called as zless(1) too.
- Add em(4) to hppa RAMDISK kernels.
- Kernel option added for PCIAGP on amd64 which lets i945 chipsets work, but disabled for now.
- Add aps(4) to amd64 GENERIC kernels.
- Add a GENERIC.MP configuration for mvme88k, not usable yet.
- Add xl(4) to hppa GENERIC and RAMDISK kernels.
- Make xl(4) have a brief pause after reset for PIO too.
- Add support for kernel crash(8) dumps for arm-based platforms, with minimal support in libkvm.
- In newfs(8), do a bounds check to see if the inode table fits on the disk, prevents core dumps on really small filesystems.
- Lots of work on package(5) tools, mostly internally visible.
- Fall back to gethostname() on ssh(1) when outgoing connection is not on a socket, as in the case when ProxyCommand is used.
- Limit buffer cache memory to 30% on hppa machines.
- Make sftp-server(8) stop reading and processing commands when buffers get nearly full so it doesn't get into a fatal() error later.
- In install(1), allow stripping of files even if the destination filename starts with a dash.
- Removed unused catman(8).
- Update the ifp of bridge cache entries if the entry is not static. This makes carp(4) fail-over work over bridge(4).
- In systrace(1), do not assume 4-byte alignment of memory when intercepting a string.
- Fix in bgpd(8) printconf for peers with the 'down' flag set.
- Wait for the correct fd for dhcpd(8).
- Improve dmesg output from setroot() so "rootdev=0x400 rrootdev=0xd00 rawdev=0xd02" becomes "root on sd0a swap on sd0b dump on sd0b".
- Initial code for a sli(4) driver for Emulex Fibre Channel controllers.
- Fix for msk(4) on MP systems, could cause reboots on heavily used machines.
- More package(5) improvements.
- Enable PowerNow on amd64 processors running MP kernels.
- Prevent core dumps in tip(1) if strpbrk() returns NULL.
- Fix for Yukon-2 based msk(4) cards, by taking alignment restrictions into account when setting up RAM buffer addresses. Makes FE chips work reliably.
- Various internal improvements on the package(5) tools.
- Disable xenocara OpenGL on vax and sgi platforms, and Xprt on vax and landisk. Makes xenocara build on vax now.
- Fix in fsck_ffs(8) for the fifth pass, make sure we do not end up with a partially initialized info struct.
- Make sure reboot(8) doesn't try to power off some machines.
- Fix in pciide(4) when receiving unexpected interrupts. Fixes cdrom hangs on sparc64.
- Fix potential NULL dereference in hoststated(8).
- Make IPv6 kill all packets with the RT Header type 0 extension or multiple routing headers.
- Make pf(4) drop all routing header packets too, unless the matching rule explicitly specifies 'allow-opts'.
- Make each pointer/mouse device under wscons(4) have its own calibration values.
- Rework ami(4) timeouts to handle the fact that they have no mechanism to take commands off them once submitted.
- Disable loadable font modules for Xorg(1) on static-only arches.
- Fix for mips64 when receiving hardware interrupts while CPU is in usermode.
- Add POSIX compliant -g option to ls(1).
- Bump isakmpd(8) crypto buffer logging to level 70 from 30.
- Make sure all Phase 1 negotiation failures are logged in isakmpd(8).
- Lots of internal work on the various pkg_* utilities.
- Plug realloc memory leaks in cap_mkdb(1).
- Make tcpdump(8) not fail on non-RH0 routing headers.
- Fix SEGV in tcpdump(8) when parsing IPv6 packets with unknown or corrupted header options.
- Add multiprocessor aware setperf mechanism to amd64.
- Add support for FFS2 in dumpfs(8), and add -m flag to output newfs(8)-style commands to make a filesystem with the same settings.
- Provide hook in ld.so(1) so rthreads can spinlock to protect from races.
- Increase number of TX and RX descriptors in tht(4) from 64 to 128 and make tht(4) use TX checksumming in hardware.
- Removed unused strcpy and strcat calls from kernel.
- Make carp(4) routing table modification attempts exhibit routing messages to not confuse userland routing daemons.
- Stop shipping CKSUM files for releases.
- Move the setroot() for all arches to a clean machine-independent version.
- Fixes for the vic(4) device.
- Add config(8) file for macppc MP kernels. Not working yet.
- Fix a panic on tun(4) on trunk(4) if ioctl() is called with uninitialized ifreq.
- Enable support for more than 512M of RAM on mips64-based machines.
- Reduce the IPv6 header nest limit from 50 to 10.
- Enable fast channel switching for malo(4) devices, makes apps like kismet happy.
- Fix in azalia(4) for a bug that prevented full device names from being printed.
- Fix in bge(4) for BCM5754/5787-based devices.
- Support for mtrr(4) on AMD Opteron CPUs.
- Add event handler to the azalia(4) code to mute/unmute based on headphone presence. Also some fixes while there.
- Add FFS2 support to tunefs(8).
- STABILITY FIX: Fix a divide-by-zero in Xorg(1) which can be triggered by a malicious client.
A source code patch is available.
[Applied to stable]
- Do not rely on interrupts being configured by the PROM on Sparc64 machines, makes Simics boot a bit further, and doesn't harm real machines.
- Expose the nx(4) temperature sensor into the sysctl(8) hw.sensors framework.
- Fix for link state announcements in vge(4).
- If resolving a name fail for ntpd(8), be more aggressive retrying, but with care.
- RELIABILITY FIX: Link state not correctly tracked in ospfd(8) and ripd(8).
A source code patch is available.
[Applied to stable]
- Enable FFS2 support in the GENERIC kernels.
- Add support in df(1) for reading ffs2 data directly from the device.
- Lots of updates in the various pkg_* tools.
- Fix in the softraid(4) code for older compilers.
- Initial version of led_blink sysctl(8) for the landisk platform.
- Make amd64 boot(8) process skip reading boot.conf(5) if the Control key is pressed during boot.
- Add support in nx(4) for accessing the flash memory in the ROMUSB register area and read the board information on startup.
- Support for CPU throttling on MP systems in apmd(8).
- RELIABILITY FIX: Bugs in spamd(8) could corrupt the database.
A source code patch is available.
[Applied to stable]
- STABILITY FIX: Incorrect spl level can lead to panics under heavy kqueue usage.
A source code patch is available.
[Applied to stable]
- SECURITY FIX: Make sure IPv6 icmp code check return value from MGETHDR and fail if its NULL.
A source code patch is available.
[Applied to stable]
- Import cwm-3 to the xenocara source tree and remove wm2 from it.
- Fixes in pthreads(3) code for sizing the fd/fdp tables to help applications who increase nofiles using setrlimit().
- Check for Control Key being pressed on i386 boot, and if so, skip reading the boot.conf.
- Make ripd(8) inject a route for 224.0.0.9 on startup and remove it on exit, since it needs that route in order to work.
- Make disklabel(8) always use the BIOS geometry if there is one provided.
- RELIABILITY FIX: On PPC based systems, handle AltiVec assist exceptions better, fixes a panic under certain situations.
A source code patch is available.
[Applied to stable]
- Add a setperf mechanism for ICH speedstep on some Pentium 3/ICH systems.
- Enable tht(4) on amd64 and i386 GENERIC kernels.
- Add capacity to add one ntp server during install.
- Fix for alpha platform in the clock setting routines.
- Fix endless loop code in tht(4).
- Also apply PowerNow setperf fix to amd64.
- Make init(8) power down the machine on power(4) button press instead of just halting it.
- Prevent NFS send failures from logging, since they aren't helpful anyway.
- Make the power(4) on sparc64 map registers in I/O space if memory space fails.
- Fix for i386 SpeedStep/PowerNow state selection code, use number of states rather than the frequencies of the available states to distribute in the hw.setperf 0-100 range.
- Make mount(8) also mount FFS2 filesystems when given the -a flag.
- Add support in systat(1) for non-integral refresh intervals, possibly as low as 0.1s.
- Fixes for command line parsing in join(1).
- Make bgpd(8) and bgpctl(8) 4-byte AS compatible.
- Switch alpha to new timecounters.
- Add driver for macppc "System identifier" driver.
- Rename the macppc LED driver to xlights(4).
- Fix memory leaks in isakmpd(8).
- Add ahci(4) to sparc64 GENERIC kernels.
- Fix for ahci(4) on sparc64, prevents free panics.
- Introduce an SMP aware hw.setperf mechanism.
- SECURITY FIX: IPv6 type 0 route headers can be used to mount a DoS attack against hosts and networks.
A source code patch is available.
[Applied to stable]
- Add driver for the macppc Xserve LEDs.
- Increase the firmware upload delay for malo(4), since 100ms is not enough for some X40s.
- Fix for the PHY selection code in gem(4), gets rid of duplicate PHY on SPARC64 Blade1000 machines.
- Teach dumpfs(8) about the "updated" flag.
- Make the vfs_cache not be O(n^2) in certain cases.
- Update less(1) to version 382.
- Add sili(4) to alpha GENERIC kernels.
- Endian fix for the tht(4) firmware.
- Added microcode to tht(4), since Tehuti allows redistribution of it under a 4 clause BSD license.
- Plug memory leak in the xserver on client disconnect.
- Make sure fsck_ffs(8) does not look for FFS1 alternate superblocks when checking a FFS2 file system.
- In nm(1), fix a NULL dereference if the ELF symbol table size is zero.
- Make Alpha machines fill in the hw.serialno sysctl(8) if possible.
- Fix for newfs(8) when used with "-c".
- Fix a double free in gif(4) mtag check loop.
- Add support in ppp(8) for setting the address of the ppp peer.
- Fix for acpi(4) docking code.
- Add support in ftp(1) for proxies which require passwords.
- Fix in newfs(8) for FFS2 case.
- Fix debug info in acpi(4) code when docking/undocking.
- Fix for wdc(4) drive detection, now detects certain microdrives plugged into Soekris boxes.
- Initial import of a nx(4) driver for NetXen Inc multiport 10Gb and Gigabit ethernet cards.
- Fix macppc OpenFirmware code to allow booting and having root on a USB device.
- Initial import of the tht(4) device, a driver for the Tehuti networks 10Gb ethernet cards.
- Fix in isakmpd(8) for vpn peers that start rekeying on port 4500 when NAT-T is used.
- Fix for cas(4) on platforms where page size isn't 8k.
- Make systat(1) exit on "q" like top(1) does.
- For sd(4) devices that are unable to report geometry, change the fake geometry used to allow for even larger devices.
- Introduce mount_vnd(8) and fsck_vnd(8) commands to support fstab(5) usage of vnd(4) images.
- Add support in newfs(8) for creating FFS2 file systems. Make install media create FFS1 by default.
- New timecounter code for macppc.
- Fix panic in ath(4) when attaching to some IBM/Lenovo T42/T60s.
- Allow more than one -t to md5(1) in order to accommodate faster CPUs.
- Improved signal delivery for smp i386 systems.
- Make date(1) use UTC instead of GMT0 when given "-u".
- For hoststated(8), add a new relay "path" action to filter the URL path and arguments.
- Enabled sili(4) on sparc64 GENERIC and RAMDISK kernels.
- Add support for a fourth axis on wsmouse devices. Currently limited to USB mice.
- New bbc(4) driver for the sparc64 BootBus Controller.
- New pmc(4) driver for the NatSemi PC87317 SuperIO chip.
- Add support in fsdb(8) for FFS2 also.
- Add support in fsck(8) to check FFS2 file systems.
- Another fix for msdos file system code, this time when renaming into existing destination.
- Prevent infinite loop mapping interrupts on sparc64 Openfirware code when "reg" property is missing.
- Next step in making ospfd(8) equal cost multipath aware, by making SPF calculation multipath aware.
- Fix a vnode leak in the FFS code.
- Fix out-of-bounds memory access in dump(8).
- sili(4) enabled on amd64 and i386 GENERIC/RAMDISK kernels.
- Enable ral(4) on sparc64 GENERIC kernels.
- Add support for NCQ error recovery and NCQ command submission in the sili(4) driver.
- Make file(1) recognize mp3 files with an ID3v2 tag.
- Bring back i945GM support for xenocara.
- Fixes in the pthreads code for file descriptors getting blocked when using fork(), causing deadlocks in the parent process.
- In bgpctl(8), implement "show neighbor <peer> terse" to print all statistics in an easily parsable form.
- Add a pidfile argument to pflogd(8) so individual instances can be rotated via newsyslog.
- Make cp(1) try to create sparse files when copying blocks of zeroes.
- bcw(4) driver under development removed.
- Lots of work on the sili(4) driver.
- Import the older i810 video driver into xenocara from the X.org version shipped with 3.9/4.0.
- Update Sendmail to 8.14.1.
- SECURITY FIX: Multiple security fixes for X.org applied.
A source code patch is available.
[Applied to stable]
- For bge(4) on sparc64, prefer the local-mac-address provided by the PROM.
- Improved heuristic for detecting SMP on old-world macppc machines.
- Add Sun Fire V215/250 to the list of supported sparc64 machines.
- Implement a DK INFO ioctl so userland may query scsi disks for product, vendor etc.
- Fix for error handling when creating directories with long names in msdos filesystems.
- Do not make mkfs(8) reserve space for bad sector replacement, since modern disks to it themselves.
- Make tftpd(8) be more forgiving about tftp requests coming from 255.255.255.255.
- Initial import of a driver for the sparc64 Host/PCIe bridge found on the Sun Fire v215/245/445 machines.
- Have syslogd(8) retain the memory buffers on a SIGHUP if the syslog.conf(5) remains unchanged.
- Make ccd(4) accept an interleave of 0.
- Make an exception for the VT8521 SATA so ahci(4) wont attach to it, will revert to pciide(4) until it is fixed.
- Enable acx(4) on macppc GENERIC kernels now that it works on big endian boxes.
- Rework the prefixlen parsing in bgpd.conf(5) so filtering IPv6 prefixes finally works.
- Fix bug in acx(4) HW DMA setup, makes TX work on big endian machines.
- Add support in bgpctl(8) for "show rib community <community>".
- For carp(4), do not pick up IPv6 link local IPs on address deletions.
- Add base64 support to cksum(1) and friends.
- Add Sierra Wireless Aircard 580 to the list of supported umsm(4) devices.
- Fixes in tcpdump(8) for bus errors on sparc64 when dumping 802_11_RADIO packets.
- First step of making ospfd(8) equal cost multipath aware.
- Make ahci(4) attach devices based on PCI class and interface fields, not just on a list of pci devices. This will cause disks to change from wd* to sd*.
- In ftpd(8), do not log when the slave gets killed because read() returns 0.
- Implement support for the NOOP smtp command in spamd(8), and change the behaviour or the maxblack parameter.
- Make sendbug(1) accept $VISUAL in addition to $EDITOR.
- Added ahci(4) support to i386 RAMDISK kernels.
- Synchronised carp(4) advertisements on group demotion to reduce group failover to a few milliseconds.
- Add support in tcpdrop(8) for the 2-address format fstat outputs, also enhance IPv6 support by unpacking [addr]:port format.
- Make ospfd(8) re-originate the router LSA if the interface metric changes so the change can propagate instantly.
- Yet another buffer fix for ftp(1).
- On amd64, allow compilation of kernels with MULTIPROCESSOR defined but with DDB undefined.
- In ntpd(8), improve sensor polling interval to 30 seconds, just like ntp polls.
- Add new flag to netstat(1) to restrict route display in conjunction with -r to routes in the same address family.
- Replaced the shellscript sendbug(1) with a rewritten version.
- Make httpd(8) not output the version numbers to silence confused auditing programs.
- Fix wrong length check in ftp(1), previous version could ignore the "/" character.
- Fix buffer overflow in ftp(1) when parsing the .netrc file.
- Initial import of sili(4), a SATA chipset from Silicon Image.
- Add HUAWEI Mobile Connect E620 to the list of supported ubsa(4) devices.
- In dvmrpd(8), add code to parse unicast routes learned from route report packets.
- Add support in mount_cd9660(8) for mounting arbitrary sessions.
- Enable NCQ on ahci(4) based SATA controllers.
- Make libevent use arc4random() when generating the random IDs.
- ahci(4) enabled for i386 also.
- Add support for RFC3137 in ospfd to allow Stub Router Advertisements.
- Make pfctl(8) enable basic ruleset optimization by default.
- Enable ahci(4) on amd64 kernels, only attaches to jmicron controllers so far.
- Lots of work on the ahci(4) driver to get native support for some sata controllers instead of going over pciide(4).
- Add support in hoststated(8) to specify a number of attempts to retry forwarded services.
- Add support for playing simple RIFF file (.wav) to aucat(1).
- Add delay to com_console so the fifo has time to flush itself before resetting, to avoid garbled dmesg output seen on some arm machines.
- Add line-buffering flag (-u) to sed(1).
- Remove force-PIO workaround for landisk using the pciide(4) driver.
- Make the SH-based landisk platform default to writeback cache in the CPU.
- Deactivate the pmap in cpu_exit, avoids quite a lot of TLB shootdowns in the reaper.
- Update libevent to 1.3b, keeping local changes.
- Luna88k LCD device is now controllable with the lcd(4).
- Add FFS2 fields to the superblock, change fs tools to keep accessing the FFS1 fields.
- Make sure the privilege separated daemons do not signal "connection closed" upstream when receiving EINTR or EAGAIN.
- Move i386 to new timecounter code.
- Improvement in the way nmea(4) takes the timestamp from the timedelta sensor when no PPS signal is available.
- Initial import of a softraid(4) device, providing a framework for I/O manipulation. Disabled for now.
- Add IP (v4 and v6) load balancing to carp(4), similar to the ARP balancing.
- Add Sierra Wireless Aircard 875 to the list of known-to-work umsm(4) devices.
- Enable pxammc(4) and sdmmc(4) on Zaurus RAMDISK kernels too.
- Initial support for PXA27x SD/SDIO/MMC controller on the Zaurus platform.
- Fix in locate(1) for filenames containing spaces.
- Add OX16PC945K to the list of supported puc(4) devices.
- Fixes in the signal handling code when waking up. This fixes the majority of the rthreads lockings and hangups.
- Start USB1 initialization later, so all USB2 controllers have completed before starting USB1 legacy emulation.
- Better delay handling for USB startup code, speeds up booting if you have lots of host controllers.
- Fixes for hoststated(8) communication sockets, now shows relay statistics of all preforked processes.
- Enabled wpi(4) on amd64 GENERIC kernels.
- Make the upgrade script default to not fsck(8) non-root filesystems.
- Added uts(4), a driver for USB touchscreens.
- Add support in the alpha platform for a couple of new Alpha models, AlphaServer 1200 and 4100.
- In tcpdump(8), make sure we recognise more vendor payloads in the IKE decoder.
- Update bgpd(8) multiprotocol extension code to RFC 4760.
- Make sure the distributed prefix has a metric != 0 in ospfd(8).
- New timecounter code for the sparc64 platform.
- Add PCI id for Intel's PCIe quad port fiber adapter to the em(4) driver.
- Fix for UltraSPARC-IV CPU detection in OpenFirmware to prevent crashes.
- Make sure the OpenFirmware node can be found on UltraSPARC-IV CPUs.
- Fix in rcs(1) where multiple input files for ci would have flags from previous files affect the later ones.
- Fix for pthread include file.
- Allow nmeaattach(8) to start a sensor in the rc(8) scripts before starting ntpd(8) to give it time to cold start.
- Do not delete greylisted entries in the spamd(8) database when whitelisting, they expire anyway and there could be a race when using -M and a retry comes in.
- Fixes for ext2fs code.
- Fix for acx(4) devices running in HostAP mode, solves problem of getting DHCP leases from the AP when the network is quiet.
- Fix in sort(1) for very large input files.
- Allow IP_TTL and IP_MINTTL to be specified in the hoststated.conf(5) to support GTSM according to RFC 3682.
- Add quirk for Sony DSC-T10 umass(4) devices.
- Fix for hanging or extremely slow "bgpctl show rib" commands in some cases.
- Fixes for "hal" on ath(4) 5210, 5211 and 5212 based devices on big endian systems.