EuroBSDCon in two weeks. Be sure to attend early and often.

Many and various documentation improvements for libcrypto. New man pages, rewrites, expanded bugs sections, and more.

Only allow upward migration in vmd.

There’s a README for the syspatch build system if you want to run your own.

Move the kernel relinking code from /etc/rc into a seperate script usable by syspatch. Kernel patches can now be reduced to just the necessary files.

Make the callers of sogetopt() responsible for allocating memory. Now allocation and free occur in the same place.

Use waitpid() instead of wait() in most programs to avoid accidentally collecting the wrong child.

Have cu call isatty() before making assumptions.

Switch mandoc rendering of mathematical symbols and greek letters from trying to imitate the characters’ graphical shapes, which resulted in unintelligible renderings in many cases, to transliterations conveying the characters’ meanings.

Update libexpat to 2.2.4. Fix copying partial UTF-8 characters.

Sigh, here we go again. Work around bug in F5’s handling of the supported elliptic curves extension. RFC 4492 only defines elliptic_curves for ClientHello. However, F5 is sending it in ServerHello. We need to skip over it since our TLS extension parsing code is now more strict.

After a first install, run syspatch -c to check for patches.

If SMAP is present, clear PSL_AC on kernel entry and interrupt so that only the code in copy{in,out}* that need it run with it set. Panic if it’s set on entry to trap() or syscall(). Prompted by Maxime Villard’s NetBSD work. Errata.

New drivers for arm: rktemp, mvpinctrl, mvmpic, mvneta, mvmdio, mvpxa, rkiic, rkpmic.

No need to exec rm from within mandoc. We know there’s exactly one file and directory to remove. Similarly with running cmp.

Revert to Mesa 13.0.6 to hopefully address rendering issues a handful of people have reported with xpdf/fvwm on ivy bridge with modesetting driver.

Rewrite ALPN extension using CBB/CBS and the new extension framework. Rewrite SRTP extension using CBB/CBS and the new extension framework.

Revisit 2q queue sizes. Limit the hot queue to 1/20th the cache size up to a max of 4096 pages. Limit the warm and cold queues to half the cache. This allows us to more effectively notice re-interest in buffers instead of losing it in a large hot queue.

Add glass console support for arm64. Probably not yet for your machine, though.

Replace heaps of hand-written syscall stubs in ld.so with a simpler framework.

65535 is a valid port to listen on.

When xinit starts an X server that listens only on UNIX socket, prefer DISPLAY=unix:0 rather than DISPLAY=:0. This will prevent applications from ever falling back to TCP if the UNIX socket connection fails (such as when the X server crashes). Reverted.

Add -z and -Z options to apmd to auto suspend or hibernate when low on battery.

Remove the original (pre-IETF) chacha20-poly1305 cipher suites.

Add urng(4) which supports various USB RNG devices. Instead of adding one driver per device, start bundling them into a single driver.

Remove old deactivated pledge path code. A replacement mechanism is being brewed.

Fix a bug from the extension parsing rewrite. Always parse ALPN even if no callback has been installed to prevent leaving unprocessed data which leads to a decode error.

Clarify what is meant by syslog priorities being ordered, since the numbers and priorities are backwards.

Remove a stray setlocale() from ksh, eliminating a lot of extra statically linked code.

Unremove some NPN symbols from libssl because ports software thinks they should be there for reasons.

Fix saved stack location after resume. Somehow clang changed it. Resume works again on i386.

Improve error messages in vmd and vmctl to be more informative.

Stop building the miniroot installer for OMAP3 Beagleboards. It hasn’t worked in over a year and nobody noticed.

Have the callers of sosetopt() free the mbuf for symmetry.

On octeon, let the kernel use the hardware FPU even if emulation is compiled in. It’s faster.

Fix support for 486DX CPUs by not calling cpuid. I used to own a 486. Now I don’t.

Merge some drm fixes from linux.

Defer probing of floppy drives, eliminating delays during boot.

Better handling of probes and beacons and timeouts and scans in wifi stack to avoid disconnects.

Move mutex, condvar, and thread-specific data routes, pthread_once, and pthread_exit from libpthread to libc, along with low-level bits to support them. Let’s thread aware (but not actually threaded) code work with just libc.

New POSIX xlocale implementation. Complete as long as you only use ASCII and UTF-8, as you should.

Round and round it goes; when 6.2 stops, nobody knows. A peak at the future?