This selection is intended to include all important
and all user-visible changes.
For a complete record of all changes, please see the "source-changes"
mailing list, called "OpenBSD CVS"
in the archives,
or use CVS.
Note: Problems for which patches exist are marked in red.
Accommodate newer i386/amd64 CPUs with physical address size greater than 36 bit. Fixes major performance hit seen on newer servers where an incorrectly programmed memory region length affects PCI device mappings.
Make dhclient(8) interface_status() assume that a link is up when IFM_AVALID is not set. Allows drivers to get dhcp leases even when they cannot tell what the link state is.
Fix for VU#624931 CVE-2012-2978: nsd(8) denial of service vulnerability from non-standard DNS packet from any host on the internet.
Make the smtpd(8) scheduler less verbose by default.
Further simplify cwm(1) Xinerama init, and re-init on XRR events.
On gio, correctly recognise boards with a 8-bit only ID register, which are not frame buffers.
The 8254 timer does not interrupt on Indy; no longer try it. R4000 and R4400 based Indy may experience the lost clock interrupt processor errata again, until better fix is found.
Drop .sp and .br right after .SH and .SS.; and drop empty .IP so they do not cause additional vertical spacing with mandoc(1).
Let a trailing .Ns macro take effect, even on an input line containing a partial implicit macro. Fixes some mandoc(1) horizontal spacing.
Print messages about ifconfig(8) ieee80211 nodes purged from the node cache if hostap/ibss modes are compiled in and the interface is in debug mode.
Fix handling of mandoc(1) paragraph macros inside lists: when they are trailing the last item, move them outside the list; when they are trailing any other none-compact item, drop them.
mandoc(1) will now never use "\*(Ba" and just use "|". Stops breaking of enclosing font changes.
Put p_prof_ticks and p_prof_addr back in a "copy-on-fork" area, to correct process accounting.
Add recognition of the Huawei Mobile E303 to umsm(4).
Use ipsec(4) flowinfo on pipex to select the ipsec(4) tunnel for sending L2TP packets.
In flush-left mode mandoc(1), when an output line is broken at the position of a literal tab, the tab now indents the following line.
Added IP_IPSECFLOWINFO option to sendmsg(2) and recvmsg(2), so npppd(4) can use this to select the ipsec(4) tunnel for L2TP packets. Fixes Windows (always binding to 1701) and Android clients (negotiating wildcard flows).
Fixed two possible node leaks in ieee80211_input().
Make sure we have a swap partition before trying to read or write hibernate info to it.
mandoc(1) -Tman .sp fixes: keep height argument on the same line (it got printed to the output); for .El .sp, avoid the .sp -1v .PP .sp output sequence.
mandoc(1) -mdoc parser improvements related to vertical spacing: remove .br before paragraph type blocks; treat .Lp as a paragraph like .Pp (so remove .Pp, .Lp, .br before it); do not treat .sp as a paragraph (don't remove anything before it); after .Sh, .Ss, .Pp, and .Lp, remove .Pp, .Lp, .sp, .br, and blank lines; after .sp and .br, remove .br.
Unify cwm(1) max routines, to match client placement and some menu ones when calculating screen dimensions.
Don't panic in hibernate resume if no swap partition exists on the root disk.
Add cu(1) command ~D to drop the DTR line for a second (similar to using ~# for a BREAK). This makes some microcontroller boards reset.
Fixed mandoc(1) vertical spacing for blank lines after .PP, and for .sp after .PP; adjust -Tman SYNOPSIS .Nm indentation using .HP; do not pass font escapes and such through print_word(), to correctly count characters.
In mandoc(1) -Tman .Bl -compact, skip blank line only before first item of first list in a section, not before every item of the first list.
Label node allocation failures as such in netstat(1) -W output.
Changed ipsec.conf(5) configuration format fed to the isakmpd FIFO to be able to specify extended options (eg SA Lifetime).
Added sysctl.conf(5) file for beagleboard architecture (required by the cross compiler).
Refined bgpd(8) knexthop calculations. Fixes massive memory consumption crashes when used with ospfd(8).
Disable acpivideo(4) on ASUS laptops, as some models panic whenever an event is received.
Fix wireless scanning on slow systems with high RX rate and interface in debug mode. Allows association points to recover from ifconfig(8) "ral0 debug down up" in noisy RF environments. Also fixed some association failures.
Allow route(8) destination/prefixlen syntax for ipv6 routes.
After connect() returns EINPROGRESS the connection can still fail, relayd(8) will now check with getsockopt if the socket is still open.
Use S_ISFIFO and S_ISSOCK instead of lseek() to determine whether a fd is a socket, pipe or named pipe.
When cp(1) copies a file using sparse mode, truncate the file based on current seek offset instead of the reported original length.
USB HID parser now supports multiple report IDs. Added hid_get_report_id(3) to get an id of a descriptor.
New event-driven tftp-proxy(8) replaces the old one run out of inetd(8).
Disabled SSLv2 in the OpenSSL code base.
Better fdisk(8) bounds checks and less unuseful help texts.
In bgpd(8), limit the setsockopt(2) while loops to prevent them from running away if the call fails when a peer bounces at the wrong time.
Fix libtool(1) handling of ldconfig library directory searches.
Make tmux(1) command exec functions return an enum rather than -1/0/1 values and add new value to mean "leave client running but don't attach". Fixes problems with using some commands in a command sequence.
Make sure processes don't get scheduled on CPUs which have been taken out of the scheduler.
Fix packet length issue in pf(4) address translation for icmp error packets.
Reduce the number of unnecessary IPIs sent on amd64 smp machines by calling need_resched() only if the priority is lower than the current running process.
Make smtpd(8) accept address literals for the recipient domain.
libtool(1) changes: added LT::OSConfig for config values, and walk the object to print the config (instead of printing the values manually); made $mode into an actual object; added a dump method (simplifying the --config call).
Added the Chicony x200 camera to usbdevs.
Fixed a mandoc(1) assert() raised by "RS" when following "TP" without a tag.
Allow httpd(8) to build even if sslv2 is disabled.
Updated to freetype-2.4.10.
Updated nginx(8) to 1.2.2; start using /var/www/cache instead of /var/www/tmp.
mandoc(1) basic support for "-Tman .In" and "-Tman .Ft and .Fn"; implemented "-Tman .Bd" -offset and -compact, "-Tman .Sm", "-Tman .Bk"; after .Lb in library section, break the line in the final output.
Check for valid partition when fdisk(8) "select"ing a partition.
mandoc(1) "-mdoc -Tman" fixes: right after .Ns, avoid breaking the line in man code; after .Fl without arguments, do not insert a blank into man code; before each .Nm in .Sh SYNOPSIS, insert a .br into man code; skip .Pp arguments, don't copy them to man code.
Fixed an ehci(4) abort loop problem when aborting a transfer.
Unbreak Mesa GLX1.3 constructors with software dri. Makes clutter/cogl works with software acceleration.
Don't enable Mesa INTEL_swap_event unconditionally. Unbreaks clutter/cogl and other toolkits.
Report incoming connections when -l is specified with -v in nc(1).
Restore default argument to use "/tftpboot" in rc.d(8) script. Makes tftpd(8) work out of the box.
Support for gaming-style USB keyboards (that use a variable for each separate key in the HID report).
cwm(1) querying for Xinerama now done per display, not per screen.
pkg_add(1) sets -i on automatically for ttys; uses -i/-I to force interactive/non interactive mode.
ssh(1) setting of tty_flag moved to after config parsing, so RequestTTY options are correctly picked up (bz#1995).
Fixed ssh(1) memory leak of passed-in environment variables and connection context when new session message is malformed (bz#2003).
Added ssh-keygen(1) options to specify starting line number and number of lines to process when screening moduli candidates. Allows processing of different parts of a candidate moduli file in parallel.
Correct the jumbo setup code within brgphy(4) so it is not disabled on the physical layer interface.
Set the prefetch threshold for ix(4). Provides some performance improvement.
ix(4) now forces a cleanup if number of tx descriptors is below threshold.
Added flow control to bnx(4). Tested on 5706, 5708, 5709, 5716 chipsets.
NVIDIA GeForce 320M (found on the 2010 version of the Apple Mac mini) added to pcidevs.
Decode ipsecctl(8) sa flags to enable realtime observation of changes with monitor mode.
Don't output ipsecctl(8) "esn" string in rule section (can't use the keyword to create a esn-enabled rule anyway).
when rekeying ike sa, copy more info from the old one; fixes last known iked(8) inter-op problem with windows 7.
Adjust the bgpd(8) route decision code to cover checks needed due to route reflection.
Fixed cwm(1) atom (WM_PROTOCOLS) style handing; closing a window will no longer close entire application if the client supports CLIENT_PROTO_DELETE.
libtool(1) changes: cleanup options handling; simplify LT::Trace syntax; implement --tag checks; added libtool comp support, as per libtool2 (implicit modes still as per libtool1); prevent shell code in nm execution.
Set 10_100_ONLY flag for bge(4) BCM57791/BCM57795 chipsets.
Re-implement atom handing for more consistent separation of cwm(1) and Extended Window Manager Hints.
Use /var/www/tmp/ for the nginx(8) temp directories, even if not chrooted.
Improved POSIX compliance for arpa/inet.h and netinet/in.h.
Workaround for libtool(1) race condition with make -j4.
Support added for external L2 cache controller on Indy/Indigo2 R4600SC and Indy R5000SC processor modules.
Get mips64 L2 line size from configuration register instead of hardcoding smallest possible size; and on kernels with 16KB pages, SyncDCachePage on physical (not virtual) addresses where possible.
Change arc4random(3) arc4random_uniform() calculations to simplify code and make slightly faster.
Replace mips64 R5000 and R10000 family assembly cache routines with C equivalents (rm cache_r*.d in kernel compile directories after updating).
adb(4/macppc) improvements brought back that were lost in reversion: fixed backspace key under X11; use the command key (58) as modifier in console for all European keyboards; don't use small enter key (52) as modifier in console for the fr, sg, and sv_nodead layouts; don't redefine keys that are inherited from the default layout (de, uk).
Improved config(8) error messages when removing/recreating symlinks in the build dir.
Changes to compat_linux(8): pool_get() flags changed from WAITOK to NOWAIT to avoid a potential lost-wakeup; linux_futex.c now sleeps on the actual data address (not on the stack address of the pointer to the data); implemented linux_sys_tgkill and added extra argument validation.
Added "control mode" that lets tmux(1) commands be sent and output received on stdout(4).
When using mg(1) M->, place cursor near bottom of window like emacs, instead of middle of page.
Do not crash when the current tmux(1) session has no window.
Fixed mg(1) spin that occurred when splitting window after directory opened via command line and by other windows.
Add -a flag for tmux(1) detach-client, will kill-session for all but the specified session.
Checking that the opened file is the expected one fixes a potential symlink race when using the -P flag in rm(1).
In the smtpd(8) code a "struct scheduler_info" abstraction is introduced and used as a value carrier instead of "struct envelope".
IP30.MP kernels will store the CURCPU pointer in a slower way but which works in memory areas above 2 GB (physical); the mips64 port no longer restricts continuous-page allocations to memory in the low 4 GB.
On the octeon port the TLB size is now dynamically calculated.
bsd.port.arch.mk(5) learns to distinguish in between big and little endian machines via BE_ARCHS and LE_ARCHS (to be tested against NOT_FOR_ARCHS and ONLY_FOR_ARCHS).
On amd64 and i386, MBR code serial port output is fixed and register globbering prevented.
Xenocara libGL builds with "XENOCARA_BUILD_DRI=No" are fixed.
In iked(8) an incorrect conversion of the EC point to the binary representation when rounding up bignums is fixed.
The sqlite3(1) shell and library are updated to version 220.127.116.11.
On amd64 and i386 the new "machine comaddr" can be used to configure the I/O port used to access the serial console.
Due to bug-compatibility issues mandoc(1) no longer allows redefinition of macros before the first ".Dd" (mdoc(7)) or ".TH" (man(7)) request has been seen; it fixes handling of implicit/explicit block issues, like empty paragraphs.
imsg_read(3) will fail with EAGAIN if it's clear that recvmsg(2) will fail due to shortage of file descriptors; API changed so retriable errors will be retried automatically.
mandoc(1) gains some more GNU manual compatibility for some ports' pleasure.
In Xenocara xf86-video-glint is updated to version 1.2.7; also, if building against Xserver 1.12, video drivers that have not yet been updated to the video ABI changes are conditionalized away.
Priviledge separation becomes available for the OpenBSD Xserver 1.12.
In the kernel, DDB diagnostic code that reported timeout adjustments on resume was removed to reduce verbosity.
New smtpd(8) command line option "-P", which can be used to start subsystems in a paused state.
The mg(1) editor will now beep as either buffer end is reached during scrolling.
The mlock(2) and munlock(2) systemcalls no longer cause hard failures when the effective region is of zero length.
In login.conf(5) the new option "krb5-noverify" causes failures to verify credentials against a local key to not result in fatal errors.
mg(1) no longer creates an initial buffer if we update already open files to default modes.
snmpd(8) now panics right away if some of the necessary sockets can't be created.
To unbreak dhcp on the Indigo (IP20) and E++ GIO installer, sq(4/sgi) will always report the interface "up".
mandoc(1) now produces cleaner output with the ROFF "\z" (output next character, don't advance cursor) escape sequence; and no longer makes distinction between numeric/non-numeric escape sequences. Makes recursive parsing of roff(7) escapes actually work.
tmux(1) uses the set "default-shell" not _PATH_BSHELL to spawn commands.
Network code now allows attributes to be passed with prefixes (eg MRT dumps with prefixes for bgpctl(8)).
Replaced Loongson2F assembly cache routines with C code (remove cache_loongson2.d in your kernel build directories).
Proper support for the so-called "fast mode" of the Indigo2 ECC memory controller on sgi.
Add tcpcib(4) to support the Intel Atom E600 watchdog.
Teach rain(6) to calculate terminal delays like worms(6), avoids network saturation if run over ssh.
RFC 2461 Router Solicitation flushing will remove all IPv6 routes on a specified gateway, not only CONNECTED ones; clear routes when RA with RouterLifetime of 0 is sent; and use correct priorities when installing routes acquired via redirects.
The tmux(1) configuration syntax now lets a backslash escape itself at the EOL.
On mips64 the virtual aliasing mask computation is corrected.
less(1) will exit if it can't write to the terminal.
pstat(8) shows internal file-descriptor status bits: "d" and "m" are related to garbage collection and "l" means that the descriptor is in a transition state.
security(8) will now also check permissions of ".ssh/id_ecdsa".
Intel I350 PCI Express Ethernet adapters become supported by em(4).
sudo(8) addresses CVE 2012-2337 by adding a missing break between AF_INET and AF_INET6 in addr_matches_if_netmask().
pcidump(8) recognizes 8.0 GT/s link speeds of PCI Express 3.0.
The IPv6 stack tests that the target link local address is included with a neighbour advertisment sent to a multicast address, as mandated by RFC 4861.
unbound(8) now handles out-of-filedescriptor situations by temporarily pausing further accept(2)s.
Use -t for tmux(1) move-window with -r rather than dying.
Support "Match LocalAddress" and "Match LocalPort" to sshd_config(5); adjusted tests to match.
smtpd(8) allows checking a partial key in a key set (eg comparing address to netmask).
Fixed twin-channel ahc(4) device support. Only affects ahc at eisa(4) since no ahc at pci(4) are twin-channel.
Changed smtpd.conf(5) syntax for makemap(8) virtual domains configuration: "accept for virtual vmap [...]" becomes "accept for virtual map vmap [...]" to keep syntax consistent with to-be-implemented relay rules through maps.
smtpd.conf(5) map declarations extended to allow the following to work: map "foobar" source plain "/etc/mail/foobar".
iked(8) synced to RFC 5996: Payload Type "Encrypted" (E) changed to "Encrypted and Authenticated" (SK).
In the kernel, a new copyaddrout() function encapsulates the copying out of socket addresses to userspace.
In Xenocara, xf86-video-vesa is updated to version 2.3.1, xf86-video-ark to 0.7.4, xf86-video-cirrus to 1.4.0, xf86-video-neomagic to 1.2.6, xf86-video-savage to 2.3.4, xf86-video-sis to 0.10.4, xf86-video-tdfx to 1.4.4, xf86-video-trident to 1.3.5 and xf86-video-vmware to 12.0.2.
After a dependency update IP30 kernels can be build with -j2.
On the sgi platform the HW_CPUSPEED sysctl(3) becomes functional.
No longer print warnings or try to stop data transfer to midi(4) UART ports when the transfer is already complete.
Drivers for the Indy and Indigo 2 PS/2 keyboard ports and the newport(4/sgi) (NG1, XL, XGE) framebuffer is added to the sgi port.
Framebuffer and console machinery improvements on the sgi platform.
OpenGL related defines have been moved from gbe(4/sgi) and xbow(4/sgi) to a shared OpenGL-specific header file.
The runtime linker ld(1) no longer mmaps 0 byte .BSS sections.
If missing, pkg_add(1) now installs pkglocatedb (after user confirmation), and uses it to search the file system.
On sgi: EISAVERBOSE option is added to the configuration of IP22 kernels; controller-dependent functions are encapsulated in platform-dependent ones; bus_space(9) related imc(4/sgi) prototypes are moved to a public header; and the hpc(4/sgi) child device attachment is overhauled.
top(1) no longer complains about display size after a resize.
smtpd(8) alias bugfix, associate real names with aliases so filters/filenames from /etc/mail/aliases will work correctly.
yacc(1) now uses NULL instead of 0, and calls of memcpy(3) instead of unrolling code inline.
mandoc(1) will no longer bail out if the -width argument is missing.
In mandoc(1) the -width and -offset macro arguments will no longer swallow the next option.
Code simplified for parsing of results in apropos(1).
Mandocdb, the upcoming whatis(1), can now handle multiline NAME sections in man(7).
More errata bandaid for the R4000SC in the mips64 and sgi tlb handlers.
wdsc(4/sgi) now rejects commands the 33C93 chip does not support. Raised timeouts when it sends stop commands (eg to sd(4) devices).
Make ef(4) cope with strict alignment platforms, and unbreak the RX logic.
Minimal threads support added for mips64.
On the sgi platform R4600 CPU (IP22/IP24) support is now by default enabled in the GENERIC-IP22 kernel configuration (the secondary cache is not supported yet).
Fix of DMA for ethernet operations of the sq(4/sgi) driver of Indigo2 and R5000SC machines.
Minimal threads support for gdb(1) is enabled on the powerpc platform.
The lint(1) program is removed from OpenBSD base.
In Xenocara xtrans is updated to version 1.2.7, libXaw to 1.0.10, xf86-input-joystick to 1.6.1 and xf86-video-r128 to 6.8.2.
Updates to Xenocara: xcmiscproto to 1.2.2, xextproto to 7.2.1, scrnsaverproto to 1.2.2, recordproto to 1.14.2, fontsproto to 2.1.2, bigreqsproto to 1.1.2 and kbproto to 1.0.6. All extended with docbook.am automake files.
tmux(1) will now honour it's automatic-rename option.
snmpd(8) introduces a short-period sleep event(3) to handle out-of-file-descriptor situations.
tcpbench(1) introduces a short-period sleep event(3) to handle out-of-file-descriptor situations.
The Route Distinguishers of bgpd(8) will no longer be used to control distribution; also see bgpd.conf(5).
No longer try FAT detection if we have found an OpenBSD MBR partition, no longer try to read one from a "bare" one. Recognize FAT even if no valid 0x55AA signature has been found. Don't allow the writing of a disklabel on "bare" FAT media.
The MS-DOS FAT filesystem implementation gains a significant write speedup for large files (up to twice as fast).
In Xenocara's libpciaccess, memory handling of struct pci_io_handle is simplified. This fixes vgaHWSaveFonts() in the 1.12 xserver on OpenBSD (other sub-systems relaying on pci_io could be affected, too).
In ospfd(8) the two LSA types LSA_TYPE_AREA_OPAQ and LSA_TYPE_AS_OPAQ will no longer trigger a fatal program exit when found during SPF calculation.
The kernel ensures that on amd64 identifycpu() is called once only, which fixes occasional hangs on resume.
The old socket credential approach using struct sockcred and SCM_CREDS is outdated and removed from the tree.
A self-sufficient directory descriptor structure is introduced to ld.so(1)
The sparc64 port introduces the HVIOCREAD and HVIOCWRITE ioctl(2)s for hypervisor memory access.
A series of updates for tmux(1): the options c0-change-trigger and c0-change-interval can be used to control the newly implemented output rate limiting (boosts responsivity under very fast output, like running yes(1)); adds -C, -N and -T flags to find-window to find in content, name, or title.
New OIDs for snmpd(8): hrSystemUptime, hrSystemDate, hrSystemProcesses and hrSystemMaxProcesses.
Problems fixed which may have been observed with rthreads in conjunction with the dynamic link interface.
In smtpd(8), no newly created bounce message is inserted into the scheduler if it is already present therein.
The sgi port will now only restrict the page size to 4096 bytes on R5000 and RM7000 processor families, but otherwise default to 16384. Subsequent tweaks in the VM code of the kernel.
On the sgi port it becomes possible to boot over the network (bootp).
Only change the default boot device to a bootable softraid(4) volume, if we are able to handle the given discipline. boot(8/amd64) currently restricted to RAID 1; not available on other architectures.
More search paths for pkg-config(1): /usr/local/share/pkgconfig and /usr/X11R6/share/pkgconfig will also be searched by default.
kdump(1) tracing and dumping of "pointer to struct" syscall arguments is added for structs timespec, timeval, sigaction, and rlimit.
i386 and amd64 can now identify Xeon MP 7400, Atom Z6xx, Atom [DN]2xxx, Xeon 6500/7500, Xeon E7, and Core i3/i5/i7 3rd Generation when querying the bus clock. Avoids "unknown models" messages (real information still read through acpi(4)).
The PCI database gains knowledge of HP Smart Array P220i/P222/P420/P420i/P421/P721m/P822.
Xenocara's bsd.xorg.mk switched from Python 2.6 to 2.7.
The acpi(4) aml_evalexpr() function is fixed to use 64 bit unsigned integers, and a check is made the _REG method is available before calling.
Xenocara libXcursor is updated to 1.1.13, libXdmcp to 1.1.1, libXext to 1.3.1, libXft to 2.3.0, libXinerama to 1.1.2, libXmu to 1.1.1, libXpm to 3.5.10, libXrender to 0.9.7, libXt to 1.1.2, libXtst to 1.2.1, libXv to 1.0.7, libXvMC to 1.0.7, libXxf86dga to 1.1.3, libXxf86vm to 1.1.2, libdmx to 1.1.2, libxkbfile to 1.0.8, and glproto to 1.4.15.
Luna88k multi-processor support, step 3. GENERIC.MP configuration file based on mvme88k.
Add mos(4) support for the MosChip MCS7832, a low pin count version of the MCS7830.
Updated the list of supported four digit models in intro(4/hppa).
Mention in se(4) some additional phys (physical layer interfaces) that may be able to attach.
Copy p_tcb (user-space thread-control-block address) on fork, for non-__HAVE_MD_TCB archs.
Added sys/dev/pci/pcidevs codes for Realtek RTL8192CE, Nvidia nForce 780a SLI and nForce 200 chipsets.
Always try to reclaim jme(4) transmitted frames to prevent watchdog timeouts when there is no link present.
Add checks to rthreads when trying to unlock an uninitialized mutex to make sure it returns EPERM.
The mandoc(1) program now replaces bogus characters with ? instead of just dropping them.
In man(7), support the .OP macro (for compatibility only).
On the mips64 and sh platforms the per-thread errno should be fixed.
The ix(4) interrupt routine uses a shorter path to reenable interrupts and gains other tweaks which result in a doubled performance on 82599.
In the gus(4/i386) driver MIDI registers will only be used if they are actually available. This fixes an issue which caused the driver to be disabled on 1999-08-22, but the happy-end can finally be seen in i386 GENERIC.
For the elroy(4/hppa) driver an integer truncation error is fixed which caused systems to freeze hard.
The process tracing facilities will work again on processors without floating-point registers/state. (Had been broken by the large extension of the 20th.)
In tmux(1) the show-options and window-show-options commands can now be used to show just a single specified option.
Minor tweaks and cleanups in the amd64 code of the kernel have been observed.
pthread_yield(3) is renamed to sched_yield(3).
Manual pages are created for the pthread_condattr_t type.
The tmux(1) display-message command is extended by a -F option which can be used to specify a format string to control output formatting.
New functions are added to the thread library: pthread_mutex_timedlock(3), pthread_condattr_getclock(3) and pthread_condattr_setclock(3); also, PTHREAD_MUTEX_NORMAL mutexes learn about self-deadlocks.
snmpd(8) gains the MIB module for gathering information from OpenBSD's packet filter.
In chroot(2) mode nginx(8) first chdir(2)s to the PREFIX directory before it starts to create it's temporary directories.
The pthread_suspend_np(3) and pthread_resume_np(3) function are no longer functional and become ENOTSUP stubs.
A lot of work is being done for making process tracing work with rthreads.
In Xenocara, update xf86-video-geode 2.11.13 and xf86-video-dummy to 0.3.5.
kdump(1) fixes an integer flip which could have happened for a kernel trace record with ktr_len of SIZE_MAX and would have caused a zero byte data allocation. It also learns more system calls and refactors output routines as well as the output produced by the latter.
A lot of work is being done on regression tests for threads.
Bugfix in tcpdump(8) to correctly check BGP prefix lengths in withdrawn routes.
Fix return value documentation errors in usbhid(3).
Allow for more vars in ksh(1) hash table, improve hash function, increase hash table size sooner.
Initialize the scope, policy, and inherit members in pthread_attr_init() so that their pthread_attr_get* don't return bogus values.
Update nginx in base to 1.0.12 and sync its pcre(3) with the version in ports.