===================================================================
RCS file: /cvsrepo/anoncvs/cvs/www/71.html,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- www/71.html 2022/04/09 10:41:57 1.10
+++ www/71.html 2022/04/09 12:01:26 1.11
@@ -83,6 +83,15 @@
- Added aplspi(4), a driver for the SPI controller found on the Apple M1 SoC.
- Added aplhidev(4) support for the keyboard/touchpad on Apple M1 laptops.
+
- Introduced aplpmgr(4), a driver for the power management controller found on various Apple SoCs.
+
- Introduced aplmbox(4), a driver for the mailbox that provides a communication channel with additional cores integrated on Apple SoCs.
+
- Introduced apliic(4), a driver for the I2C controller found on various Apple SoCs.
+
- Added the chip ids used on Apple M1 Pro/Max and Apple T2 Macs to bwfm(4).
+
- Rewrote arm64 kernel FPU handling code to fix the random crashes seen with SMP kernels on Apple M1.
+
- Restricted the pci(4) ioctl interface to devices detected by the kernel, preventing Xorg PCI probes from breaking the WiFi chip on M1 macs.
+
- Introduced aplsmc(4), a driver for the SMC found on Apple M1 SoCs.
+
- Introduced aplnco(4), a driver for the Numerically-controlled oscillator (NCO) clock which drives the audio clocks on Apple silicon.
+
- Introduced tascodec(4), a driver for the TI TAS2770/TAS5770 digital audio amplifier codec found on Apple M1 Macs.
Introduced Added gpiokeys(4)
for arm64, a driver which handles events triggered by GPIO keys such
as lid status and power button.
+ Added support for controlling keyboard LEDs to aplhidev(4).
+ Added pclk clock used by dwdog(4) on RK3399 to rkclock(4).
+ Introduced mpfclock(4), a driver for the PolarFire SoC MSS clock controller.
+ Implemented powerdown in arm64.
+ Introduced cdsdhc(4), a driver for the Cadence SD/SDIO/eMMC host controller.
+
Changes on other architectures:
- Enabled enforcing of RLIMIT_MEMLOCK on powerpc64.
+
- Enabled uhid(4)/fido(4) on riscv64.
+
- Fixed booting from an IDE block device on the Sun Blade 100.
+
- Fixed radeondrm(4) console colors on sparc64.
+
- Added missing locking to pmap_extract(9) and pmap_unwire(9) on arm64 and riscv64.
+
- Enabled dt(4) on macppc.
+
- Increased ddb(1) access to registers on macppc and powerpc64.
@@ -118,6 +142,19 @@
hw.perfpolicy to "auto" at startup, defaulting to 100%
performance with AC power connected and using the auto algorithm when
on battery.
+ Switched to using long filenames by default with mount_msdos(8) on FAT
+ filesystems.
+ Fixed hilkbd(4) Swedish keyboard layout on non-PS/2 style keyboards.
+ Made futexes work in shared anonymous memory.
+ Aligned memory allocation for USB device drivers and USB HC drivers, enlarging the USB memory pool.
+ Reworked garbage collector for unix(4) sockets to prevent potential kernel panics.
+ Fixed hibernate setups where removal of a umass(4) device results in
+ a renumbered softraid(4) boot device.
+ Fix hibernate on newer hardware by allowing more memory ranges.
+
SMP Improvements
@@ -132,12 +169,23 @@
Unlocked top part of UVM fault hander on mips64.
Unlocked the kevent(2) system call.
Made the kqread event filter MP-safe.
-
Reduced the time overhead of kqueue(2)-based poll(2) and select(2) systems calls by
keeping knotes between the system calls.
+ Unlocked accept(2)
+ and accept4(2)
+ syscalls.
+ Prevented select(2) from blocking if
+ registering found pending events.
+ Protected ipsec(4)
+ input and output with the kernel lock to allow forwarding of non-ipsec
+ traffic in parallel.
+ Unlocked the bottom part of the uvm fault handler.
+ Unlocked getpeername(2).
+ Made bpf(4) MP-safe.
@@ -171,11 +219,21 @@
running guests.
Added a new login class for
vmd(8) on amd64.
+ Fixed spurious abort of a VM by vmd(8) when the scheduler
+ moves a VM to a different core while it is sleeping on a lock.
+ Fixed broken vmd(8)
+ "boot device cdrom" feature after a fix in seabios.
+ Reintroduced support for vmctl(8) start -B net
+ -b bsd.rd
, which emulates a PXE boot and performs an
+ autoinstall.
+ Made vmm(4) dt(4) tracepoints amd64-only.
+
Various new userland features:
-
- Added realpath(1), a wrapper
for realpath(3) for
@@ -184,16 +242,33 @@
by fdisk(8).
- Removed fdisk(8)
"disk" editing command.
+
- Prevented the possible creation of MBRs with overlapping
+ partitions 0 and 3 in fdisk(8).
+
- Allowed fdisk(8) to
+ extend the default OpenBSD partition to the end of the disk, rather
+ than truncating at the end of the last full cylinder.
+
- Corrected checksums written by fdisk(8) on big-endian architectures to be little-endian as per spec.
- Added rcctl(8) "ls
rogue" to show daemons which are running but not set as "enabled" in
rc.conf.local(8).
- Allowed passing a different signal than SIGTERM in the default
rc_stop() function in rc.subr(8).
+
- Improved and simplified timer handling in rc.d(8) "stop" and "reload".
+
- Implemented probe variables in BPFtrace (bt(5)).
- Provided common btrace(8) scripts
kprofile.bt (to save kernel stackframes and produce flamegraphs) and
runqlat.bt (to measure the latency of the scheduler runqueues).
+
- Implemented RFC6840 (AD flag processing) in the libc resolver, if
+ using trusted name servers specified with 'trust-ad' in resolv.conf(5)
+
- Switched LLD_ARCHs (architectures using the LLVM ld.lld(1) linker) to also
+ user the LLVM archiver llvm-ar(1).
@@ -210,6 +285,7 @@
Merged bugfixes from upstream into less(1) including fixes for
the prompt hiding feature (CTRL-P) and an integer overflow.
+ Fixed possible use after free with long lines in less(1).
Fixed file descriptor leak of /dev/tty on doas(1) auth failure.
Replaced lrint(3),
@@ -226,10 +302,23 @@
stdout and stderr are redirected to a non-tty.
Fixed octal escape parsing in tr(1) backslash().
Added uniq(1) support for arbitrarily long input lines.
+ Made uniq(1) ignore trailing newlines when comparing lines.
+ Made uniq(1) skip() each input line only once, improving performance.
Prevented an access to uninitialized memory in awk(1).
- Updated awk(1) to the October 12, 2021 version.
+ Increased tee(1) I/O buffer size for 8KB to 64KB.
+ Allowed bare numbers for key and mouse bindings in cwm(1).
+ Added a cwm(1) "group-last" command that shows only the previously active group.
+ Set cpuspeed to 0 in apm(8) when hw.cpuspeed cannot be retrieved.
+ Improved performance of rev(1).
+ Copied the cos(3)
+ cosine software implementation from FreeBSD-13, and disabled assembly
+ implementations of trig functions on x86 platforms.
+ Added optimization for tiny x in cos(3) and sin(3) trigonometry functions.
+ Made ed(1) flush all stdio streams before running a shell command.
+ Prevented a file descriptor leak in touch(1) after futimens(2) failure.
+
Improved hardware support and driver bugfixes, including:
@@ -255,6 +344,27 @@
devices.
Fixed handling of interrupts shared between multiple swiic(4) devices.
+ Introduced iicmux(4), a driver that
+ switches between I2C busses connected to a single I2C controller by
+ using the pin muxing facilities of an SoC.
+ Introduced pcyrtc(4), a driver for
+ the NXP PCF85063A/TP RTC chips.
+ Fixed a panic when running utvfu(4) on xhci(4).
+ Added acpipci(4)
+ support for interrupts represented by ACPI PCI Interrupt Link Devices,
+ making PCI interrupts work on QEMU's SBSA target.
+ Added handling of multi-port controllers to uslcom(4).
+ Make com(4) attach over acpi(4) on amd64.
+ Added address locators for the ACPI "bus" and used these to fix the order of the com(4) devices to match the traditional order on the ISA bus.
+ Added Intel Jasper Lake to the azalia(4) audio driver.
+ Added Synopsys Designware UART support to com(4).
+ Fixed an issue where com(4) would attach for a disabled serial port leading to misdirection of the hardware variant and a subsequent hang when /etc/rc runs ttyflags(8) -a.
+ Fixed sdhc(4) for Jasper Lake eMMC.
+ Improved how quirks are handled on sdhc(4)-compatible drivers.
@@ -267,6 +377,13 @@
does so as well.
Added igc(4), a
driver for the Intel 2.5Gb Ethernet controllers.
+ Implemented em(4)
+ support for selecting SMGII or SerDes mode depending on the plugged-in
+ SFP transceiver and for reading out transceiver information via ifconfig(8).
+ Applied MP-safe changes from dwge(4) to dwxe(4).
@@ -318,8 +435,22 @@
Fixed "null node" panics in run(4).
Fixed "(null node)" panics on run(4).
Fixed iwn(4) with 4965 devices.
+ Disabled active scanning on iwm(4) 9260 and 9560 to prevent a device lockup.
+ Fixed monitor mode on iwm(4) and iwx(4).
+ Let iwx(4) and iwm(4) use per-Tx-queue
+ interface timers to ensure timeout if a particular Tx queue gets
+ stuck.
+ Disabled probe requests during scans in iwx(4) again, preventing
+ device timeouts for some devices.
+ Switched iwx(4) to new -67 firmware images.
+ Introduced mtw(4), a driver for MediaTek MT7601U wifi devices.
+ Made iwm(4) attach to PCI devices with product ID 0x31dc, part of the 9560 chip family.
+ Disabled minimum power consumption in bwfm(4) hostap mode, improving connection reliability when used as an access point.
+ Fixed wrong pointer assignment causing the driver to read block ack request information sent by firmware from the wrong offset in iwx(4).
+ Fixed and reenabled active scans on iwm(4) and iwx(4).
-
IEEE 802.11 wireless stack improvements and bugfixes:
@@ -329,6 +460,9 @@
Cached the old BSSID when roaming with iwm(4) so firmware commands can continue using it while roaming to a new AP.
Added support for 40MHz channels to net80211 RA.
Added monitoring of 20/40MHz channel width changes in beacons sent by our access point, notifying drivers when the channel width has changed.
+ Introduced an optional driver-specific bgscan_done() handler which allows the driver to take control of the roaming teardown sequence, ensuring that race conditions between firmware state and net80211 state are avoided.
+ Implemented bgscan_done() handlers for iwx(4) and iwm(4).
+ Taught the net80211 stack to remove corresponding frames from ic_pwrsaveq when a power-saving client decides to leave our hostap interface, preventing a panic.
@@ -337,6 +471,14 @@
- Fixed pfctl(8) $nr incorrect macro expansion.
- Added support for PPP IPCP extensions for DNS to sppp(4).
+
- Added display of DNS information from sppp(4) to ifconfig(8).
+
- Switched to calculating pppoe(4) session duration using system uptime rather than UTC.
+
- Made "set skip on ..." in pf.conf(5) dynamic, with
+ this, "set skip" can be used on interfaces that are not configured
+ yet.
+
- Fixed veb(4) vport handling to prevent improper drop of packets leaving a vport interface.
+
Installer and upgrade improvements:
@@ -353,6 +495,24 @@
OpenBSD installation and upgrade customization.
Corrected "!" escape handling in the installer when accepting WEP/WPA passphrase.
Made config(8) -e work with ramdisk kernels.
+ Made config(8) -c
+ cmdfile use lines from the command file for all input, not just
+ commands. This allows complex actions like changing device parameters.
+ Prevented a potential race which could make umount(8) fail spuriously
+ in the installer.
+ Returned to a shell-script based fw_update(8), written
+ to be usable by the install script, allowing earlier retrieval of
+ downloaded firmwares.
+ Stopped fw_update(8) from
+ downloading SHA256.sig when not needed, to allow installing local
+ files without network access.
+ Modified the installer to use fw_update(8) to install
+ non-free firmware files if present on the install media.
+ Made fw_update(8) re-download existing files with failed checksums.
@@ -365,34 +525,69 @@
Fixed a panic by prohibiting renames of tmpfs mount-points.
Fixed vi(1) use after free with unsaved buffer.
Disabled xterm(1) mouse tracking by default.
-
+ On arm64 architectures, used "rng-seed" and "kaslr-seed" properties from the device tree to mix extra entropy into the random pool.
+ Restricted usbhidctl(1) and usbhidaction(1) file
+ system access with unveil(2).
+ Updated libexpat to 2.4.4, fixing CVE-2022-23852 and CVE-2022-23990.
Routing daemons and other userland network improvements:
- - Modified syslog.conf(5) examples to use TLS rather than the plaintext protocols.
-
- Stopped ignoring carp(4) interfaces in dhcpleased(8).
-
- Fixed httpd(8) to respond with 400 Bad Request when a client sends header lines without a colon.
-
- Added protocol version checking to httpd(8).
-
- Fixed crashes in httpd(8).
+
+
- Implemented openrsync(1) --compare-dest, allowing specification of additional directories to check for files to be available.
- Implemented openrsync(1) --max-size and --min-size.
- Limited the number of openrsync(1) processes being spawned by rpki-client(8) to 16.
+
+
+
- Switched nsd(8) to enable default DNS cookies on, matching behavior as released in OpenBSD 7.0.
- Ensured enabled resolvers are honored by unwind(8) to keep unused forwarders disabled properly.
+
- Installed missing scope identifiers for IPv6 link-local addresses for unwind(8) and resolvd(8).
+
- Allowed interface names as scope-id in IPv6 link-local addresses in unbound(8).
+
+
+
- Fixed httpd(8) to respond with 400 Bad Request when a client sends header lines without a colon.
+
- Added protocol version checking to httpd(8).
+
- Fixed crashes in httpd(8).
- Annotated an httpd(8) 413 error with "request body too large" in the error log.
- Corrected httpd(8) version string checking, responding with 505 Version Not Supported rather than 400 Bad Request when the version format is incorrect.
- Stopped duplicating "Connection: close" headers in relayd(8), only adding it if it's not a websocket response.
- In httpd(8), stopped sending content alongside responses to HEAD requests.
-
- Switched nsd(8) to enable default DNS cookies on, matching behavior as released in OpenBSD 7.0.
- Added httpd(8) custom error page facility.
+
+
- Made iked.conf(5) proto config option accept a list to allow specifying multiple protocols for a single policy.
- Fixed broken key exchange negotiation with matching proposals in iked(8).
+
- Added ikectl(8) "show certinfo" to show trusted CAs and certificates.
+
- Added iked(8) -V to display the version.
+
- Fixed removal of SAs that could not be flushed with ipsecctl(8) -F.
+
- Fixed a bug where iked(8) sent zero-prefixed NAT-T messages on port 500, causing parsing errors.
+
- Changed isakmpd(8) to log a warning when proto is NULL rather than dereferencing it.
+
+
+
- Limited rpki-client(8) HTTP requests to 2GB of data.
- Published rpki-client 7.5.
- Limited the number of publication points under a given TAL in rpki-client(8).
+
- Introduced a validated cache which holds all the files successfully verified by rpki-client(8).
+
- Allowed rpki-client(8) to display more than one file in -f mode.
+
- Allowed rsync:// URIs as files in rpki-client(8) -f mode.
+
- Properly handled .mft files in rpki-client(8), preventing replay attacks using old but still valid files.
+
+
- Modified syslog.conf(5) examples to use TLS rather than the plaintext protocols.
+
- Stopped ignoring carp(4) interfaces in dhcpleased(8).
+
- Made the dhcpleased(8) host name DHCP option configurable.
+
- Prevented a crash in slaacd(8) due to updating an interface which no longer exists.
+
- Fix unveil(2) in ldapd(8), create permissions are required for databases.
+
- Made dhcpd(8) start listening on interface in 'down' state. Interfaces can come up later, at which point dhcpd(8) will start receiving packets.
+
- Added a basic printer for EAPOL packets to tcpdump(8).
+
tmux(1) improvements and bug fixes:
@@ -417,6 +612,8 @@
display it.
Added a cursor-colour option to tmux(1).
Added a cursor-style option to tmux(1).
+ Added a pane-border-format pane option to tmux(1).
+ Added attempts to turn on less-capable mouse modes when tmux(1) turns on more-capable ones, in case the terminal doesn't support the desired mode.