OpenBSD -current changelog
This is a partial list of the major machine-independent changes
(i.e., these are the changes people ask about most often). Port
specific changes have also been made, and are sometimes mentioned
in the pages for the specific platforms.
There is a separate list of Changes to the ports collection.
Note: Problems for which patches exist are marked in red.
Changes made between OpenBSD 4.1 and OpenBSD 4.2
- 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 cuplicate 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 accomodate 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 videodriver 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.
- Implemented 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 Intels 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 ar(4) 5210, 5211 and 5212 based devices on big endian systems.
This list mentions mostly platform-independent changes. For a list of changes
made in a particular platform, please check the page for that platform. If you
find them not listed there, the changes are either (1) not being documented or
(2) are documented here.
www@openbsd.org
$OpenBSD: plus.html,v 1.1053 2007/05/16 13:40:44 jj Exp $