This URL: https://git.freebsd.catflap.wales/src/stable-15/raw-log-html/ _____________________________________________________________________________________________________________ Commit: eefc98f73a08b331ef77921268a99e285aa9ed52 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=eefc98f73a08b331ef77921268a99e285aa9ed52 Author: Roman Bogorodskiy (Fri 28 Aug 2026 17:43:26 BST) Committer: Roman Bogorodskiy (Tue 20 Oct 2026 16:55:05 BST) stand: userboot: improve userdisk error handling Currently, userdisk_init() iterates through disks and checks whether DIOCGSECTORSIZE and DIOCGMEDIASIZE ioctls are available for the device. If either ioctl fails, userdisk_init() returns ENXIO with ud_info only partially initialized. devinit() records the failure, but loader_main() ignores devinit()'s return value, so later code may access an uninitialized entry. In certain cases this code can still boot from a disk even if userdisk_init() returns ENXIO, for example, when the first of two disks is valid and the second errors out. To address this issue while not breaking the current behavior, do the following: - Zero-initialize the userdisk_info array and use a zero media size to mark disks that do not support the ioctls mentioned above or report an empty medium. - Update userdisk_print() not to print unusable disks. - Update userdisk_open() to return EIO for unusable disks. - Update extract_currdev() to pick the first usable disk instead of the first disk. Introduce userboot_disk_firstunit() for that. Additionally, reset counters on ud_info allocation failure to prevent accessing unallocated data. Reviewed by: jhb (previous version), markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59262 (cherry picked from commit 4445d039583a0a47fc335e0d34401581bcbc104e) M stand/userboot/userboot/libuserboot.h M stand/userboot/userboot/main.c M stand/userboot/userboot/userboot_disk.c _____________________________________________________________________________________________________________ Commit: 820804014074cdc4f56dca7a3966019b8aa172ae URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=820804014074cdc4f56dca7a3966019b8aa172ae Author: Kristof Provost (Tue 13 Oct 2026 13:40:58 BST) Committer: Kristof Provost (Tue 20 Oct 2026 14:53:41 BST) pf: first-match-wins for nat rules, even in anchors Ensure we stop evaluating nat rules if we find a match in a nat-anchor. PR: 299320 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=299320 ) MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit b5219c068fbc133dde91d5cf48423e34ce27bd4f) M sys/netpfil/pf/pf_lb.c M tests/sys/netpfil/pf/nat.sh _____________________________________________________________________________________________________________ Commit: b82b744b4ed3fb636f60a0154266a8665d46f265 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b82b744b4ed3fb636f60a0154266a8665d46f265 Author: Faraz Vahedi (Sun 13 Sep 2026 13:27:45 BST) Committer: Faraz Vahedi (Tue 20 Oct 2026 09:09:36 BST) libc: Preserve const qualifier on strchr(3), strrchr(3), and memchr(3) results Reviewed by: dteske, fuz Approved by: dteske (mentor), fuz (mentor) MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59612 (cherry picked from commit 73d3c964be93034daf26a55ebac38c2152769f74) M lib/libc/gen/getgrent.c M lib/libc/gen/syslog.c M lib/libc/iconv/bsd_iconv.c M lib/libc/iconv/citrus_prop.c M lib/libc/inet/inet_cidr_pton.c M lib/libc/nameser/ns_name.c M lib/libc/net/base64.c M lib/libc/net/getaddrinfo.c M lib/libc/net/rcmdsh.c M lib/libc/stdio/mktemp.c _____________________________________________________________________________________________________________ Commit: 13d25dc298793e333ca2efff85711b2406c09858 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=13d25dc298793e333ca2efff85711b2406c09858 Author: Faraz Vahedi (Sat 5 Sep 2026 11:41:22 BST) Committer: Faraz Vahedi (Tue 20 Oct 2026 09:09:36 BST) libc: Add WCHAR_WIDTH in as well Define __WCHAR_WIDTH in sys/_types.h and derive WCHAR_WIDTH from that, the same way as WCHAR_MIN and WCHAR_MAX, in both and as per C23 §7.31.1 and §7.22.3.4, respectively. Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59385 (cherry picked from commit 72ed6f9c9dc95124cd81158d1c4437484a1b951e) M include/wchar.h M sys/arm/include/_stdint.h M sys/arm64/include/_stdint.h M sys/powerpc/include/_stdint.h M sys/riscv/include/_stdint.h M sys/sys/_types.h M sys/sys/stdint.h M sys/x86/include/_stdint.h _____________________________________________________________________________________________________________ Commit: 6ab9d003a0adc7c5d0353ccabbede9912be4c612 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6ab9d003a0adc7c5d0353ccabbede9912be4c612 Author: Faraz Vahedi (Wed 2 Sep 2026 15:56:58 BST) Committer: Faraz Vahedi (Tue 20 Oct 2026 09:09:35 BST) libc: Add PRIb*, PRIB*, and SCNb* macros as per C23 Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59293 (cherry picked from commit ab420c44bc7c45bf344cb03b289e60109f57aaee) M sys/arm/include/_inttypes.h M sys/arm64/include/_inttypes.h M sys/powerpc/include/_inttypes.h M sys/riscv/include/_inttypes.h M sys/x86/include/_inttypes.h _____________________________________________________________________________________________________________ Commit: dca59708a0f2a61a97dbe842db19c5c04d28f20b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dca59708a0f2a61a97dbe842db19c5c04d28f20b Author: Faraz Vahedi (Mon 24 Aug 2026 14:18:55 BST) Committer: Faraz Vahedi (Tue 20 Oct 2026 09:09:34 BST) libc: Remove incorrectly defined __STDC_VERSION_STDBOOL_H__ C23 does not define __STDC_VERSION_STDBOOL_H__ for . Feature test macros of this form only apply to headers where the standard explicitly mandates one. Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59136 (cherry picked from commit 2712d1380fcd8dd61d043b2242f20767e8f2f347) M include/stdbool.h _____________________________________________________________________________________________________________ Commit: 8f766130607ea84c129862deeec414dc1ebe2451 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8f766130607ea84c129862deeec414dc1ebe2451 Author: Faraz Vahedi (Fri 14 Aug 2026 12:43:23 BST) Committer: Faraz Vahedi (Tue 20 Oct 2026 09:09:33 BST) libc: Add _PRINTF_NAN_LEN_MAX per C23 Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D58842 (cherry picked from commit 10d5a548596ce7c111ea4a463d3f7d5f0cb1ae4f) M include/stdio.h _____________________________________________________________________________________________________________ Commit: a2a0e5e0e38fa9791f2966e0430b8754530d6b72 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a2a0e5e0e38fa9791f2966e0430b8754530d6b72 Author: Kristof Provost (Mon 12 Oct 2026 13:25:07 BST) Committer: Kristof Provost (Tue 20 Oct 2026 08:22:50 BST) pf: check extension header length. pf_walk_header6() advances the packet offset for each IPv6 extension header. It was not checked that this does not exceed the packet length if no next header was processed. When used with af-to rules, this could trigger a panic: m_copydata: null mbuf. from Acts1631; OK henning@ sashan@ MFC after: 1 week Obtained from: OpenBSD, bluhm , 6d56112588 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit ccb19b359aae4b7e7315ad61d33d9a35d85849d1) M sys/netpfil/pf/pf.c _____________________________________________________________________________________________________________ Commit: 3cbfe09ea3a0ac063dbe00bb2756ea6386a68852 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3cbfe09ea3a0ac063dbe00bb2756ea6386a68852 Author: Kristof Provost (Mon 12 Oct 2026 13:28:22 BST) Committer: Kristof Provost (Tue 20 Oct 2026 08:22:50 BST) pf: check AH header length. pf_walk_header() advances the packet offset for each AH extension header. It was not checked that this does not exceed the packet length if no next header was processed. Fix it like in IPv6. OK henning@ sashan@ MFC after: 1 week Obtained from: OpenBSD, bluhm , fcd4e5522e Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit b4d2c9835c0edfddd1d6742afa86d4873ccfad16) M sys/netpfil/pf/pf.c _____________________________________________________________________________________________________________ Commit: 993f846e482a99085ee3507f03adea7b37dd7895 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=993f846e482a99085ee3507f03adea7b37dd7895 Author: Alan Cox (Sun 11 Oct 2026 19:13:25 BST) Committer: Alan Cox (Mon 19 Oct 2026 17:23:44 BST) arm64: Fix and rename midr_check_var_part_range() At the lowest and highest variants in the specified range, midr_check_var_part_range() was comparing the part number, rather than the revision, against the bounds. In other words, the "Y" in "rXpY" should be compared to CPU_REV() instead of CPU_PART(). Apply this correction, and rename the function to midr_check_var_rev_range() to better reflect the field that we are checking. (cherry picked from commit 39d6e2226484ca434c7d980eda4aa19ed0d62c9e) M sys/arm64/arm64/identcpu.c M sys/arm64/arm64/pmap.c M sys/arm64/include/cpu.h _____________________________________________________________________________________________________________ Commit: a32f681d8e8276a0a16897e066eddf8fe77ca0f8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a32f681d8e8276a0a16897e066eddf8fe77ca0f8 Author: Joel Bodenmann (Mon 12 Oct 2026 17:54:41 BST) Committer: Joel Bodenmann (Mon 19 Oct 2026 16:06:05 BST) u3g: Add ublox LARA-L6 modem MFC after: 3 days Approved by: adrian Reviewed by: kevans, adrian Differential Revision: https://reviews.freebsd.org/D60652 (cherry picked from commit a32c8dc6e8fd96e0d56e5add09638120e62d8418) M sys/dev/usb/serial/u3g.c _____________________________________________________________________________________________________________ Commit: 727f8d9a9f74be4bc8fcf0b0d387e43d6137876f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=727f8d9a9f74be4bc8fcf0b0d387e43d6137876f Author: Joel Bodenmann (Thu 8 Oct 2026 16:36:15 BST) Committer: Joel Bodenmann (Mon 19 Oct 2026 16:05:58 BST) usbdevs: Add ublox LARA-L6 The device has multiple PIDs as it supports different USB profiles. Approved by: adrian MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D60482 (cherry picked from commit 95432767ddc36fd1f6b0054e4eb1a849c73e7da6) M sys/dev/usb/usbdevs _____________________________________________________________________________________________________________ Commit: 7d98cf4cc6c8fa74a1c0fe650147068cd224e9f3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7d98cf4cc6c8fa74a1c0fe650147068cd224e9f3 Author: Renato Botelho (Wed 7 Oct 2026 12:32:45 BST) Committer: Renato Botelho (Mon 19 Oct 2026 14:23:54 BST) makefs/zfs: count "." in the link count and size of dataset roots The root directory of a dataset is populated from an fsnode that is the "." entry of the staging directory, and its children are the siblings of that node, so the loop that computes the link count and the size of the directory (which expects "." among the children, as the nodes of the other directories have) never counts it. The link count of the root of every dataset is one less than it should be (1 for an empty dataset instead of 2, 19 instead of 20 for a root with 18 subdirectories), and so is its size. fts(3) trusts the link count of the directories of ZFS when called with FTS_NOSTAT and FTS_PHYSICAL: it stops looking for subdirectories once it has seen as many as the link count says, and does not descend into the ones it did not look at. As a result find(1), and rm(1) when it does not need to stat the entries, silently skip directories of a pool made by makefs. On a root filesystem made by makefs, find / does not list /etc at all. Start the loop at the "." node itself for the roots of datasets, so that it is counted the same way as in every other directory. Add a test that checks the link counts and the sizes of the dataset roots and of the other directories, with nested datasets and a dataset whose mountpoint is not in the staging tree, and that find(1) sees the whole tree. Fixes: 240afd8c1fc ("makefs: Add ZFS support") MFC after: 1 week Approved by: markj Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D60439 (cherry picked from commit 81b5b2265d7734f9c4d4603031b3e8254c7e23d8) M usr.sbin/makefs/tests/makefs_zfs_tests.sh M usr.sbin/makefs/zfs/fs.c _____________________________________________________________________________________________________________ Commit: a57e6db04804eb369849d6ac47d50cb9271b6a64 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a57e6db04804eb369849d6ac47d50cb9271b6a64 Author: Xin LI (Mon 12 Oct 2026 08:51:43 BST) Committer: Xin LI (Mon 19 Oct 2026 02:22:59 BST) termcap: add missing capabilities to the xterm-ghostty entry (cherry picked from commit 3ceb5f150bc121f5e6a3e0cc8b289279338405a1) M share/termcap/termcap _____________________________________________________________________________________________________________ Commit: 976de6053426249753a4a741dbd382f63cd7daf6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=976de6053426249753a4a741dbd382f63cd7daf6 Author: Alan Cox (Sat 15 Aug 2026 18:43:43 BST) Committer: Alan Cox (Sun 18 Oct 2026 19:38:32 BST) arm64 pmap: optimize TLB management by pmap_update_entry() To date, pmap_update_entry() has unconditionally passed false as final_only to pmap_s1_invalidate_range(). Passing false means that we invalidate the intermediate "page walk cache" entries in the TLB as well as the leaf that is being replaced. However, invalidating intermediate entries is only necessary when doing a superpage promotion that replaces a pointer to a page table page by a large page mapping. (cherry picked from commit b2e6b6545ee6377a1c8bc2b0a5bcc4cb605a8283) M sys/arm64/arm64/pmap.c _____________________________________________________________________________________________________________ Commit: dbec277b5f70339a24e54376eef91953e021957c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dbec277b5f70339a24e54376eef91953e021957c Author: Alan Cox (Sat 29 Aug 2026 08:08:01 BST) Committer: Alan Cox (Sun 18 Oct 2026 17:48:58 BST) arm64 pmap: correct the condition for flushing the icache Whenever we create a user-space mapping, we always set ATTR_S1_PXN in the PTE, which blocks execution of user-space code while running in kernel mode. However, when seeking to determine whether we need to perform an icache flush before installing the new PTE, we test whether sometimes the old PTE or other times the new PTE has ATTR_S1_XN set. The trouble is that ATTR_S1_XN is defined as the bitwise OR of ATTR_S1_PXN and ATTR_S1_UXN, and so the test for whether ATTR_S1_XN is set is satisfied if either of its constituent bits is set, i.e., we write (l3e & ATTR_S1_XN) != 0. Consequently, the test is always true. In practice, I believe that the ill effects of this bug are limited: In pmap_enter(), in rare circumstances, e.g., wiring a code page, an unnecessary icache flush will be performed. In pmap_enter_l2() and pmap_enter_l3c(), no icache flush will be performed. However, typically an icache flush would have already been performed on each of the constituent base pages. (cherry picked from commit 57407179be431dbe567de083aab5ce152163f4d3) M sys/arm64/arm64/pmap.c _____________________________________________________________________________________________________________ Commit: 0fcd6a1c6bbe660ff75d87aebf7e7dcc40929ea3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0fcd6a1c6bbe660ff75d87aebf7e7dcc40929ea3 Author: Christos Margiolis (Tue 22 Sep 2026 17:11:23 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:49 BST) sound: Use uint8_t instead of legacy u_char No functional change intended. MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit 2793e5498dd9bceada62ebe38967d89180bd15f6) M sys/dev/sound/macio/onyx.c M sys/dev/sound/macio/snapper.c M sys/dev/sound/macio/tumbler.c M sys/dev/sound/pci/hda/hdaa.h M sys/dev/sound/pci/neomagic-coeff.h M sys/dev/sound/pci/solo.c M sys/dev/sound/pcm/buffer.c _____________________________________________________________________________________________________________ Commit: 747ee16a11ade01a9d07d9dc6955c61dd0fcd258 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=747ee16a11ade01a9d07d9dc6955c61dd0fcd258 Author: Christos Margiolis (Fri 18 Sep 2026 19:18:20 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:49 BST) sound: Lock around mixer_set*() in mixer_init() for consistency Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59110 (cherry picked from commit 47cf9dc7861371edcfdb85a38e2c240f430ccb28) M sys/dev/sound/pcm/mixer.c _____________________________________________________________________________________________________________ Commit: 4f4531be5e97530bbbc610d6b55a80f2831eaca3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4f4531be5e97530bbbc610d6b55a80f2831eaca3 Author: Christos Margiolis (Fri 18 Sep 2026 19:18:13 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:49 BST) sound: Remove unncessary locking in sysctl_hw_snd_hwvol_mixer() The locking around strlcpy() was because of m->hwvol_mixer, but this is just an int, so we don't need to lock in this case. Instead lock only when m->hwvol_mixer is written. While here, add parentheses around the returns. Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59109 (cherry picked from commit 044ef293a8bbd057de3fb13ec97d3d0ee16462e4) M sys/dev/sound/pcm/mixer.c _____________________________________________________________________________________________________________ Commit: 6d1ff70551bf910dd82fd021e468a8d0265386d6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6d1ff70551bf910dd82fd021e468a8d0265386d6 Author: Christos Margiolis (Fri 18 Sep 2026 19:18:10 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:49 BST) sound: Improve some mixer return values and their handling Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59078 (cherry picked from commit db62d784f02a913c7fca612b04585c633ba8277c) M sys/dev/sound/pcm/mixer.c _____________________________________________________________________________________________________________ Commit: 332d81cd2f0c21522151e82d0aafa44a8ffdf797 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=332d81cd2f0c21522151e82d0aafa44a8ffdf797 Author: Christos Margiolis (Fri 18 Sep 2026 19:18:01 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:49 BST) sound: Reuse mixer_delete() in mixer_uninit() Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59077 (cherry picked from commit 6c735475aeefc626962818c0ab8749aaeb6de9a4) M sys/dev/sound/pcm/mixer.c _____________________________________________________________________________________________________________ Commit: 03b8055094e8d56beb5750fb35b61410565d3701 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=03b8055094e8d56beb5750fb35b61410565d3701 Author: Christos Margiolis (Fri 18 Sep 2026 19:16:40 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:49 BST) sound: Do not set a recording source in mixer_uninit() We currently set the recording source to SOUND_MIXER_MIC during mixer deletion. Apart from the fact that this control might not be present on all devices, it is unnecessary to do that, plus we already set all the volumes to 0 in the mixer_set() call above. Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59076 (cherry picked from commit 03b59d2e7df263ea5a8904e5593d14f6e3e0fbd8) M sys/dev/sound/pcm/mixer.c _____________________________________________________________________________________________________________ Commit: de7cd7fe9c910be9dd1ad6580a080cfe59dcd2cc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=de7cd7fe9c910be9dd1ad6580a080cfe59dcd2cc Author: Christos Margiolis (Fri 18 Sep 2026 19:16:03 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:49 BST) sound: Retire mixer_hwvol locked variants Prior to 9a00e0b8ca56 ("snd_uaudio: Do not use snd_mixer->lock as mixer_lock"), there was a need for mixer_hwvol_mute_locked() and mixer_hwvol_step_locked(), because the unlocked variants would acquire the lock, but uaudio_hid_rx_callback() would also hold the lock, so this was a measure to avoid recursion on snd_mixer->lock. Now that snd_uaudio(4) has a private mixer lock, the locked variants are not only unnecessary, but wrong, because we now lock the private lock and not the snd_mixer one, which is what mixer_hwvol_mute_locked() and mixer_hwvol_step_locked() expect. Retire the locked variants and call the regular functions instead. The unlocked variants take the mixer lock, which is now the PCM lock, and reach uaudio_mixer_ctl_set(), which takes mixer_lock. Calling them straight from uaudio_hid_rx_callback() would therefore take mixer_lock and the PCM lock in the opposite order to the mixer ioctl path, so record what the HID report asked for and perform the volume change at the end of the callback, with mixer_lock dropped. The USB stack allows a callback to drop its transfer mutex (see usbdi.9). Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59075 (cherry picked from commit 9548bfa342a71f1ca0ad953bf323086e84a395c3) M sys/dev/sound/pcm/mixer.c M sys/dev/sound/pcm/mixer.h M sys/dev/sound/usb/uaudio.c _____________________________________________________________________________________________________________ Commit: 3e19ea7e0500c7cd60227461c2bc3454f11cc119 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3e19ea7e0500c7cd60227461c2bc3454f11cc119 Author: Christos Margiolis (Fri 18 Sep 2026 19:15:50 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:49 BST) sound: Use snddev_info->lock in place of snd_mixer->lock snd_mixer and snddev_info have a 1:1 relationship. Now that snd_mixer is embedded into snddev_info, it makes even more sense for both to share the PCM lock. The only exceptions to this are MIXER_TYPE_SECONDARY mixers, which still retain a private lock (snd_mixer->priv_lock), because they are attached to the device driver, and not snddev_info. Only snd_emu10kx(4) uses a secondary mixer. A side-effect of this is that the MIXER_SET_LOCK()/MIXER_SET_UNLOCK() mess goes away. These macros were used in the mixer_set*() functions to drop the mixer lock if the driver is Giant-locked and the function can sleep inside MIXER_SET*() methods, and to avoid an LOR before locking PCM to guard channel list traversal. Since mixers now use the PCM lock, drop the channel lock in chn_syncstate() before calling mix_get(), to avoid an LOR. These lines were actually already commented out for years. Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59074 (cherry picked from commit 1a31ab15e8b342b660175e48b21f1c5d0b82ac50) M sys/dev/sound/pcm/channel.c M sys/dev/sound/pcm/mixer.c M sys/dev/sound/pcm/mixer.h _____________________________________________________________________________________________________________ Commit: 7ca2e1c92a5068778f0d4d132f9edfa7ad312f91 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7ca2e1c92a5068778f0d4d132f9edfa7ad312f91 Author: Christos Margiolis (Fri 18 Sep 2026 19:14:29 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:48 BST) sound: Defer macio codec volume writes to a task tumbler(4), snapper(4) and onyx(4) write the volume over I2C, and iicbus_transfer() sleeps. This is why mixer_set() drops the mixer lock around MIXER_SET() for non-MPSAFE drivers, relying on Giant to keep them serialized. Store the volume in the softc and let a task do the I2C write with no lock held, so that the mixer method does not sleep at all. The lock dropping for non-MPSAFE drivers will be removed in a follow-up patch. Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59073 (cherry picked from commit b9761547077fb94e12c0bfa81f3b8b2b2df3c0bb) M sys/dev/sound/macio/onyx.c M sys/dev/sound/macio/snapper.c M sys/dev/sound/macio/tumbler.c _____________________________________________________________________________________________________________ Commit: 017cf4b7daf6d8bd2c8e70addb2684340161e0a5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=017cf4b7daf6d8bd2c8e70addb2684340161e0a5 Author: Christos Margiolis (Fri 18 Sep 2026 19:13:32 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:48 BST) sound: Embed mixer cdev in snd_mixer The mixer cdev belongs to the mixer, not to the PCM device, so move it from snddev_info->mixer_dev into a new snd_mixer->cdev field. snd_mixer itself is now included in snddev_info. Also add a MIXER_REGISTERED() macro similar to PCM_REGISTERED(). Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59071 (cherry picked from commit a614c07ad4520c072f58aebee54d16d9b72837f5) M sys/dev/sound/pci/es137x.c M sys/dev/sound/pcm/dsp.c M sys/dev/sound/pcm/mixer.c M sys/dev/sound/pcm/mixer.h M sys/dev/sound/pcm/sound.h _____________________________________________________________________________________________________________ Commit: 2b61245f5a169db8c67c198f996f03710c1e11bc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2b61245f5a169db8c67c198f996f03710c1e11bc Author: Christos Margiolis (Fri 18 Sep 2026 19:12:55 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:48 BST) sound: Simplify how snd_mixer is fetched and how the cdev is created The primary snd_mixer was reached by accessing the mixer cdev's si_drv1. This is tedious and ugly, so store the mixer in snddev_info->mixer and access it directly. Additionally, create the cdev in a new mixer_make_dev() function (in similar fashion to dsp_make_dev()) in pcm_register(), when everything is initialized, instead of risking potential races because mixer_init() (called before pcm_register()) used to create the cdev. Also add some NULL checks in pcm_register(), to avoid creating a mixer cdev when the driver (e.g., fdt/audio_soc.c) does not create a mixer in the first place, and similarly in pcm_unregister(). Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59070 (cherry picked from commit 221babdf9feb7e1c1c001a4be735400ca6fb12cb) M sys/dev/sound/pci/es137x.c M sys/dev/sound/pcm/channel.c M sys/dev/sound/pcm/dsp.c M sys/dev/sound/pcm/feeder_volume.c M sys/dev/sound/pcm/mixer.c M sys/dev/sound/pcm/mixer.h M sys/dev/sound/pcm/sound.c M sys/dev/sound/pcm/sound.h _____________________________________________________________________________________________________________ Commit: 4798ab5050c264a5b3a8cd7285d84fb31e84f946 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4798ab5050c264a5b3a8cd7285d84fb31e84f946 Author: Christos Margiolis (Fri 18 Sep 2026 19:12:42 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:47 BST) sound: Standardize mixer_init() call order Device drivers call mixer_init() in a non-standard order - some before pcm_init(), and some after pcm_register(). However, both approaches are potentially risky, and logically weak, since pcm_register() is supposed to be the function that finalizes sound(4) attach. Standardize the call ordering by moving all mixer_init() calls after pcm_init(). This is also necessary for a follow-up patch, which expects pcm_init() to have run first and initialized the PCM lock. Sponsored by: The FreeBSD Foundation MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D59069 (cherry picked from commit 13fcc9caaf968083254b92546e21dedb322a920b) M sys/arm/allwinner/a10_codec.c M sys/arm/broadcom/bcm2835/bcm2835_audio.c M sys/arm/freescale/imx/imx6_ssi.c M sys/arm/freescale/vybrid/vf_sai.c M sys/dev/sound/dummy.c M sys/dev/sound/fdt/audio_soc.c M sys/dev/sound/macio/aoa.c M sys/dev/sound/macio/aoa.h M sys/dev/sound/macio/davbus.c M sys/dev/sound/macio/i2s.c M sys/dev/sound/pci/als4000.c M sys/dev/sound/pci/atiixp.c M sys/dev/sound/pci/cmi.c M sys/dev/sound/pci/cs4281.c M sys/dev/sound/pci/csapcm.c M sys/dev/sound/pci/emu10k1.c M sys/dev/sound/pci/emu10kx-pcm.c M sys/dev/sound/pci/envy24.c M sys/dev/sound/pci/envy24ht.c M sys/dev/sound/pci/es137x.c M sys/dev/sound/pci/fm801.c M sys/dev/sound/pci/hda/hdaa.c M sys/dev/sound/pci/hdsp-pcm.c M sys/dev/sound/pci/hdspe-pcm.c M sys/dev/sound/pci/ich.c M sys/dev/sound/pci/maestro3.c M sys/dev/sound/pci/neomagic.c M sys/dev/sound/pci/solo.c M sys/dev/sound/pci/t4dwave.c M sys/dev/sound/pci/via8233.c M sys/dev/sound/pci/via82c686.c M sys/dev/sound/pci/vibes.c M sys/dev/sound/usb/uaudio.c _____________________________________________________________________________________________________________ Commit: c712a039e44d5a70467c9cb3de184e277694b791 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c712a039e44d5a70467c9cb3de184e277694b791 Author: Kyle Evans (Wed 26 Aug 2026 15:34:47 BST) Committer: Christos Margiolis (Sun 18 Oct 2026 09:10:07 BST) snd_uaudio: drop the default monitor level to 10% As noted in the comment, some headsets with a hardware sidetone are incredibly sensitive and emit immediate feedback upon attach with the current system-wide default of 75%. Drop it down just for snd_uaudio(4) to avoid incredibly unpleasant surprises. MFC after: 3 days Reviewed by: christos Differential Revision: https://reviews.freebsd.org/D59199 (cherry picked from commit c3c6a6c7825ccc744afddba692820296f72ea53f) M sys/dev/sound/usb/uaudio.c _____________________________________________________________________________________________________________ Commit: 3720eae2ba39d7a4c76997fed0255bfa7cd8800c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3720eae2ba39d7a4c76997fed0255bfa7cd8800c Author: Colin Percival (Sat 3 Oct 2026 17:42:07 BST) Committer: Colin Percival (Sat 17 Oct 2026 18:02:27 BST) EC2: Pass --vmdk to bsdec2-image-upload if needed Starting with version 1.5.0, bsdec2-image-upload supports uploading stream-optimized VMDK files. If we build images in that format, we need to upload them appropriately. MFC after: 2 weeks Sponsored by: Amazon (cherry picked from commit 65840afc88553f89c051b96b081061a532cb7df3) M release/Makefile.ec2 _____________________________________________________________________________________________________________ Commit: bce513de1c86b1cdf80f5c24593f16d0834eb869 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bce513de1c86b1cdf80f5c24593f16d0834eb869 Author: Colin Percival (Tue 29 Sep 2026 20:58:04 BST) Committer: Colin Percival (Sat 17 Oct 2026 18:02:27 BST) mkimg: Add tests for vmdks format This is the 'stream-optimized' version of the VMDK format. MFC after: 2 weeks Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D60154 (cherry picked from commit 65b872380ed7f7900fc581d482c5586eeca9e184) A usr.bin/mkimg/tests/img-1x1-4096-apm.vmdks.hex A usr.bin/mkimg/tests/img-1x1-4096-bsd.vmdks.hex A usr.bin/mkimg/tests/img-1x1-4096-ebr.vmdks.hex A usr.bin/mkimg/tests/img-1x1-4096-gpt.vmdks.hex A usr.bin/mkimg/tests/img-1x1-4096-mbr.vmdks.hex A usr.bin/mkimg/tests/img-1x1-512-apm.vmdks.hex A usr.bin/mkimg/tests/img-1x1-512-bsd.vmdks.hex A usr.bin/mkimg/tests/img-1x1-512-ebr.vmdks.hex A usr.bin/mkimg/tests/img-1x1-512-gpt.vmdks.hex A usr.bin/mkimg/tests/img-1x1-512-mbr.vmdks.hex A usr.bin/mkimg/tests/img-63x255-4096-apm.vmdks.hex A usr.bin/mkimg/tests/img-63x255-4096-bsd.vmdks.hex A usr.bin/mkimg/tests/img-63x255-4096-ebr.vmdks.hex A usr.bin/mkimg/tests/img-63x255-4096-gpt.vmdks.hex A usr.bin/mkimg/tests/img-63x255-4096-mbr.vmdks.hex A usr.bin/mkimg/tests/img-63x255-512-apm.vmdks.hex A usr.bin/mkimg/tests/img-63x255-512-bsd.vmdks.hex A usr.bin/mkimg/tests/img-63x255-512-ebr.vmdks.hex A usr.bin/mkimg/tests/img-63x255-512-gpt.vmdks.hex A usr.bin/mkimg/tests/img-63x255-512-mbr.vmdks.hex M usr.bin/mkimg/tests/mkimg_test.sh _____________________________________________________________________________________________________________ Commit: aa59f16dae9ce8166a2b11160af08c6fa099e79e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=aa59f16dae9ce8166a2b11160af08c6fa099e79e Author: Colin Percival (Tue 29 Sep 2026 20:44:41 BST) Committer: Colin Percival (Sat 17 Oct 2026 18:02:27 BST) __FreeBSD_version: Bump for mkimg -f vmdks Also, adjust bootstrap tools code in Makefile.inc1 to reflect this; in addition to rebuilding mkimg if it is out of date, we now need to build libz, which was not previously needed by mkimg. Reviewed by: kevans MFC after: 2 weeks Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D60153 X-Cherry-Pick: Logic in Makefile.inc1 was adjusted for new __FreeBSD_version (cherry picked from commit a68ba2d2ce55f7c76174239c1f678379caec5348) M Makefile.inc1 M sys/sys/param.h _____________________________________________________________________________________________________________ Commit: dad0a3785b9863cfc39e8219761a3a342a8997dd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dad0a3785b9863cfc39e8219761a3a342a8997dd Author: Colin Percival (Tue 29 Sep 2026 20:44:01 BST) Committer: Colin Percival (Sat 17 Oct 2026 18:02:26 BST) mkimg.1: Document new vmdks format Reviewed by: ziaee Co-authored-by: Claude Opus 5.5 MFC after: 2 weeks Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D60152 (cherry picked from commit 88017d32745ef24d662db826fe475d8a20d290a6) M usr.bin/mkimg/mkimg.1 _____________________________________________________________________________________________________________ Commit: 94deb9c1c6bbf8a469a686ca261962ecc2b948cd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=94deb9c1c6bbf8a469a686ca261962ecc2b948cd Author: Colin Percival (Tue 29 Sep 2026 20:29:22 BST) Committer: Colin Percival (Sat 17 Oct 2026 18:02:26 BST) mkimg: Add support for stream-optimized VMDK FreeBSD VM/cloud images tend to be highly compressible: The generic VM images compress roughly 3.5:1, and cloud images typically even more since they have significant unused space in their virtual disks. This generally doesn't matter for users who can download compressed release images and extract them locally, but for EC2 in particular relying on uncompressed image formats is painful: We now upload over 500 GB/week to AWS. This commit adds the "stream-optimized" version of the VMDK format, which compresses each 64 kB "grain" individually (and omits grains which are all zeroes). Compared to uncompressed formats, this can produce much smaller images; experiments indicate that using this format for EC2 image uploads will reduce the weekly traffic to under 100 GB/week. Co-authored-by: Claude Opus 5.5 MFC after: 2 weeks Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D60151 (cherry picked from commit 9a0b9a23e0bb691034a019edea756377509d0a98) M usr.bin/mkimg/Makefile M usr.bin/mkimg/vmdk.c _____________________________________________________________________________________________________________ Commit: 646efd646bce9d1dcc8cb86355d7b1d54405be23 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=646efd646bce9d1dcc8cb86355d7b1d54405be23 Author: Colin Percival (Sat 26 Sep 2026 17:32:15 BST) Committer: Colin Percival (Sat 17 Oct 2026 18:02:26 BST) mkimg: Make vmdk's desc_fmt slightly more generic This will allow it to be reused in upcoming work. Suggested by: Claude Opus 5.5 MFC after: 2 weeks Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D60150 (cherry picked from commit 498276b487c838afa2b3e4df322c43141788ba20) M usr.bin/mkimg/vmdk.c _____________________________________________________________________________________________________________ Commit: 207d505b3222e751b167c66c2049f785f8d26ac8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=207d505b3222e751b167c66c2049f785f8d26ac8 Author: ChrisKom04 (Sun 13 Jul 2025 16:46:46 BST) Committer: Colin Percival (Sat 17 Oct 2026 18:02:26 BST) mkimg: Add image_buffer_region This is like image_copyout_region, but copies into a buffer rather than writing out to a file; it will be used by future support for compressed images (and potentially other circumstances where image data must be manipulated before being written out to disk). Reviewed by: jrm No objection from: Christos Komis (author) MFC after: 2 weeks Sponsored by: Google LLC (GSoC 2025) Differential Revision: https://reviews.freebsd.org/D60149 (cherry picked from commit 84a3e29c72030dab16b4dc82d601d0af5da6a18c) M usr.bin/mkimg/image.c M usr.bin/mkimg/image.h _____________________________________________________________________________________________________________ Commit: 2c085d5bbdff38e0d237913158c04681de18e35e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2c085d5bbdff38e0d237913158c04681de18e35e Author: Colin Percival (Sat 26 Sep 2026 01:42:40 BST) Committer: Colin Percival (Sat 17 Oct 2026 18:02:26 BST) mkimg: Avoid leaking a page of mmap The image_file_map function adjusts the provided file offset to be page-aligned, with a resulting increase in the size of the mapped region; the increased size needs to be used when unmapping as well. Reported by: Claude Opus 5.5 Fixes: baf4abfc39b2 ("Allow building mkimg as cross-tool") MFC after: 2 weeks Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D60148 (cherry picked from commit 434819b4fec5e508bdfe72f91e73402e9c2fca22) M usr.bin/mkimg/image.c _____________________________________________________________________________________________________________ Commit: 4e9d2e743f9f266a63dc8d43fd3022959d2537b1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4e9d2e743f9f266a63dc8d43fd3022959d2537b1 Author: Colin Percival (Sat 26 Sep 2026 00:46:07 BST) Committer: Colin Percival (Sat 17 Oct 2026 18:02:26 BST) mkimg: Check for realloc failure If realloc fails, clean up and return ENOMEM; don't just copy data into NULL. Reviewed by: emaste Reported by: Claude Opus 5.5 MFC after: 2 weeks Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D60147 (cherry picked from commit 1a0523197c5c16ce7bcb79d16c6bf8945258b428) M usr.bin/mkimg/vmdk.c _____________________________________________________________________________________________________________ Commit: c54ffb070c1aa072e4eed86548aef76887ef888d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c54ffb070c1aa072e4eed86548aef76887ef888d Author: Andrew Turner (Thu 11 Sep 2025 08:22:38 BST) Committer: John Baldwin (Sat 17 Oct 2026 16:36:08 BST) .github: Update to use llvm 15 This is the latest supported version in Ubuntu 22.04 Reviewed by: vexeduxr, imp, emaste Sponsored by: Arm Ltd Pull Request: https://github.com/freebsd/freebsd-src/pull/1862 (cherry picked from commit cf583997282f962d9e8bf478667d5087f7c1f2da) M .github/workflows/cross-bootstrap-tools.yml _____________________________________________________________________________________________________________ Commit: d526521ef519b15bc5f4730d73023c9748082993 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d526521ef519b15bc5f4730d73023c9748082993 Author: Dimitry Andric (Sat 10 Oct 2026 22:47:47 BST) Committer: Dimitry Andric (Sat 17 Oct 2026 11:21:07 BST) Merge commit a5fa4dba6e2e from llvm-project (by PiJoules): [compiler-rt] Add interceptors for free_[aligned_]sized for asan+hwasan (#189109) This avoids a jemalloc assertion when running sanitized applications against glib, which uses free_sized(3). PR: 298943 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298943 ) MFC after: 1 week (cherry picked from commit a3fbf20c0558ee3c2b88adc0c944e66d074cab7b) M contrib/llvm-project/compiler-rt/lib/asan/asan_allocator.cpp M contrib/llvm-project/compiler-rt/lib/asan/asan_allocator.h M contrib/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp M contrib/llvm-project/compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp _____________________________________________________________________________________________________________ Commit: 4192a88ff52178708381829f3fefd5d5485ff262 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4192a88ff52178708381829f3fefd5d5485ff262 Author: Dimitry Andric (Sat 10 Oct 2026 22:44:49 BST) Committer: Dimitry Andric (Sat 17 Oct 2026 11:21:07 BST) Merge commit 681c2ee4dfbf from llvm-project (by Justin King): asan: refactor interceptor allocation/deallocation functions (#145087) Do some refactoring to allocation/deallocation interceptors. Expose explicit per-alloc_type functions and stop accepting explicit AllocType. This ensures we do not accidentally mix. NOTE: This change rejects attempts to call `operator new(, static_cast(0))`. For https://github.com/llvm/llvm-project/issues/144435 Signed-off-by: Justin King This a prerequisite for adding sanitizer interceptors for free_sized(3) and free_aligned_sized(3). PR: 298943 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298943 ) MFC after: 1 week (cherry picked from commit 6b0f64133cd930fec8971aa85f4ef36a67b8334f) M contrib/llvm-project/compiler-rt/lib/asan/asan_allocator.cpp M contrib/llvm-project/compiler-rt/lib/asan/asan_allocator.h M contrib/llvm-project/compiler-rt/lib/asan/asan_mac.cpp M contrib/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp M contrib/llvm-project/compiler-rt/lib/asan/asan_malloc_mac.cpp M contrib/llvm-project/compiler-rt/lib/asan/asan_malloc_win.cpp M contrib/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp _____________________________________________________________________________________________________________ Commit: 37eb7f26891b9c51abdb55c46ac284ed0a5de927 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=37eb7f26891b9c51abdb55c46ac284ed0a5de927 Author: Dimitry Andric (Sat 10 Oct 2026 22:41:52 BST) Committer: Dimitry Andric (Sat 17 Oct 2026 11:21:07 BST) compiler-rt: enable use of .preinit_array after ef758b59a44e After base ef758b59a44e6b5b2d2dc178b97c01cde1b34570 we can enable usage of .preinit_array in compiler-rt's sanitizers. The comment that stated "On FreeBSD, .preinit_array functions are called with rtld_bind_lock writer lock held. It will lead to dead lock ..." can also be removed. PR: 298943 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298943 ) MFC after: 1 week (cherry picked from commit 000856156745f1a9a05705f8a499c0fd84f183ca) M contrib/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h _____________________________________________________________________________________________________________ Commit: afea1a2429bf15ced38993c00cdd5da344ac46e4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=afea1a2429bf15ced38993c00cdd5da344ac46e4 Author: Konstantin Belousov (Sat 10 Oct 2026 16:05:55 BST) Committer: Konstantin Belousov (Sat 17 Oct 2026 01:26:18 BST) rtld: release rtld_bind_lock around calls to .preinit_array initializers PR: 298943 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298943 ) (cherry picked from commit ef758b59a44e6b5b2d2dc178b97c01cde1b34570) M libexec/rtld-elf/rtld.c _____________________________________________________________________________________________________________ Commit: 03d26200a599dfab5dfe4a1b5f1d2356d6210ef7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=03d26200a599dfab5dfe4a1b5f1d2356d6210ef7 Author: Xin LI (Tue 13 Oct 2026 06:49:35 BST) Committer: Xin LI (Fri 16 Oct 2026 04:44:46 BST) MFC: MFV: zlib: Fix buffer overflow bug in non-blocking gzwrite. DIfferential revision: https://reviews.freebsd.org/D60695 (cherry picked from commit 7fe1d8abad3f55f127634c1ada7718bc1982089e) M sys/contrib/zlib/gzwrite.c _____________________________________________________________________________________________________________ Commit: ea13f1826da24b26065ef06c74bc48de72f1e33a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ea13f1826da24b26065ef06c74bc48de72f1e33a Author: Mateusz Piotrowski <0mp@FreeBSD.org> (Tue 6 Oct 2026 15:02:42 BST) Committer: Mateusz Piotrowski <0mp@FreeBSD.org> (Thu 15 Oct 2026 20:22:53 BST) dwatch(1): Use mdo(1) instead of sudo(8) when configured Reviewed by: dteske, olce Approved by: christos (mentor) MFC after: 1 week Sponsored by: fme AG Differential Revision: https://reviews.freebsd.org/D60408 (cherry picked from commit b6a573aa771e4a4b239a7bfeb074d1d25e811c1b) M cddl/usr.sbin/dwatch/dwatch M cddl/usr.sbin/dwatch/dwatch.1 _____________________________________________________________________________________________________________ Commit: a045cfb0c45d63f954423eaa0c76af5afe59b4ad URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a045cfb0c45d63f954423eaa0c76af5afe59b4ad Author: Christos Margiolis (Thu 8 Oct 2026 14:11:21 BST) Committer: Christos Margiolis (Thu 15 Oct 2026 10:21:17 BST) sound: Remove obsolete comment from sound.h MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit 20381bce4b63975494a2f4bc84257f6932e6d379) M sys/dev/sound/pcm/sound.h _____________________________________________________________________________________________________________ Commit: 6db6755f742b73470d795c96f4343f7594240d87 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6db6755f742b73470d795c96f4343f7594240d87 Author: Mateusz Piotrowski <0mp@FreeBSD.org> (Wed 7 Oct 2026 15:11:22 BST) Committer: Mateusz Piotrowski <0mp@FreeBSD.org> (Thu 15 Oct 2026 10:00:28 BST) ports.7: Document how to use mdo(1) for SU_CMD Reviewed by: olce MFC after: 1 week Sponsored by: fme AG Differential Revision: https://reviews.freebsd.org/D60443 (cherry picked from commit 8eb863097f264794eccd8ef7cdaf95aa80260353) M share/man/man7/ports.7 _____________________________________________________________________________________________________________ Commit: ceaf30c92ed7a44f532e24742ed08bcf730c8ac1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ceaf30c92ed7a44f532e24742ed08bcf730c8ac1 Author: Piotr Kubaj (Mon 28 Sep 2026 09:43:35 BST) Committer: Piotr Kubaj (Thu 15 Oct 2026 08:40:39 BST) virtio_gpu: use an X8R8G8B8 resource on big-endian guests The virtio-gpu resource formats are defined by byte order in memory, while vt(4) and the X server (through vt_fb and the fb mmap) write native 32-bit 0x00RRGGBB pixels into the shadow framebuffer. On a big-endian guest such as powerpc64 those pixels land in memory as 00 RR GG BB, which the host interprets under B8G8R8X8 with red and blue swapped and the padding byte taken as blue: white renders yellow and blue renders black. Request X8R8G8B8 on big-endian guests instead, which is also what the Linux driver does (DRM_FORMAT_HOST_XRGB8888). Reproduced with a colour test pattern on a powerpc64 QEMU pseries guest using the identically coded out-of-tree fork of this driver (graphics/virtio-gpu-qemu-kmod); little-endian guests are unchanged. Differential Revision: https://reviews.freebsd.org/D60085 Approved by: jhibbits MFC after: 1 week (cherry picked from commit 7cf02164a517824c07faed91c009be90f2f17ec0) M sys/dev/virtio/gpu/virtio_gpu.c _____________________________________________________________________________________________________________ Commit: e4a203a17fde3ccafd99316932d29224fc5cd3c4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e4a203a17fde3ccafd99316932d29224fc5cd3c4 Author: Bren (Thu 8 Oct 2026 20:03:51 BST) Committer: Rick Macklem (Thu 15 Oct 2026 02:20:14 BST) nfs_nfsdsocket.c: Fix "nfsstats -d" for ERELOOKUP When ERELOOKLUP is returned by a file operation (always vop_lookup?) the operation is retried without doing nfsrv_statsend(). This patch fixes this problem, The only effect of the bug was bogus "nfsstat -d" output. PR: 298534 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298534 ) (cherry picked from commit 9a237074d380233e93a17ddee6b155cc2f90ee96) M sys/fs/nfsserver/nfs_nfsdsocket.c _____________________________________________________________________________________________________________ Commit: 169e254b8440c010139b1351f46b70bc7ad3d5cb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=169e254b8440c010139b1351f46b70bc7ad3d5cb Author: Alan Somers (Tue 15 Sep 2026 22:23:50 BST) Committer: Alan Somers (Wed 14 Oct 2026 20:03:35 BST) fusefs: fix a deadlock caused by daemons that never initialize If a daemon never responds to FUSE_INIT, but some process attempts to access the mountpoint, and a different process (possibly the daemon itself) attempts to unmount, a deadlock would result. Fix this bug by blocking any thread that enters fuse_vfsop_root until the daemon responds to FUSE_INIT or it times out. That will block any thread attempting to lookup a path in the fuse mountpoint, before it even gets to fuse VOPs. Remove less thorough initialization checks in fuse_ticket_fetch and fuse_vnop_access that are no longer necessary. And add a test case. PR: 287431 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287431 ) Sponsored by: ConnectWise Reviewed by: js Differential Revision: https://reviews.freebsd.org/D59737 (cherry picked from commit 0bd6348b52e1991fafc55128173c989dab36dfd9) M sys/fs/fuse/fuse_ipc.c M sys/fs/fuse/fuse_ipc.h M sys/fs/fuse/fuse_vfsops.c M sys/fs/fuse/fuse_vnops.c M tests/sys/fs/fusefs/mockfs.cc M tests/sys/fs/fusefs/mockfs.hh M tests/sys/fs/fusefs/pre-init.cc M tests/sys/fs/fusefs/utils.cc M tests/sys/fs/fusefs/utils.hh _____________________________________________________________________________________________________________ Commit: 07c15b75ff784fa7600a371629f6db90c0f97115 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=07c15b75ff784fa7600a371629f6db90c0f97115 Author: Mark Johnston (Tue 13 Oct 2026 20:59:10 BST) Committer: Mark Johnston (Wed 14 Oct 2026 17:00:47 BST) bhyve: Fix handling of framebuffer resizing The rfb code maintains an array of CRCs for 32x32 tiles in the framebuffer. This array is sized statically based on the rfb code's notion of the maximum framebuffer size, which changed in commit fb51ddb20d57 without updating the rfb code. Morever, writes to the framebuffer BAR can modify the recorded height and width of the framebuffer. These values were not validated against the maximum at all, unlike the parameters set via bhyve config. Fix these problems: - Define the maximum width and height in a shared header file so that they do not get out of sync again. - In pci_fbuf_render(), don't resize the console if the new dimensions are too large. - Add a mutex to synchronize framebuffer BAR I/O with the rfb thread. Approved by: so Security: FreeBSD-SA-26:72.bhyve Security: CVE-2026-101311 Fixes: fb51ddb20d57 ("bhyve: increase fbuf display resolution limit") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60680 M usr.sbin/bhyve/bhyvegc.h M usr.sbin/bhyve/pci_fbuf.c M usr.sbin/bhyve/rfb.c _____________________________________________________________________________________________________________ Commit: 6f22ca12fa0e806e814e3538805848f404789c5e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6f22ca12fa0e806e814e3538805848f404789c5e Author: Mark Johnston (Tue 13 Oct 2026 20:58:36 BST) Committer: Mark Johnston (Wed 14 Oct 2026 17:00:47 BST) bhyve: Improve HDA stream descriptor validation The length of each block in the stream must be non-zero. This is assumed in hda_transfer(), otherwise an out-of-bounds read or write is possible. Use atomic loads to access stream descriptor fields, since they are guest-controlled. Make sure that the descriptor array is suitably aligned so that we can drop the __packed annotation from the structure definition; per section 3.3.42 of the HDA spec the BDL pointer is supposed to be 128-byte aligned, in fact. Approved by: so Security: FreeBSD-SA-26:72.bhyve Security: CVE-2026-101310 Reported by: Brian Delgado from Intel using Anthropic Opus 4.8 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60678 M usr.sbin/bhyve/pci_hda.c _____________________________________________________________________________________________________________ Commit: 719b159a1985a5eae9ab47c65d0108c589a5cf72 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=719b159a1985a5eae9ab47c65d0108c589a5cf72 Author: Mark Johnston (Tue 13 Oct 2026 20:56:47 BST) Committer: Mark Johnston (Wed 14 Oct 2026 17:00:47 BST) bhyve: Fix handling of the xhci event ring rts->erst_p and rts->erstba_p are pointers to guest-controlled memory which describe the event rings and pending event array, respectively. The device model was not validating the size nor saving the value. As a result, the bounds checks in pci_xhci_insert_event() were susceptible to TOCTOU races. Fix pci_xhci_rtsregs_write() to save the ring size in a softc field. Validate that the size isn't larger than the maximum allowed by the XHCI specification (64KB, or 4096 TRBs). When processing TRBs, make sure we don't load fields more than once. Make sure that pci_xhci_trb_next() doesn't return a pointer to host memory. When handling ERDP writes, make sure that the guest-supplied address is actually a pointer into the TRB array, and ignore the write if not. Approved by: so Security: FreeBSD-SA-26:72.bhyve Security: CVE-2026-101309 Reported by: Brian Delgado from Intel using Anthropic Opus 4.8 Differential Revision: https://reviews.freebsd.org/D60677 M usr.sbin/bhyve/pci_xhci.c _____________________________________________________________________________________________________________ Commit: 07eacba075ab15f6d42c8e8b766eda74bb027520 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=07eacba075ab15f6d42c8e8b766eda74bb027520 Author: Mark Johnston (Tue 13 Oct 2026 16:54:07 BST) Committer: Mark Johnston (Wed 14 Oct 2026 17:00:47 BST) sound: Revalidate after reacquiring locks when resizing buffers sndbuf_resize() and sndbuf_remalloc() drop the channel lock in order to allocate the new buffer(s) with M_WAITOK. Before doing that they verify that the buffer is not mapped, but this could change while the lock is dropped, as there is no higher-level synchronization which prevents buffer resize (e.g., via the SNDCTL_DSP_SETBLKSIZE ioctl) from happening concurrently with mmap. Thus, these checks are insufficient. Modify sndbuf_resize() and sndbuf_remalloc() to revalidate after reacquiring the lock. Extend them to check for a couple of channel flags, mirroring the check in chn_resizebuf(). Modify chn_resizebuf() to revalidate state after reacquiring the channel lock. We could also allocate new buffers with M_NOWAIT and so avoid dropping the lock. Then, I think we could go even further and invoke CHANNEL_SETBLOCKSIZE and CHANNEL_SETFRAGMENTS with the channel lock held. But really it would be better to ensure that dsp operations are serialized; there is no reason for mmap and chn_resizebuf() to be able to run in parallel, we should not be relying on the channel lock for this. So, let's keep a more minimal approach here. Add a simple regression test. Approved by: so Security: FreeBSD-SA-26:71.sound Security: CVE-2026-101308 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60554 M sys/dev/sound/pcm/buffer.c M sys/dev/sound/pcm/channel.c M tests/sys/sound/mmap.c _____________________________________________________________________________________________________________ Commit: 820fb570ebf19ea25131edff2cbf349d1f8cc3c0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=820fb570ebf19ea25131edff2cbf349d1f8cc3c0 Author: Mark Johnston (Tue 13 Oct 2026 16:53:39 BST) Committer: Mark Johnston (Wed 14 Oct 2026 17:00:47 BST) sound: Check for errors from sndbuf_resize() Most implementations of CHANNEL_SETBLOCKSIZE and CHANNEL_SETFRAGMENTS were not checking this. This is probably not a big problem: it's unlikely for sndbuf_resize() to fail due to the refcount check in this case since it's operating on the hardware buffer, which doesn't get mmaped. But, I will add more reasons for it to fail in the next patch, so let's be more careful. This change modifies various CHANNEL_SETBLOCKSIZE implementations to check for errors. In some cases I reordered things to avoid updating driver state until after sndbuf_resize() succeeds. Return 0 from CHANNEL_SETBLOCKSIZE to indicate an error, as it otherwise returns the new block size. We could change the interface to return both an error number and a block size, but that would break at least one out-of-tree driver and I wish to avoid that here. Make sure that errors from CHANNEL_SETFRAGMENTS are returned to userspace. Approved by: so Security: FreeBSD-SA-26:71.sound Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60553 M sys/arm/freescale/imx/imx6_ssi.c M sys/arm/freescale/vybrid/vf_sai.c M sys/dev/sound/pci/als4000.c M sys/dev/sound/pci/atiixp.c M sys/dev/sound/pci/cmi.c M sys/dev/sound/pci/cs4281.c M sys/dev/sound/pci/emu10kx-pcm.c M sys/dev/sound/pci/envy24.c M sys/dev/sound/pci/envy24ht.c M sys/dev/sound/pci/es137x.c M sys/dev/sound/pci/hda/hdaa.c M sys/dev/sound/pci/hdsp-pcm.c M sys/dev/sound/pci/hdspe-pcm.c M sys/dev/sound/pci/ich.c M sys/dev/sound/pci/t4dwave.c M sys/dev/sound/pci/via8233.c M sys/dev/sound/pci/via82c686.c M sys/dev/sound/pci/vibes.c M sys/dev/sound/pcm/channel.c M sys/dev/sound/usb/uaudio.c M sys/dev/sound/usb/uaudio.h M sys/dev/sound/usb/uaudio_pcm.c _____________________________________________________________________________________________________________ Commit: 57818a298ee1b7e907df7759346f9f4a11370d63 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=57818a298ee1b7e907df7759346f9f4a11370d63 Author: Michael Tuexen (Mon 12 Oct 2026 19:55:21 BST) Committer: Mark Johnston (Wed 14 Oct 2026 17:00:47 BST) tcp/rack: Fix a potential overflow in rack_update_pcm_ack() The RACK stack's path capacity measurement module maintains an array of samples, updated when the stack receives an ACK. The array grows as needed, but code which handles the expansion is susceptible to remotely triggerable overflow. This could lead to underallocation and a ~512KB out-of-bounds write. Fix this by bounding the sample array size. Approved by: so Security: FreeBSD-SA-26:70.tcp Security: CVE-2026-101307 Reviewed by: glebius, markj Reported by: Nozomi Networks Security Research M sys/netinet/tcp_stacks/rack_pcm.c M sys/netinet/tcp_stacks/tcp_rack.h _____________________________________________________________________________________________________________ Commit: 680957e950fcdf9724973e725507d4755736a6d8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=680957e950fcdf9724973e725507d4755736a6d8 Author: Christos Margiolis (Wed 7 Oct 2026 17:53:28 BST) Committer: Christos Margiolis (Wed 14 Oct 2026 10:30:55 BST) rc.d/mountd: Do not require /etc/exports mountd exits if it cannot read any exports files. Requiring /etc/exports, however, unconditionally stops mountd from starting on a server that exports ZFS datasets only (/etc/zfs/exports). Let sbin/mountd handle requirements itself, instead of hardcoding /etc/exports, which is also wrong, because different files can be specified in mountd_flags. This patch also works with nfsv4_server_enable="YES", by preserving the behavior of failing to start if there is no "V4:" line in the exports file, which is missing by default on ZFS-only exports. MFC after: 1 week Sponsored by: The FreeBSD Foundation Reviewed by: rmacklem, markj, emaste Differential Revision: https://reviews.freebsd.org/D60044 (cherry picked from commit 26203cca52621c215f60640bf59128dcd9780be7) M libexec/rc/rc.d/mountd _____________________________________________________________________________________________________________ Commit: fa4f5cc47d36da2c7a5862d33687717d33e0e40f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fa4f5cc47d36da2c7a5862d33687717d33e0e40f Author: Christos Margiolis (Wed 7 Oct 2026 08:03:31 BST) Committer: Christos Margiolis (Wed 14 Oct 2026 10:30:55 BST) pcm.4: Remove DIAGNOSTICS section These diagnostics do not exist anymore. MFC after: 1 week (cherry picked from commit 25faf861089ca119528ea4da39fe594b1c5ca55a) M share/man/man4/pcm.4 M sys/dev/sound/pcm/channel.c _____________________________________________________________________________________________________________ Commit: 4b3c29b5b2148195dd94c78ec8ceec5cb554cc87 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4b3c29b5b2148195dd94c78ec8ceec5cb554cc87 Author: Konstantin Belousov (Sun 4 Oct 2026 00:59:30 BST) Committer: Konstantin Belousov (Wed 14 Oct 2026 03:21:54 BST) kern/coredump_vnode.c: avoid dumping to the mount point we suspended PR: 299095 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=299095 ) (cherry picked from commit bea382f25b16fec0e9a1c2be130935e739075287) M sys/kern/vfs_vnops.c _____________________________________________________________________________________________________________ Commit: d123138b565423ea02976e03c8fba29faf54902b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d123138b565423ea02976e03c8fba29faf54902b Author: Konstantin Belousov (Sun 4 Oct 2026 00:59:30 BST) Committer: Konstantin Belousov (Wed 14 Oct 2026 03:21:54 BST) vn_open_cred(): rename VN_OPEN_NAMECACHE flag to VN_OPEN_COREDUMP (cherry picked from commit ccd44c5e4881ece004fa23d3b479d4ee57b2a58e) M sys/kern/coredump_vnode.c M sys/kern/vfs_vnops.c M sys/sys/vnode.h _____________________________________________________________________________________________________________ Commit: cfd0d2cd2ce1ab4384863a5c80c4ded33f743c3d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cfd0d2cd2ce1ab4384863a5c80c4ded33f743c3d Author: J. David (Wed 7 Oct 2026 02:52:19 BST) Committer: Rick Macklem (Wed 14 Oct 2026 02:11:51 BST) nfscl: Fix oddball cases for session slot release We have identified some cases where silent slot loss can occur when operations on NFS mounts are aborted. We experience this when using NFSv4.2, but it likely also occurs with NFSv4.1. A slot is acquired for compound operations by nfsv4_setsequence() and freed by newnfs_request(). Any call path that abandons the compound before reaching newnfs_request() loses the slot permanently. We identified four call sites where this happens, one of which where it actually does happen for us in a semi-reproducible way, which allowed us to develop a candidate patch, attached. The patch adds one function, nfsv4_freeunsentslot(), to nfs_clcomsubs.c. It is called from each of the four call sites: nfsrpc_writerpc(), nfsrpc_writeds(), and two in nfsrpc_setextattr(). nfsv4_freeunsentslot() calls nfsv4_freeslot() with resetseq set to true because the aborted RPC will never be sent and therefore the slot sequence ID should not advance. With this patch and other diagnostics, we have confirmed that slot loss does not occur under the conditions that otherwise cause it in our environment. PR: 298416 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298416 ) (cherry picked from commit 77a7a48a1cb003831ff1d4342b1974fc7f79381e) M sys/fs/nfs/nfs_var.h M sys/fs/nfsclient/nfs_clcomsubs.c M sys/fs/nfsclient/nfs_clrpcops.c _____________________________________________________________________________________________________________ Commit: 3e4c62b920933a706213670049b2e5287d553afd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3e4c62b920933a706213670049b2e5287d553afd Author: Cy Schubert (Mon 10 Aug 2026 15:23:31 BST) Committer: Cy Schubert (Tue 13 Oct 2026 20:19:21 BST) wpa: Update to 2.12 Fixes and new features include: hostapd: * support RSN overriding (e.g., WPA3-Personal Compatibility Mode) * EHT/IEEE 802.11be/Wi-Fi 7 - more complete support - fix message validation issues that could enable DoS attacks - fix group key rekeying * enable SAE group 20 by default if SAE-EXT-KEY is enabled * reject unexpected SAE password identifier to avoid DoS attack against a specific STA * mandate use of SAE H2E when using password identifiers * assign VLAN when using SAE with PMKSA caching * support SPP A-MSDU negotiation * support IEEE 802.11bi functionality - changing SAE password identifiers - EPPKE - IEEE 802.1X/EAP in Authentication frames - Association frame encryption - PMKID privacy * remove the driver interface for now obsolete Host AP driver * remove the driver interface for now obsolete Atheros WEXT interface * move supported, basic, and Beacon TX rate configuration to be at BSS level instead of per-radio for all BSSs * fix various issues in Multiple-BSSID functionality * support OpenSSL 3.0 API changes * EAP-TEAP: protocol changes based on RFC 9930; this is not compatible with previous versions * support Automated Frequency Coordination (AFC) on the 6 GHz band * improve GAS/ANQP processing to support larger ANQP responses * a large number of other fixes, cleanup, and extensions wpa_supplicant: * support RSN overriding (e.g., WPA3-Personal Compatibility Mode) * improve BSS transition management support * EHT/IEEE 802.11be/Wi-Fi 7 - more complete support - fix message validation issues that could enable DoS attacks * support Wi-Fi Direct R2 * support Wi-Fi Aware (add synchronized NAN; extend USD support) * support Proximity Ranging * support SPP A-MSDU negotiation * support IEEE 802.11bi functionality - changing SAE password identifiers - EPPKE - IEEE 802.1X/EAP in Authentication frames - Association frame encryption - PMKID privacy * enable layer 2/Wi-Fi multicast filtering for all networks (not just some Passpoint networks which enabled this before) * wpa_gui: port to Qt6 * support OpenSSL 3.0 API changes * EAP-TEAP: protocol changes based on RFC 9930; this is not compatible with previous versions * maintain configuration file permissions when writing updated configuration * add option to validate PKCS#11/OpenSC engine and module paths * fix PMKSA caching to enforce network context to avoid misuse of unexpected PMKSA cache entries * fix a potential DoS attack in SAE processing of an unexpected element * fix incomplete bounds checking of mesh AMPE messages that could have resulted in DoS attacks and memory corruption * a large number of other fixes, cleanup, and extensions Merge commit '513264698a892550ba20aeb9da7f360417fdc63b' (cherry picked from commit 71e72c9e91c4b8007a4292e09669e8b549c29e97) A contrib/wpa/Makefile M contrib/wpa/README M contrib/wpa/hostapd/Android.mk M contrib/wpa/hostapd/ChangeLog M contrib/wpa/hostapd/Makefile M contrib/wpa/hostapd/README M contrib/wpa/hostapd/README-MULTI-AP M contrib/wpa/hostapd/android.config M contrib/wpa/hostapd/config_file.c M contrib/wpa/hostapd/ctrl_iface.c M contrib/wpa/hostapd/ctrl_iface.h M contrib/wpa/hostapd/defconfig M contrib/wpa/hostapd/eap_register.c M contrib/wpa/hostapd/hlr_auc_gw.c M contrib/wpa/hostapd/hostapd.conf M contrib/wpa/hostapd/hostapd_cli.c M contrib/wpa/hostapd/main.c M contrib/wpa/hs20/client/Android.mk M contrib/wpa/hs20/client/Makefile D contrib/wpa/hs20/client/devdetail.xml D contrib/wpa/hs20/client/devinfo.xml D contrib/wpa/hs20/client/est.c D contrib/wpa/hs20/client/oma_dm_client.c M contrib/wpa/hs20/client/osu_client.c M contrib/wpa/hs20/client/osu_client.h D contrib/wpa/hs20/client/spp_client.c M contrib/wpa/src/ap/Makefile M contrib/wpa/src/ap/acs.c A contrib/wpa/src/ap/afc.c M contrib/wpa/src/ap/airtime_policy.c M contrib/wpa/src/ap/ap_config.c M contrib/wpa/src/ap/ap_config.h M contrib/wpa/src/ap/ap_drv_ops.c M contrib/wpa/src/ap/ap_drv_ops.h M contrib/wpa/src/ap/ap_mlme.c M contrib/wpa/src/ap/authsrv.c M contrib/wpa/src/ap/beacon.c M contrib/wpa/src/ap/ctrl_iface_ap.c M contrib/wpa/src/ap/ctrl_iface_ap.h M contrib/wpa/src/ap/dfs.c M contrib/wpa/src/ap/dfs.h M contrib/wpa/src/ap/dpp_hostapd.c M contrib/wpa/src/ap/drv_callbacks.c M contrib/wpa/src/ap/eap_user_db.c M contrib/wpa/src/ap/gas_query_ap.c M contrib/wpa/src/ap/gas_serv.c M contrib/wpa/src/ap/hostapd.c M contrib/wpa/src/ap/hostapd.h M contrib/wpa/src/ap/hs20.c M contrib/wpa/src/ap/hw_features.c M contrib/wpa/src/ap/hw_features.h M contrib/wpa/src/ap/ieee802_11.c M contrib/wpa/src/ap/ieee802_11.h M contrib/wpa/src/ap/ieee802_11_eht.c M contrib/wpa/src/ap/ieee802_11_he.c M contrib/wpa/src/ap/ieee802_11_ht.c M contrib/wpa/src/ap/ieee802_11_shared.c M contrib/wpa/src/ap/ieee802_11_vht.c M contrib/wpa/src/ap/ieee802_1x.c M contrib/wpa/src/ap/ieee802_1x.h A contrib/wpa/src/ap/interference.c A contrib/wpa/src/ap/interference.h M contrib/wpa/src/ap/nan_usd_ap.c M contrib/wpa/src/ap/nan_usd_ap.h M contrib/wpa/src/ap/neighbor_db.c M contrib/wpa/src/ap/pmksa_cache_auth.c M contrib/wpa/src/ap/pmksa_cache_auth.h M contrib/wpa/src/ap/rrm.c M contrib/wpa/src/ap/sta_info.c M contrib/wpa/src/ap/sta_info.h M contrib/wpa/src/ap/vlan_full.c M contrib/wpa/src/ap/wnm_ap.c M contrib/wpa/src/ap/wpa_auth.c M contrib/wpa/src/ap/wpa_auth.h M contrib/wpa/src/ap/wpa_auth_ft.c M contrib/wpa/src/ap/wpa_auth_glue.c M contrib/wpa/src/ap/wpa_auth_i.h M contrib/wpa/src/ap/wpa_auth_ie.c M contrib/wpa/src/ap/wpa_auth_kay.c M contrib/wpa/src/ap/wps_hostapd.c M contrib/wpa/src/build.rules M contrib/wpa/src/common/Makefile M contrib/wpa/src/common/common_module_tests.c M contrib/wpa/src/common/defs.h M contrib/wpa/src/common/dpp.c M contrib/wpa/src/common/dpp.h M contrib/wpa/src/common/dpp_auth.c M contrib/wpa/src/common/dpp_backup.c M contrib/wpa/src/common/dpp_crypto.c M contrib/wpa/src/common/dpp_i.h M contrib/wpa/src/common/dpp_reconfig.c M contrib/wpa/src/common/dpp_tcp.c M contrib/wpa/src/common/gas.c M contrib/wpa/src/common/gas_server.c M contrib/wpa/src/common/gas_server.h M contrib/wpa/src/common/hw_features_common.c M contrib/wpa/src/common/hw_features_common.h M contrib/wpa/src/common/ieee802_11_common.c M contrib/wpa/src/common/ieee802_11_common.h M contrib/wpa/src/common/ieee802_11_defs.h D contrib/wpa/src/common/nan.h M contrib/wpa/src/common/nan_de.c M contrib/wpa/src/common/nan_de.h A contrib/wpa/src/common/nan_defs.h A contrib/wpa/src/common/proc_coord.c A contrib/wpa/src/common/proc_coord.h A contrib/wpa/src/common/proximity_ranging.c A contrib/wpa/src/common/proximity_ranging.h M contrib/wpa/src/common/ptksa_cache.c M contrib/wpa/src/common/ptksa_cache.h M contrib/wpa/src/common/qca-vendor.h M contrib/wpa/src/common/sae.c M contrib/wpa/src/common/sae.h M contrib/wpa/src/common/sae_pk.c M contrib/wpa/src/common/version.h M contrib/wpa/src/common/wpa_common.c M contrib/wpa/src/common/wpa_common.h M contrib/wpa/src/common/wpa_ctrl.h M contrib/wpa/src/crypto/crypto.h M contrib/wpa/src/crypto/crypto_gnutls.c M contrib/wpa/src/crypto/crypto_libtomcrypt.c M contrib/wpa/src/crypto/crypto_linux.c M contrib/wpa/src/crypto/crypto_openssl.c M contrib/wpa/src/crypto/crypto_wolfssl.c M contrib/wpa/src/crypto/sha256-prf.c M contrib/wpa/src/crypto/sha256.h M contrib/wpa/src/crypto/sha384-prf.c M contrib/wpa/src/crypto/sha384.h M contrib/wpa/src/crypto/sha512-prf.c M contrib/wpa/src/crypto/tls_gnutls.c M contrib/wpa/src/crypto/tls_openssl.c M contrib/wpa/src/crypto/tls_wolfssl.c M contrib/wpa/src/drivers/driver.h D contrib/wpa/src/drivers/driver_atheros.c M contrib/wpa/src/drivers/driver_bsd.c M contrib/wpa/src/drivers/driver_common.c D contrib/wpa/src/drivers/driver_hostap.c D contrib/wpa/src/drivers/driver_hostap.h M contrib/wpa/src/drivers/driver_macsec_linux.c M contrib/wpa/src/drivers/driver_ndis.c M contrib/wpa/src/drivers/driver_nl80211.c M contrib/wpa/src/drivers/driver_nl80211.h M contrib/wpa/src/drivers/driver_nl80211_capa.c M contrib/wpa/src/drivers/driver_nl80211_event.c M contrib/wpa/src/drivers/driver_nl80211_monitor.c M contrib/wpa/src/drivers/driver_nl80211_scan.c M contrib/wpa/src/drivers/driver_openbsd.c M contrib/wpa/src/drivers/driver_privsep.c M contrib/wpa/src/drivers/driver_wext.c M contrib/wpa/src/drivers/driver_wext.h M contrib/wpa/src/drivers/drivers.c M contrib/wpa/src/drivers/drivers.mak M contrib/wpa/src/drivers/drivers.mk M contrib/wpa/src/drivers/nl80211_copy.h M contrib/wpa/src/eap_common/eap_pwd_common.c M contrib/wpa/src/eap_common/eap_teap_common.c M contrib/wpa/src/eap_common/eap_teap_common.h M contrib/wpa/src/eap_common/ikev2_common.c M contrib/wpa/src/eap_peer/eap.c M contrib/wpa/src/eap_peer/eap_config.h M contrib/wpa/src/eap_peer/eap_leap.c M contrib/wpa/src/eap_peer/eap_teap.c D contrib/wpa/src/eap_peer/eap_teap_pac.c D contrib/wpa/src/eap_peer/eap_teap_pac.h M contrib/wpa/src/eap_peer/eap_tls.c M contrib/wpa/src/eap_peer/eap_tls_common.c M contrib/wpa/src/eap_peer/eap_tls_common.h M contrib/wpa/src/eap_server/eap.h M contrib/wpa/src/eap_server/eap_server_teap.c M contrib/wpa/src/eap_server/eap_server_tls.c M contrib/wpa/src/eap_server/eap_server_tls_common.c M contrib/wpa/src/eap_server/eap_server_ttls.c M contrib/wpa/src/eap_server/eap_tls_common.h M contrib/wpa/src/eapol_auth/eapol_auth_sm.c M contrib/wpa/src/eapol_auth/eapol_auth_sm.h M contrib/wpa/src/eapol_auth/eapol_auth_sm_i.h M contrib/wpa/src/eapol_supp/eapol_supp_sm.c M contrib/wpa/src/eapol_supp/eapol_supp_sm.h M contrib/wpa/src/fst/fst.c M contrib/wpa/src/fst/fst_session.c A contrib/wpa/src/nan/Makefile A contrib/wpa/src/nan/nan.c A contrib/wpa/src/nan/nan.h A contrib/wpa/src/nan/nan_bootstrap.c A contrib/wpa/src/nan/nan_crypto.c A contrib/wpa/src/nan/nan_i.h A contrib/wpa/src/nan/nan_module_test_cases.c A contrib/wpa/src/nan/nan_module_tests.c A contrib/wpa/src/nan/nan_module_tests.h A contrib/wpa/src/nan/nan_ndl.c A contrib/wpa/src/nan/nan_ndp.c A contrib/wpa/src/nan/nan_pairing.c A contrib/wpa/src/nan/nan_sec.c A contrib/wpa/src/nan/nan_util.c M contrib/wpa/src/p2p/p2p.c M contrib/wpa/src/p2p/p2p.h M contrib/wpa/src/p2p/p2p_build.c M contrib/wpa/src/p2p/p2p_go_neg.c M contrib/wpa/src/p2p/p2p_group.c M contrib/wpa/src/p2p/p2p_i.h M contrib/wpa/src/p2p/p2p_invitation.c M contrib/wpa/src/p2p/p2p_parse.c M contrib/wpa/src/p2p/p2p_pd.c M contrib/wpa/src/p2p/p2p_utils.c M contrib/wpa/src/pae/ieee802_1x_kay.c M contrib/wpa/src/pae/ieee802_1x_kay.h M contrib/wpa/src/pasn/pasn_common.c M contrib/wpa/src/pasn/pasn_common.h M contrib/wpa/src/pasn/pasn_initiator.c M contrib/wpa/src/pasn/pasn_responder.c M contrib/wpa/src/radius/radius.c M contrib/wpa/src/radius/radius.h M contrib/wpa/src/radius/radius_client.c M contrib/wpa/src/radius/radius_server.c M contrib/wpa/src/radius/radius_server.h M contrib/wpa/src/rsn_supp/pmksa_cache.c M contrib/wpa/src/rsn_supp/pmksa_cache.h M contrib/wpa/src/rsn_supp/preauth.c M contrib/wpa/src/rsn_supp/tdls.c M contrib/wpa/src/rsn_supp/wpa.c M contrib/wpa/src/rsn_supp/wpa.h M contrib/wpa/src/rsn_supp/wpa_ft.c M contrib/wpa/src/rsn_supp/wpa_i.h M contrib/wpa/src/rsn_supp/wpa_ie.c M contrib/wpa/src/rsn_supp/wpa_ie.h M contrib/wpa/src/tls/tlsv1_client.c M contrib/wpa/src/tls/tlsv1_common.c M contrib/wpa/src/tls/tlsv1_common.h M contrib/wpa/src/tls/x509v3.c M contrib/wpa/src/utils/bitfield.c M contrib/wpa/src/utils/bitfield.h M contrib/wpa/src/utils/common.c M contrib/wpa/src/utils/common.h M contrib/wpa/src/utils/eloop.c M contrib/wpa/src/utils/ext_password_file.c M contrib/wpa/src/utils/http-utils.h M contrib/wpa/src/utils/http_curl.c M contrib/wpa/src/utils/json.c M contrib/wpa/src/utils/json.h M contrib/wpa/src/utils/module_tests.h M contrib/wpa/src/utils/os.h M contrib/wpa/src/utils/os_unix.c M contrib/wpa/src/utils/trace.c M contrib/wpa/src/utils/trace.h M contrib/wpa/src/utils/utils_module_tests.c M contrib/wpa/src/utils/wpa_debug.c M contrib/wpa/src/utils/wpa_debug.h M contrib/wpa/src/utils/wpabuf.c M contrib/wpa/src/utils/wpabuf.h M contrib/wpa/src/utils/xml-utils.c M contrib/wpa/src/utils/xml-utils.h M contrib/wpa/src/utils/xml_libxml2.c M contrib/wpa/src/wps/http_server.c M contrib/wpa/src/wps/wps_er.c M contrib/wpa/src/wps/wps_upnp_ap.c M contrib/wpa/wpa_supplicant/Android.mk M contrib/wpa/wpa_supplicant/ChangeLog M contrib/wpa/wpa_supplicant/Makefile M contrib/wpa/wpa_supplicant/README M contrib/wpa/wpa_supplicant/README-HS20 M contrib/wpa/wpa_supplicant/README-NAN-USD M contrib/wpa/wpa_supplicant/ap.c M contrib/wpa/wpa_supplicant/bgscan_learn.c M contrib/wpa/wpa_supplicant/bgscan_simple.c M contrib/wpa/wpa_supplicant/bss.c M contrib/wpa/wpa_supplicant/bss.h M contrib/wpa/wpa_supplicant/config.c M contrib/wpa/wpa_supplicant/config.h M contrib/wpa/wpa_supplicant/config_file.c M contrib/wpa/wpa_supplicant/config_none.c M contrib/wpa/wpa_supplicant/config_ssid.h M contrib/wpa/wpa_supplicant/config_winreg.c M contrib/wpa/wpa_supplicant/ctrl_iface.c M contrib/wpa/wpa_supplicant/dbus/dbus_dict_helpers.c M contrib/wpa/wpa_supplicant/dbus/dbus_dict_helpers.h M contrib/wpa/wpa_supplicant/dbus/dbus_new.c M contrib/wpa/wpa_supplicant/dbus/dbus_new.h M contrib/wpa/wpa_supplicant/dbus/dbus_new_handlers.c M contrib/wpa/wpa_supplicant/dbus/dbus_new_handlers.h M contrib/wpa/wpa_supplicant/dbus/dbus_new_handlers_p2p.c M contrib/wpa/wpa_supplicant/dbus/dbus_new_handlers_p2p.h M contrib/wpa/wpa_supplicant/dbus/dbus_new_introspect.c M contrib/wpa/wpa_supplicant/defconfig M contrib/wpa/wpa_supplicant/dpp_supplicant.c M contrib/wpa/wpa_supplicant/dpp_supplicant.h M contrib/wpa/wpa_supplicant/driver_i.h M contrib/wpa/wpa_supplicant/eap_register.c M contrib/wpa/wpa_supplicant/eapol_test.c M contrib/wpa/wpa_supplicant/events.c M contrib/wpa/wpa_supplicant/gas_query.c M contrib/wpa/wpa_supplicant/hs20_supplicant.c M contrib/wpa/wpa_supplicant/hs20_supplicant.h M contrib/wpa/wpa_supplicant/ibss_rsn.c M contrib/wpa/wpa_supplicant/interworking.c M contrib/wpa/wpa_supplicant/main.c M contrib/wpa/wpa_supplicant/mbo.c M contrib/wpa/wpa_supplicant/mesh.c M contrib/wpa/wpa_supplicant/mesh_mpm.c M contrib/wpa/wpa_supplicant/mesh_rsn.c A contrib/wpa/wpa_supplicant/nan_supplicant.c A contrib/wpa/wpa_supplicant/nan_supplicant.h D contrib/wpa/wpa_supplicant/nan_usd.c D contrib/wpa/wpa_supplicant/nan_usd.h M contrib/wpa/wpa_supplicant/notify.c M contrib/wpa/wpa_supplicant/notify.h M contrib/wpa/wpa_supplicant/offchannel.c M contrib/wpa/wpa_supplicant/op_classes.c M contrib/wpa/wpa_supplicant/p2p_supplicant.c M contrib/wpa/wpa_supplicant/p2p_supplicant.h M contrib/wpa/wpa_supplicant/pasn_supplicant.c A contrib/wpa/wpa_supplicant/pr_supplicant.c A contrib/wpa/wpa_supplicant/pr_supplicant.h M contrib/wpa/wpa_supplicant/preauth_test.c M contrib/wpa/wpa_supplicant/robust_av.c M contrib/wpa/wpa_supplicant/rrm.c M contrib/wpa/wpa_supplicant/scan.c M contrib/wpa/wpa_supplicant/scan.h M contrib/wpa/wpa_supplicant/sme.c M contrib/wpa/wpa_supplicant/sme.h M contrib/wpa/wpa_supplicant/wnm_sta.c M contrib/wpa/wpa_supplicant/wnm_sta.h M contrib/wpa/wpa_supplicant/wpa_cli.c M contrib/wpa/wpa_supplicant/wpa_passphrase.c M contrib/wpa/wpa_supplicant/wpa_supplicant.c M contrib/wpa/wpa_supplicant/wpa_supplicant.conf M contrib/wpa/wpa_supplicant/wpa_supplicant_i.h M contrib/wpa/wpa_supplicant/wpas_glue.c M contrib/wpa/wpa_supplicant/wpas_kay.c M contrib/wpa/wpa_supplicant/wpas_module_tests.c M contrib/wpa/wpa_supplicant/wps_supplicant.c M usr.sbin/wpa/Makefile.inc M usr.sbin/wpa/hostapd/Makefile M usr.sbin/wpa/src/ap/Makefile M usr.sbin/wpa/src/common/Makefile M usr.sbin/wpa/src/crypto/Makefile M usr.sbin/wpa/src/pasn/Makefile _____________________________________________________________________________________________________________ Commit: b023724ef4ce0420c25bc33778249c2881858c1a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b023724ef4ce0420c25bc33778249c2881858c1a Author: Mark Johnston (Wed 8 Oct 2025 13:49:28 BST) Committer: John Baldwin (Tue 13 Oct 2026 19:26:38 BST) cross-build: Define __GNUC_PREREQ__ in cdefs.h This is required when including stdckdint.h and doesn't seem to be provided by older clang. Reviewed by: emaste Fixes: 7233893e9496 ("lib{c,openbsd}: use ckd_mul() for overflow checking in re(c)allocarray") Differential Revision: https://reviews.freebsd.org/D52933 (cherry picked from commit 53ab85a55408562690f58788ea8d01c18b79ef5d) M tools/build/cross-build/include/common/sys/cdefs.h _____________________________________________________________________________________________________________ Commit: 61afe54265dc757b42cd37d9146f4cd65d543bd4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=61afe54265dc757b42cd37d9146f4cd65d543bd4 Author: Piotr Kubaj (Mon 21 Sep 2026 13:48:06 BST) Committer: Piotr Kubaj (Mon 12 Oct 2026 18:51:26 BST) powerpc: keep FP, VMX and VSX ownership changes atomic with preemption trap() and set_mcontext() change the FP/VMX/VSX ownership state in several steps with preemption enabled. A context switch in between leaves the thread computing with another thread's register contents: - enable_fpu()/enable_vec() set PCB_FPU/PCB_VEC before loading the registers, so a switch mid-load saves a half-loaded unit over the PCB. - set_mcontext() clears the frame's MSR bits and then the PCB flags; a switch in between re-enables the unit, and the thread returns to user space with it enabled but not owned, so it is neither saved nor restored until the next signal. Both paths run after every sigreturn(2), setcontext(2) and swapcontext(3). A POWER9 test that keeps f14-f31 live across a signal, with other threads using the FPU on the same CPU, saw 283 corrupted round trips out of 882000; none after this change. Hold a critical section around both, as amd64 and arm64 do. Reviewed by: jhibbits MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D60054 (cherry picked from commit 1f1043d550ea2b8282e692019f17a88896212a76) M sys/powerpc/powerpc/exec_machdep.c M sys/powerpc/powerpc/trap.c _____________________________________________________________________________________________________________ Commit: 975bdb89ecdd939adcd51b5f9d27ea99939b2cbb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=975bdb89ecdd939adcd51b5f9d27ea99939b2cbb Author: Minsoo Choo (Mon 12 Oct 2026 16:52:01 BST) Committer: Minsoo Choo (Mon 12 Oct 2026 17:00:32 BST) Fix build failure after f02a5391295e On main, casting PHYS_TO_DMAP(pa) does not require casting to pt_entry_t * because it returns void * after fe3e92e6868d ("PHYS_TO_DMAP: Return a void * instead of a vm_offset_t"). That was not MFCed to stable/14 and stable/15, thus cast the return value of PHYS_TO_DMAP(pa) to pt_entry_t * to fix build failure. Approved by: jhb (mentor) Fixes: f02a5391295e ("powerpc/radix: include page tables...") Sponsored by: FreeBSD Foundation M sys/powerpc/aim/mmu_radix.c _____________________________________________________________________________________________________________ Commit: dfe2ff8fd33f0c8d7af9319d8bea11de2e3c92db URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dfe2ff8fd33f0c8d7af9319d8bea11de2e3c92db Author: Kevin Bowling (Mon 7 Sep 2026 12:50:58 BST) Committer: Ed Maste (Mon 12 Oct 2026 16:27:45 BST) aq: Report partial initialization failures to iflib Stop initialization when hardware setup, ring initialization/start, or datapath start fails. Run the existing best-effort stop/cache/reset cleanup and report the failure through iflib_init_failed(). Do not keep configuring later rings or publish the interface as running. Reviewed by: nprice MFC after: 2 weeks Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59853 (cherry picked from commit 050683bb8e136981e4a1f66e845ab05c135630f4) M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 5c2e2eba99f633298e13b3cd53af5d63501a7d00 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5c2e2eba99f633298e13b3cd53af5d63501a7d00 Author: Kevin Bowling (Thu 17 Sep 2026 03:35:58 BST) Committer: Ed Maste (Mon 12 Oct 2026 16:27:45 BST) aq: Invalidate the descriptor cache after stopping all rings Atlantic controllers can retain receive descriptors and their data addresses after their rings are disabled. Reusing or releasing those mappings without invalidating the device cache has caused observed IOMMU and SMMU faults in the referenced Linux reports (7a1bb49461b1, ed4d81c4b3f2 and 7526183cfdbe). Move global cache invalidation out of the per-ring stop routine. Disable every ring first, toggle invalidation once, and wait for its completion indication. Exclude Atlantic A0, as in the upstream workaround. Report a completion timeout rather than silently discarding it. Reviewed by: nprice MFC after: 2 weeks Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59852 (cherry picked from commit 4993c1052f899b9a971815df5661ca241641ad8e) M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_hw_llh.c M sys/dev/aq/aq_hw_llh.h M sys/dev/aq/aq_hw_llh_internal.h M sys/dev/aq/aq_main.c M sys/dev/aq/aq_ring.c _____________________________________________________________________________________________________________ Commit: 07d5d9ca2e6fe5a5373b4dd8aa7d2bc809bbf80d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=07d5d9ca2e6fe5a5373b4dd8aa7d2bc809bbf80d Author: Kevin Bowling (Fri 18 Sep 2026 09:29:17 BST) Committer: Ed Maste (Mon 12 Oct 2026 16:27:45 BST) aq: Use the common RSS key without options RSS Fetch the common RSS key independently of options RSS instead of generating a private key in non-RSS kernels. Keep the existing software-RSS or round-robin indirection policy and hardware key serialization unchanged. Reviewed by: gallatin MFC after: 2 weeks Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59793 (cherry picked from commit 772994d7748287be70fe850ec9e1117d4e7b1747) M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 6c44e6e9aa7de1f96bf7b308b79a6ed30be17ee9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6c44e6e9aa7de1f96bf7b308b79a6ed30be17ee9 Author: Ed Maste (Fri 9 Oct 2026 20:10:18 BST) Committer: Ed Maste (Mon 12 Oct 2026 16:25:53 BST) mgb: Correct TX interrupt bit The TX interrupt handler checked MGB_INTR_STS_RX(qidx) instead of MGB_INTR_STS_TX(qidx) -- presumably a copy-paste issue. Because the driver does not use TX interrupts so there was no actual issue in practice. Reviewed by: adrian Sponsored by: The FreeBSD Foundation Fixes: 8890ab7758b8 ("Introduce if_mgb driver for Microchip LAN743x PCIe NIC") Differential Revision: https://reviews.freebsd.org/D60550 (cherry picked from commit 6c3f2b8be268de075d60387158f2889140851725) M sys/dev/mgb/if_mgb.c _____________________________________________________________________________________________________________ Commit: e8000d04fae4c3de368a814cad1e0765f7684bb5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e8000d04fae4c3de368a814cad1e0765f7684bb5 Author: Kevin Bowling (Thu 17 Sep 2026 04:07:54 BST) Committer: Ed Maste (Mon 12 Oct 2026 16:25:53 BST) mgb: Propagate DMA setup errors and use the requested channel Check the receive DMA and frame transfer setup results that were previously discarded. Return EINVAL for invalid ring/writeback addresses rather than reporting success, and stop initialization through iflib_init_failed() when a ring could not be configured. Use the transmit queue count for transmit initialization and the supplied channel index for DMA operations. The driver currently allocates one queue in each direction, so those index/count corrections are latent. MFC after: 2 weeks Sponsored by: BBOX.io (cherry picked from commit 3f6c1e731376ffaf8612e7e196119acabbf357e4) M sys/dev/mgb/if_mgb.c _____________________________________________________________________________________________________________ Commit: 53a41126dfb2fa6407ef5e724c34e350d5d8935c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=53a41126dfb2fa6407ef5e724c34e350d5d8935c Author: Aymeric Wibo (Thu 8 Oct 2026 15:17:22 BST) Committer: Aymeric Wibo (Mon 12 Oct 2026 12:25:08 BST) ulimit(3): Improve UL_{GET,SET}FSIZE wording Reword the UL_GETFSIZE and UL_SETFSIZE descriptions to say 512-byte blocks and make the setter's argument clearer. While here, improve mdoc markup and pull in other small improvements. Reviewed by: des MFC after: 3 days Obtained from: https://github.com/apple-oss-distributions/libc Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D60467 (cherry picked from commit d39b1d6932dcc16b7c8a399d196fd81d038ca261) M lib/libc/gen/ulimit.3 _____________________________________________________________________________________________________________ Commit: 9c142388e4dec145109dbf02e7728967c2cbf3b9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9c142388e4dec145109dbf02e7728967c2cbf3b9 Author: Bojan Novković (Mon 17 Aug 2026 15:10:36 BST) Committer: Bojan Novković (Mon 12 Oct 2026 10:37:05 BST) pf: Send syncookies from the receiving thread pf sends outbound packets by offloading them to a single per-vnet SWI handler through the `V_pf_sendqueue` mbuf queue. A large DDoS attack may overwhelm that per-vnet queue with syncookie packets and cause contention in the SWI handler that negatively affects other pf operations. Fix this by sending the initial syncookie challenge from the context of the receiving thread. This avoids the syncookie-induced contention on the `pf_intr` mbuf queue. Sponsored by: Klara, Inc. Sponsored by: Entersekt MFC after: 3 weeks Reviewed by: kp Differential Revision: https://reviews.freebsd.org/D59068 (cherry picked from commit bf05236727cf367ee8e22ef47febebb319db9ddb) M sys/netpfil/pf/pf.c M sys/netpfil/pf/pf.h M sys/netpfil/pf/pf_syncookies.c _____________________________________________________________________________________________________________ Commit: b85a27b796c7b6d8a6d3b019f493e22e96fac11d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b85a27b796c7b6d8a6d3b019f493e22e96fac11d Author: Minsoo Choo (Wed 16 Sep 2026 05:20:45 BST) Committer: Minsoo Choo (Mon 12 Oct 2026 04:59:13 BST) libkvm: support powerpc64 radix minidumps PowerPC64 radix minidumps use a 64KB root directory followed by three levels of 4KB page tables. Add an MMU backend which walks those tables, handles large-page leaves, and decodes their always-big-endian entries on both powerpc64 and powerpc64le. Reject old radix minidumps whose pmap section is empty with a specific diagnostic. Add a synthetic powerpc64le dump test which reads a page through both its kernel and direct-map addresses. PR: 298532 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298532 ) Reviewed by: jhb Approved by: jhb (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59743 (cherry picked from commit 592ede65bd48f16e5c46a016e92b732ed90094d2) M lib/libkvm/Makefile M lib/libkvm/kvm_minidump_powerpc64.c A lib/libkvm/kvm_minidump_powerpc64_radix.c M lib/libkvm/kvm_powerpc64.h M lib/libkvm/tests/kvm_open2_test.c _____________________________________________________________________________________________________________ Commit: f02a5391295e37474d66d92b6a76433a2f4ac643 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f02a5391295e37474d66d92b6a76433a2f4ac643 Author: Minsoo Choo (Wed 16 Sep 2026 05:12:30 BST) Committer: Minsoo Choo (Mon 12 Oct 2026 04:59:13 BST) powerpc/radix: include page tables in minidumps The radix pmap did not implement the minidump pmap callbacks, so radix minidumps were emitted with an empty pmap section. Such dumps do not contain enough information for libkvm to translate kernel virtual addresses. Snapshot the 64KB radix root table in the pmap section, add lower-level page-table pages to the sparse dump, and include pages backing non-DMAP kernel mappings. Keep the bulk direct map out of the dump while retaining the relocated kernel image. PR: 298532 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298532 ) Reviewed by: jhb Approved by: jhb (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59743 (cherry picked from commit a38a698704b0289db3260617116a455fecdd54f6) M sys/powerpc/aim/mmu_radix.c _____________________________________________________________________________________________________________ Commit: ff904d783889fe99b595e483e543b81dcb63e58c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ff904d783889fe99b595e483e543b81dcb63e58c Author: Minsoo Choo (Wed 16 Sep 2026 01:14:45 BST) Committer: Minsoo Choo (Mon 12 Oct 2026 04:59:13 BST) arm: pad minidump page table libkvm locates the sparse page array after the page-rounded PTE table size, but the ARM minidump writer emitted only the unrounded size. When the table size was not page-aligned, libkvm therefore read every dumped physical page at the wrong offset. The mismatch was introduced when libkvm began rounding ptesize. It has affected ARM minidumps since ffdeef323449 ("libkvm: Improve physical address lookup scaling."). It is exposed when the dumped KVA span is not a multiple of 4 MiB. Zero-pad the final PTE page and include the padding in the dump size. Reviewed by: jhb Approved by: jhb (mentor) Fixes: ffdeef323449 ("libkvm: Improve physical address lookup scaling.") MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59716 (cherry picked from commit 4cb357c61c004f4cf27ca12e702b44a81f2752ab) M sys/arm/arm/minidump_machdep.c _____________________________________________________________________________________________________________ Commit: 64060ae4af71ca814375edd4aa87956b33788c54 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=64060ae4af71ca814375edd4aa87956b33788c54 Author: Minsoo Choo (Sun 20 Sep 2026 14:31:43 BST) Committer: Minsoo Choo (Mon 12 Oct 2026 04:59:08 BST) ci: Remove Cirrus CI files Cirrus CI shutted down its service on June 1, 2026 and its CI dashboard website (https://cirrus-ci.com) is now inaccessible. Since these files are no longer used, remove them from the repository. Reviewed by: brooks, emaste, lwhsu Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59858 (cherry picked from commit 8d31b7856f774554ffd5bb382bd2b3f6534817a0) D .cirrus-ci/pkg-install.sh D .cirrus.yml _____________________________________________________________________________________________________________ Commit: 2465e78aeca2fea5d02c5fe52247206bed9ee43d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2465e78aeca2fea5d02c5fe52247206bed9ee43d Author: Minsoo Choo (Wed 16 Sep 2026 16:33:52 BST) Committer: Minsoo Choo (Mon 12 Oct 2026 04:58:14 BST) powerpc/radix: synchronize temporary kernel mappings The radix kremove implementation cleared a kernel PTE without invalidating its TLB entry. Reusing crashdumpmap could therefore keep accessing an old physical page, causing minidumps to contain repeated stale page contents. Invalidate the removed kernel mapping and synchronize newly installed kernel PTEs before they are accessed. Reviewed by: jhibbits Approved by: olce (mentor) Fixes: 65bbba25d214 ("powerpc64: Implement Radix MMU for POWER9 CPUs") MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59728 (cherry picked from commit 8970a9f2ef781ab4f7d3fa446f7c6ac5eda26cc0) M sys/powerpc/aim/mmu_radix.c _____________________________________________________________________________________________________________ Commit: a73e8c4f2663cc6aababec4ad4115ef05121528c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a73e8c4f2663cc6aababec4ad4115ef05121528c Author: Minsoo Choo (Wed 16 Sep 2026 04:26:34 BST) Committer: Minsoo Choo (Mon 12 Oct 2026 04:58:14 BST) libkvm: route powerpc64 minidumps to minidump backend The regular powerpc64 core probes only checked the kernel ELF and thus also matched minidumps. In particular, the powerpc64le probe could claim a minidump before the minidump backend and then reject it as an invalid ELF core. Exclude minidumps from both regular powerpc64 probes and add a regression test that verifies a powerpc64le minidump reaches the minidump parser. Reviewed by: jhibbits Approved by: olce (mentor) Fixes: f4eb39ba6bc9 ("[PowerPC64LE] libkvm powerpc64le support.") MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59719 (cherry picked from commit 51b1272fca667ad4c57d94ca24600bf68f29ebd2) M lib/libkvm/kvm_powerpc64.c M lib/libkvm/tests/kvm_open2_test.c _____________________________________________________________________________________________________________ Commit: 8135c7e49f39b1da64dfce7ee2a56a048cb8eaaa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8135c7e49f39b1da64dfce7ee2a56a048cb8eaaa Author: Minsoo Choo (Tue 15 Sep 2026 04:04:16 BST) Committer: Minsoo Choo (Mon 12 Oct 2026 04:58:14 BST) libkvm: support little-endian powerpc64 minidumps Reviewed by: jhibbits Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59719 (cherry picked from commit 7b8f3db50cc992a3676e7e5ac207024e073884d4) M lib/libkvm/kvm_minidump_powerpc64.c M lib/libkvm/kvm_minidump_powerpc64_hpt.c _____________________________________________________________________________________________________________ Commit: 0687bcb51caa66e25078701eb689de4ae4b63a5f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0687bcb51caa66e25078701eb689de4ae4b63a5f Author: Minsoo Choo (Sat 5 Sep 2026 01:29:35 BST) Committer: Minsoo Choo (Mon 12 Oct 2026 04:58:13 BST) ixl: fix big-endian hardware interface handling Correct the byte order at the driver interfaces that do not operate in host order. Encode little-endian Admin Queue VSI and MAC/VLAN fields, and decode firmware-provided queue handles, statistics indices, and event parameters before using them. Decode transmit descriptor writeback before examining it, and construct VLAN descriptor fields in host order for the final descriptor conversion. Store paged HMC descriptors in little-endian form and retain the selected field bits when reading HMC contexts. Keep MMIO values in host order for bus-space accessors and remove the obsolete le16_to_cpu no-op macro. In particular, retain the atomic bus_space_read_8() used for 64-bit registers. On big-endian systems, the unconverted perfect-match filter flag is presented to firmware as 0x0100 instead of 0x0001. Firmware rejects that command with EINVAL, leaving receive traffic functional only in promiscuous mode. Reviewed by: kbowling Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation, Reliable Computer Systems Lab Pull Request: https://github.com/freebsd/freebsd-src/pull/2408 (cherry picked from commit bf8c4eaee6ad85e647c3026116f58332c89e3794) M sys/dev/ixl/i40e_hmc.c M sys/dev/ixl/i40e_lan_hmc.c M sys/dev/ixl/i40e_osdep.h M sys/dev/ixl/if_ixl.c M sys/dev/ixl/ixl_iw.c M sys/dev/ixl/ixl_pf_iflib.c M sys/dev/ixl/ixl_pf_iov.c M sys/dev/ixl/ixl_pf_main.c M sys/dev/ixl/ixl_txrx.c _____________________________________________________________________________________________________________ Commit: edb100a398bd0bd06ff9dd5cccbd158468b93994 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=edb100a398bd0bd06ff9dd5cccbd158468b93994 Author: Konstantin Belousov (Sat 10 Oct 2026 16:02:55 BST) Committer: Konstantin Belousov (Mon 12 Oct 2026 03:21:04 BST) rtld: fix indent (cherry picked from commit 46399049f8876ca877604f51689aed8cf9105722) M libexec/rtld-elf/rtld.c _____________________________________________________________________________________________________________ Commit: 23c33a97729d9dcb3b8580547d7f461368f597d7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=23c33a97729d9dcb3b8580547d7f461368f597d7 Author: Konstantin Belousov (Tue 6 Oct 2026 00:35:32 BST) Committer: Konstantin Belousov (Mon 12 Oct 2026 03:20:49 BST) devfs_open: do not access dsw after dev_relthread() (cherry picked from commit 1e595e959f66e11d0490e90270b9fb701cbc6739) M sys/fs/devfs/devfs_vnops.c _____________________________________________________________________________________________________________ Commit: 4c0c1c321eac80dcd46b863e03915f9318d33d22 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4c0c1c321eac80dcd46b863e03915f9318d33d22 Author: Konstantin Belousov (Sun 4 Oct 2026 01:50:57 BST) Committer: Konstantin Belousov (Mon 12 Oct 2026 03:20:49 BST) ufssuspend(4): mark non-passable (cherry picked from commit 499901dd7a0afc77745ede85c4e6ec063d43a84d) M sys/ufs/ffs/ffs_suspend.c _____________________________________________________________________________________________________________ Commit: 10191b85ee5d0aa034d1b51b63bd4b7d7af57992 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=10191b85ee5d0aa034d1b51b63bd4b7d7af57992 Author: Konstantin Belousov (Sun 4 Oct 2026 01:50:23 BST) Committer: Konstantin Belousov (Mon 12 Oct 2026 03:20:49 BST) cdevsw: add D_NONPASSABLE flag (cherry picked from commit 850d4562928ea9308dd9188d5014bcabe7049938) M sys/fs/devfs/devfs_vnops.c M sys/sys/conf.h _____________________________________________________________________________________________________________ Commit: db5459b4b598b123b1faa7ebf50cbfebacc25e0f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=db5459b4b598b123b1faa7ebf50cbfebacc25e0f Author: Alan Cox (Sat 15 Aug 2026 07:15:36 BST) Committer: Alan Cox (Mon 12 Oct 2026 01:46:29 BST) arm64 vfp: eliminate nested critical sections At two out of three call sites to vfp_restore_state_common(), the caller must use critical_{enter,exit}() to prevent preemption between its call to vfp_restore_state_common() and other actions, notably its call to sve_enable(). So, it is arguably better to make vfp_restore_state_common()'s caller responsible for performing critical_{enter,exit}() and simply perform CRITICAL_ASSERT() inside vfp_restore_state_common(). (cherry picked from commit 189ee41b6cc3b0d92c291cc854d9781afec23ad4) M sys/arm64/arm64/vfp.c _____________________________________________________________________________________________________________ Commit: e4ac63ef407eec42945b49e7e0d20cfffc24f685 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e4ac63ef407eec42945b49e7e0d20cfffc24f685 Author: Alan Cox (Fri 7 Aug 2026 22:51:04 BST) Committer: Alan Cox (Mon 12 Oct 2026 00:04:24 BST) arm64: close a race in SVE register management While testing an unrelated pmap change, D58708, that dramatically reduces the number of TLBI instructions performed, and likely the timing of unrelated events, I started seeing "Storing an invalid VFP state" panics in vfp_save_state_common(). However, the origin of this panic is elsewhere, in the else branch of sve_restore_state(). Specifically, my pmap change seems to have increased the likelihood that the thread executing the else branch would be preempted by another thread between the critical_exit() inside the else branch's call to vfp_restore_state_common() and its own call to critical_enter(). Prior to expanding the scope of the else branch's critical section, the MPASS added by this change would fire, catching the problem at its source, rather than later in vfp_save_state_common(). (cherry picked from commit 6fa9c2b1d2824034268646e0744e5e010155ffaf) M sys/arm64/arm64/vfp.c _____________________________________________________________________________________________________________ Commit: 63e5c83e8db3ad46923a8d97d2d72bd00f178111 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=63e5c83e8db3ad46923a8d97d2d72bd00f178111 Author: Vinicius Ferrao (Sun 4 Oct 2026 22:28:25 BST) Committer: Rick Macklem (Sun 11 Oct 2026 03:56:22 BST) nfs_nfsdstate.c: Add an extra safety belt check for the backchannel I do not think that xp_p2 can be NULL at this point, but add an extra safety belt, just in case. (cherry picked from commit a52c50b4b7c2652954ef1bd34710a4b1fc8ef391) M sys/fs/nfsserver/nfs_nfsdstate.c _____________________________________________________________________________________________________________ Commit: 69dc3d97a3c6385334d7056e8c9d63238c7033a9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=69dc3d97a3c6385334d7056e8c9d63238c7033a9 Author: Vinicius Ferrao (Sun 4 Oct 2026 22:07:30 BST) Committer: Rick Macklem (Sun 11 Oct 2026 03:54:38 BST) clnt_vc.c: Fix handling of broken TCP connections After more than, I don't know, maybe 10k operations: mount, copy, remove, verify and unmount cycles, one cp command hung in close() / ncl_flush and never recovered. The machine and the mount continued to work normally through a new connection, but the writes using the old connection stayed frozen. I did not understand exactly what happened. I traced what appears to be the issue in the code. My current understanding is that clnt_vc_soupcall() saw the EOF and woke the caller waiting for RPC replies, but one caller remained blocked in sosend(). That thread continued holding a reference to the old client, preventing it from being completely cleaned up. The attached patch calls socantsendmore() when EOF is received, which should wake the blocked sender and let the normal reconnect code replace the connection. (cherry picked from commit 49bec8c3dc58cf8e944f9bbbbea07e7e856ad897) M sys/rpc/clnt_vc.c _____________________________________________________________________________________________________________ Commit: 28eefc7da0caa56e1e2761d7f06c126267c33d72 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=28eefc7da0caa56e1e2761d7f06c126267c33d72 Author: Rick Macklem (Sun 4 Oct 2026 21:29:43 BST) Committer: Rick Macklem (Sun 11 Oct 2026 03:53:18 BST) clnt_vc.c: Fix handling of backchannel xprt When clnt_vc_destroy() is called, it might not be the current connection. Without this patch, if it is not the current connection, xp_p2 is set NULL and xprt is released when it should not be released. This patch adds a check for "current connection" to fix the problem. Found during testing to the client RDMA code, but could happen for TCP as well. (cherry picked from commit 81a6514689cefdaa5c92b5539ae885ec8c6b3336) M sys/rpc/clnt_vc.c _____________________________________________________________________________________________________________ Commit: 7fdc748c0c3d0f2f7c1c0725f9ff2a5085fc36ec URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7fdc748c0c3d0f2f7c1c0725f9ff2a5085fc36ec Author: Kevin Bowling (Fri 28 Aug 2026 01:14:02 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:21:08 BST) amd64, powerpc: Enable tpm(4) in supported kernels tpm(4) was removed from amd64 GENERIC because it broke suspend and resume. The preceding lifecycle, state-save, interrupt, locality, and teardown fixes address those failures for both TPM 1.2 and TPM 2.0. Restore the driver to amd64 GENERIC and MINIMAL, where TPM entropy harvesting remained enabled. Enable the driver and entropy harvesting in the MPC85XX and QORIQ64 configurations, which already provide FDT, spibus, and the platform SPI controller required by FDT-attached TPMs. Leave the generic AIM and POWER configurations unchanged because they have no TPM attachment bus. The TPM 1.2 path completed repeated S3 cycles and command tests on ThinkPad T430 and T440p systems. The TPM 2.0 path completed repeated device and full-system suspend/resume cycles on a ThinkPad P51. The PowerPC configuration matrix was checked to retain tpm(4) only where its FDT SPI attachment path is present. PR: 291067 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291067 ) Reviewed by: kevans Tested by: Marek Zarychta (tpm1.2) Fixes: 16f8ea6a81b5 ("amd64: Remove tpm(4) from GENERIC for now") Relnotes: yes Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59247 (cherry picked from commit cb2964f840e873d03a0739f41eed5921922f93a0) M sys/amd64/conf/GENERIC M sys/amd64/conf/MINIMAL M sys/powerpc/conf/MPC85XX M sys/powerpc/conf/QORIQ64 _____________________________________________________________________________________________________________ Commit: 5329e07a6f50bff44c5c034d5aeee13187c9b242 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5329e07a6f50bff44c5c034d5aeee13187c9b242 Author: Quentin Thébault (Fri 7 Aug 2026 15:02:08 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:19:00 BST) bhyve: tpm: allow the last dword of the CRB command buffer The bounds check rejected any access ending exactly at the end of the register block, so a four byte write at offset 0xffc was refused, returning EINVAL and killing the VM. PR: 291063 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291063 ) Fixes: 75909086a45d ("bhyve: allow read/write to full CRB buffer") Sponsored by: Defenso Signed-off-by: Quentin Thébault Reviewed-by: aokblast, kevans, markj Pull-Request: https://github.com/freebsd/freebsd-src/pull/2362 (cherry picked from commit 4505445ccdb9555efc23262a971a18ca03486969) M usr.sbin/bhyve/tpm_intf_crb.c _____________________________________________________________________________________________________________ Commit: 99229e58da67a6fa37f2d89fead6b2b5aed0bba7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=99229e58da67a6fa37f2d89fead6b2b5aed0bba7 Author: Corvin Köhne (Thu 2 Apr 2026 07:36:40 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:18:43 BST) bhyve: allow read/write to full CRB buffer For some reason, we've incorrectly calculated the size of the CRB data buffer register. There's no need to divide the CRB data buffer size by 4. We should allow access to the whole buffer instead. Reviewed by: markj Sponsored by: Beckhoff Automation GmbH & Co. KG Pull Request: https://github.com/freebsd/freebsd-src/pull/2169 (cherry picked from commit 75909086a45da3c5aeaff8152728111cf798c6bc) M usr.sbin/bhyve/tpm_intf_crb.c _____________________________________________________________________________________________________________ Commit: bf62832039d7e72cbbd64ba94c2a80da340f2e83 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bf62832039d7e72cbbd64ba94c2a80da340f2e83 Author: Olivier Cochard (Mon 14 Sep 2026 15:21:11 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:17:59 BST) tpm: crb: check the error bit only after taking locality tpmcrb_transmit() read CRB_CTRL_STS before requesting locality 0. An AMD Pluton fTPM (like FrameWork Desktop) using the plain CRB start method reads the control area as all-ones until locality is assigned, so bit 0 looks like a stuck tpmSts and every command failed with EIO. With RANDOM_ENABLE_TPM the harvester retries every 10 seconds, so this printed "Device has Error bit set" forever. Reviewed by: kbowling Approved by: kbowling Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D59661 (cherry picked from commit 7c375af72ef3f631e89431ae32a855d806e6ec98) M sys/dev/tpm/tpm_crb.c _____________________________________________________________________________________________________________ Commit: a81e324a06c5921287c642376a6f73d7729dd469 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a81e324a06c5921287c642376a6f73d7729dd469 Author: Kyle Evans (Wed 9 Sep 2026 10:00:28 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:17:45 BST) tpm: crb: make the Pluton startmethod more resilient The original implementation assumed that the start/reply doorbells lived within the device _CRS space, but that isn't always the case. On my AMD Ryzen 7640U-based frame.work laptop, device memory runs from 0xc0500000-0xc0500fff while the doorbells are up around 0xc0508000. Stop sanity checking the addresses and just map them in to work reliably whether they're within the device range or not. pluton_wait_reply is cribbed from tpm_wait_for_u32, but rewritten slightly to read in just one place and to read one last time before giving up at the end of the timeout, just in case. Reviewed by: kbowling Differential Revision: https://reviews.freebsd.org/D59327 (cherry picked from commit 6af3031c951614f2a42dfd67ce2c3a48ee8314ae) M sys/dev/tpm/tpm_crb.c _____________________________________________________________________________________________________________ Commit: 63276290b4e239b4794d52834e1a5fd5095c162d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=63276290b4e239b4794d52834e1a5fd5095c162d Author: Joseph Mingrone (Sat 26 Sep 2026 20:12:47 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:17:21 BST) tpm: Do not use timed tsleep() while polling during cold boot Commit 4e0f283fb97a made tpm_tis12_init() wait for TPM_STS_CMD_READY after aborting any command. The wait is implemented by the driver's existing tpm_waitfor_poll() loop, which sleeps with a one-tick tsleep() between status reads. Until now, that loop only ran from the resume and command paths after boot. From tpm_attach() it can panic with "timed sleep before timers are working" when the TPM is attached from ACPI during cold boot and the chip does not report ready on the first status read. Before 4e0f283fb97a, tpm_tis12_init() wrote TPM_STS_CMD_READY and returned without waiting, so the polling loops only ran after boot. tpm_request_locality() had the same latent hazard but its fast path returns before sleeping whenever locality is already active. Nothing calls wakeup() on the channels used by these polling loops, so the sleeps are pure delays. Use pause_sig(), which falls back to DELAY() while the kernel is cold and returns EWOULDBLOCK, a value these loops already tolerate. The c argument to tpm_waitfor_poll() is now unused. It is left in place to keep this change minimal for MFC and can be removed in a follow-up. Reviewed by: kbowling Fixes: 4e0f283fb97a ("tpm: Bound TPM 1.2 locality ownership") Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60050 (cherry picked from commit 943686575d818c5cd3aaf2dfb912fabfb7dd7872) M sys/dev/tpm/tpm.c _____________________________________________________________________________________________________________ Commit: 74f891188b849b0e696bb6c52ad34fb5468edd0d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=74f891188b849b0e696bb6c52ad34fb5468edd0d Author: Kevin Bowling (Sun 13 Sep 2026 15:57:16 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:11:01 BST) tpm_tis: Quiesce interrupts before registering a handler The current interrupt path uses the IRQ resource value directly as the LPC SIRQ selector in TPM_INT_VECTOR and already restricts it to 1 through 15. This is a driver limitation: a parent interrupt number need not equal an LPC SIRQ channel, and SPI TPMs can use a separate parallel interrupt. On the reported system with ACPI IRQ 45, the existing range check runs after handler registration and returns before disabling firmware interrupt delivery. This can leave a polling device with a handler on an asserted source. Disable and verify interrupt delivery before registering a handler or starting common TPM services. Preserve the existing range policy, using polling without registering a handler for routes rejected by that check, and release their IRQ resources. Keep a failed setup's potentially stale output cookie out of the device state; the interrupt framework may already have removed that handler. Cancel timed-out locality requests in the shared request helper, covering both interrupt programming and commands. Permit attach after a locality timeout if the enable register proves delivery is already off, allowing later command recovery. If delivery remains enabled and cannot be quiesced, fail attach instead of exposing a device node for possible later recovery. Report this as a quiesce failure since locality acquisition as well as register programming can fail. On detach, publish dying and serialize with commands before quiescing TPM interrupt delivery. Do this for polling devices too, since firmware may have re-enabled delivery and resume-time quiescing may have failed. Quiesce before common release destroys the command lock and before removing any handler. Report hardware quiesce failure while completing software cleanup. Reported by: adrian Reviewed by: adrian, imp Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59645 (cherry picked from commit a22eb754c4bb7e3adffdaa9b2c3ddf24eda89a9c) M sys/dev/tpm/tpm_tis_core.c _____________________________________________________________________________________________________________ Commit: 606ce72478b7f18aebc23df83e34f126b595623a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=606ce72478b7f18aebc23df83e34f126b595623a Author: Kevin Bowling (Thu 27 Aug 2026 15:06:55 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:10:27 BST) tpm20: Move user copies outside the lifecycle lock The TPM 2.0 character-device methods held the global device lock while uiomove() accessed user memory. User page faults could therefore delay suspend or detach even though the read response was already buffered. Add a per-open sleepable lock to serialize operations on each response buffer. Stage commands under that lock before acquiring the device lock, and copy them into the response buffer only after the lifecycle checks succeed. This preserves an unread response when suspend or detach rejects a write. Release the device lock before copying buffered responses out. Also advance the response offset by the bytes actually copied when uiomove() returns after a partial transfer. Validated on an Intel TPM 2.0 TIS device. PCR reads and GetRandom passed under 16-process mixed command load. A response was consumed correctly in 5-byte, 7-byte, and remainder reads. Module unload/reload recreated the device and entropy source without lock diagnostics. Source inspection confirmed rejected writes preserve unread responses. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59245 (cherry picked from commit 74c539fd1cefdbc993411274c613434c3f23b4b1) M sys/dev/tpm/tpm20.c M sys/dev/tpm/tpm20.h _____________________________________________________________________________________________________________ Commit: ef68bf61d8db343a812a37016d7f12b6f6e291ef URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ef68bf61d8db343a812a37016d7f12b6f6e291ef Author: Kevin Bowling (Thu 27 Aug 2026 13:48:30 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:10:06 BST) tpm20: Correct 32-bit register helpers OR4() reads only the low byte before writing the complete 32-bit register. Preserve all register bits by using a matching 32-bit read. Make BIT() produce an unsigned value so masks containing bit 31 do not rely on a signed left shift into the sign bit. OpenBSD carries the same change. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59244 (cherry picked from commit f613a43c366600e8c388c3200f74c6dd27f8a7a2) M sys/dev/tpm/tpm20.h _____________________________________________________________________________________________________________ Commit: 3904c7a1c489a419c4691b7a58d2d1e2a3e71d53 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3904c7a1c489a419c4691b7a58d2d1e2a3e71d53 Author: Kevin Bowling (Thu 27 Aug 2026 13:48:05 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:09:50 BST) tpm20: Release transport state after command failures Once a transport acquires locality, several TIS and CRB error paths return without relinquishing it. They can also leave a partial FIFO transaction or an active CRB command for the next operation to inherit. Route post-locality exits through common cleanup. Reset the TIS command state on every attempt. For CRB, cancel an active failed command when necessary, request the idle state, and relinquish locality even when the state transition itself fails. Successful command handling is unchanged apart from sharing the same cleanup path. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59243 (cherry picked from commit 2fe8510b0a06ad577789ece7be8c9319c8ce3d06) M sys/dev/tpm/tpm_crb.c M sys/dev/tpm/tpm_tis_core.c _____________________________________________________________________________________________________________ Commit: bd54c7bd59dfcc9e6243377f9c560099d2b1f65f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bd54c7bd59dfcc9e6243377f9c560099d2b1f65f Author: Olivier Cochard (Fri 26 Jun 2026 20:20:30 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:09:23 BST) tpm_tis: release TPM resources after reading response Per TIS 1.3 section 5.6.12, write commandReady to TPM_STS after reading the response so the TPM can free its ReadFIFO and other internal resources. The subsequent tpmtis_go_ready() provides the second write the spec describes and waits for the state transition. PR: 295103 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295103 ) Reported by: Benoit Sansoni Reviewed by: kevans Approved by: kevans Differential Revision: https://reviews.freebsd.org/D57841 (cherry picked from commit e4c50d86796d07cf90e6a683234e1c0e9ca5e03c) M sys/dev/tpm/tpm_tis_core.c _____________________________________________________________________________________________________________ Commit: 8e85e2ea8e44fe27aa93593f86ce45e1aef9507b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8e85e2ea8e44fe27aa93593f86ce45e1aef9507b Author: Ed Maste (Tue 9 Dec 2025 20:29:05 GMT) Committer: Colin Percival (Sun 11 Oct 2026 02:08:12 BST) bsdinstall: Drop "Technology preview" from package sets And refer to dist sets as "legacy." We're planning on turning off dist sets in 16.0 (the code will remain in the tree, but disabled by default) so we'd like to encourage users to install 15.2 systems using package sets in order to ease the upgrade path to 16.0. Reviewed by: cperciva Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D54156 (cherry picked from commit dac74b20c706b1f73986fb40dac27ed85c1d2850) M usr.sbin/bsdinstall/scripts/auto M usr.sbin/bsdinstall/scripts/jail _____________________________________________________________________________________________________________ Commit: 48d997f4366f65501f875ee5100d2b2be01eac7a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=48d997f4366f65501f875ee5100d2b2be01eac7a Author: Kevin Bowling (Thu 27 Aug 2026 13:46:19 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:07:20 BST) tpm_tis: Close interrupt wait races The TIS interrupt handler can acknowledge and signal an event after the waiter checks the device status but before it enters tsleep(). Since the handler is MPSAFE, the command lock does not close this window. A lost wakeup can delay a completed command for its full timeout, up to 40 seconds for long TPM 2.0 operations. Publish the expected event under an interrupt mutex and use a generation counter to record matching interrupts. Recheck the device predicate without the mutex because register access may sleep on a SPI transport, then compare the generation before atomically waiting on a condition variable. This closes the check-to-sleep race without placing sleeping bus operations under a mutex. Use an absolute deadline while retrying the predicate after wakeups. Apply the same scheme to locality acquisition, which had an equivalent race. Leave the expected event published while polling so the attach-time test can still prove that an advertised interrupt arrived. Regression-tested the polling fallback on two TPM 2.0 FIFO systems with 200 concurrent PCR reads per system and repeated device suspend/resume. Neither ACPI device exposes an IRQ, so the interrupt-mode path remains hardware unvalidated. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59241 (cherry picked from commit add771d5e62ae12f2494fb30a93cd5f1067ac34d) M sys/dev/tpm/tpm20.h M sys/dev/tpm/tpm_tis_core.c _____________________________________________________________________________________________________________ Commit: 0a843d2b14c9cd32e850d18bb7c133adc4564d44 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0a843d2b14c9cd32e850d18bb7c133adc4564d44 Author: Kevin Bowling (Thu 27 Aug 2026 13:42:28 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:07:04 BST) tpm20: Harden the common device lifecycle Mark the device as dying before teardown and destroy the character device before freeing its private state or lock. This prevents cdev methods from entering with a freed internal buffer or a destroyed sx. Check the teardown state in command paths, honor failures from the cdev private data interface, and publish teardown before waiting for the lifecycle lock. Keep that lock across TPM retry delays so commands cannot interpose and private state remains pinned, but abort before the next retry once teardown begins. Block new cdev operations after a successful Shutdown(STATE). Keep the suspend gate and the TPM command under the same lock so a userspace command cannot invalidate the saved state before S3 entry. Clear the gate only after Startup(STATE) succeeds. Keep entropy harvesting scheduled after a transient command or suspend failure, but stop it while suspended or once teardown begins. Queue the next timeout while holding the lifecycle lock so release cannot miss a concurrent requeue. Validated on two TPM 2.0 FIFO systems. Each completed five device suspend/resume cycles, rejected both new and already-open cdev operations with EBUSY while suspended, completed 200 concurrent PCR reads, and detached cleanly while four PCR readers were active. A ThinkPad P51 also completed a full S3 cycle with PCR 0 unchanged and 50 successful reads after resume. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59240 (cherry picked from commit a3daa1e8f5988045e8042fb3fe376384a43b85ee) M sys/dev/tpm/tpm20.c M sys/dev/tpm/tpm20.h _____________________________________________________________________________________________________________ Commit: 55c97a16dfcc1237ba8fdd37175987ca3281b29c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=55c97a16dfcc1237ba8fdd37175987ca3281b29c Author: Kevin Bowling (Wed 26 Aug 2026 11:54:59 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:06:47 BST) tpm_tis: Restore validated interrupts after resume TIS interrupt routing and enable registers may lose their state across S3, while the driver retains its software indication that interrupts work. A subsequent locality or command wait can then sleep for an interrupt that cannot arrive. Remember whether interrupts worked before suspend and restore the vector, pending status, and enable mask before TPM2_Startup. Put the transport in polling mode first; the interrupt handler promotes it back to interrupt waits only after observing an interrupt from the restored configuration. If register restoration fails, Startup and subsequent commands continue using polling. Preserve the initial interrupt-enable mask, including the firmware's trigger and polarity selection proven by the attach time interrupt test, and restore that exact mask rather than accepting post-S3 defaults. Program the same safe baseline for polling devices during attach and resume. Acquire locality, disable global interrupt delivery, and acknowledge pending status so firmware cannot leave interrupts armed without a handler. Use the same register programming helper during attach and resume, and stop trying to configure interrupts after a locality acquisition failure. Three consecutive device suspend and resume cycles completed on a Lenovo TPM2 FIFO device without an IRQ resource. GetRandom succeeded after each resume, and module detach completed without errors. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59197 (cherry picked from commit a229432d3ed05282f7cf1510a06d6d93d554c1df) M sys/dev/tpm/tpm20.h M sys/dev/tpm/tpm_tis_core.c _____________________________________________________________________________________________________________ Commit: 2f85c15b52e812f68280ab3eea0af49389465c48 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2f85c15b52e812f68280ab3eea0af49389465c48 Author: Kevin Bowling (Wed 26 Aug 2026 11:51:58 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:06:34 BST) tpm20: Initialize common state before testing TIS interrupts The TIS attach path tested its interrupt by transmitting GetRandom before tpm20_init() allocated the internal command buffer. A TPM2 FIFO device with a usable IRQ could therefore dereference a null internal_priv. Initialize the common TPM2 state before running the interrupt test. Make common cleanup safe for partially initialized devices and leave cleanup to the attachment after tpm20_init() fails, avoiding duplicate release of the lock, command buffer, and random-source state. Clear the IRQ resource pointer after releasing it when interrupt handler setup fails so the later polling-mode detach does not release it twice. Free the internal command allocation through its object pointer rather than relying on its embedded buffer being the first structure member. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59196 (cherry picked from commit a0da653aaeae313479f2ab37d0faca483f530fa6) M sys/dev/tpm/tpm20.c M sys/dev/tpm/tpm20.h M sys/dev/tpm/tpm_tis_core.c _____________________________________________________________________________________________________________ Commit: 7a4e895d3649e188e1ac5c73888acfaedfe22880 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7a4e895d3649e188e1ac5c73888acfaedfe22880 Author: Kevin Bowling (Wed 26 Aug 2026 11:49:48 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 02:06:06 BST) tpm20: Validate suspend and resume commands The internal TPM2_Shutdown and TPM2_Startup paths ignored both transport failures and the TPM response. Suspend could therefore enter S3 without saved TPM state, while resume could restart entropy harvesting after a failed state restoration. Build both commands through one helper, validate their response framing and TPM return codes, and propagate failures. Retry the standard RETRY and TESTING responses with bounded exponential backoff. Accept TPM_RC_INITIALIZE from Startup because firmware may already have started the TPM during resume. Do not enter S3 after an unsuccessful state save, and do not restart the entropy task when TPM state restoration failed. If Shutdown fails after the entropy task was drained, requeue it before returning so an aborted suspend does not permanently stop harvesting. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59195 (cherry picked from commit 726f096f905c8e2ad2ac0035355fc2b4ed2718fe) M sys/dev/tpm/tpm20.c M sys/dev/tpm/tpm20.h _____________________________________________________________________________________________________________ Commit: fdc186e9793006b08f4954d45c26a58706972aa3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fdc186e9793006b08f4954d45c26a58706972aa3 Author: Chuck Silvers (Fri 20 Mar 2026 18:48:44 GMT) Committer: Kevin Bowling (Sun 11 Oct 2026 02:05:49 BST) tpm: fix multi-threaded access with per-open state The TPM driver currently has a single buffer per instance to hold the result of a command, and does not allow subsequent commands to be sent until the current result is read by the same OS thread that sent the command, with a timeout to throw away the result after a while if the result is not read in a timely fashion. This has a couple problems: - The timeout code has a bug which causes all subsequent commands to hang forever if a different OS thread tries to read the result before the OS thread which sent the command, and the OS thread which sent the command never tries to read the result. - Even if the first problem is fixed, applications expect to be able to read the result from a different OS thread than the OS thread which sent the command. The particular case that we saw was a go application where the go runtime scheduled the goroutine which read the result to a different OS thread from one where the goroutine that sent the command ran, and there's no way to force these to always run on the same OS thread. Fix all of this by replacing the global result buffer with a per-open result buffer via devfs_set_cdevpriv(), so that we no longer need to block subsequent commands until the results of a previous command are retrieved or care about which OS thread is reading the result of a command. Sponsored by: Netflix Reviewed by: olivier, imp Differential Revision: https://reviews.freebsd.org/D52328 (cherry picked from commit 1fd43ee968c497223254038483685d9f9c68791b) M sys/dev/tpm/tpm20.c M sys/dev/tpm/tpm20.h M sys/dev/tpm/tpm_crb.c M sys/dev/tpm/tpm_if.m M sys/dev/tpm/tpm_tis_core.c _____________________________________________________________________________________________________________ Commit: e10bda7089033ece33bec182e748a8361cf5764e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e10bda7089033ece33bec182e748a8361cf5764e Author: David E. O'Brien (Tue 28 Oct 2025 03:53:43 GMT) Committer: Kevin Bowling (Sun 11 Oct 2026 02:05:00 BST) random: TPM_HARVEST should have been named RANDOM_ENABLE_TPM * Enable RANDOM_ENABLE_TPM by default * The commit of TPM_HARVEST failed to add it to NOTES so that the LINT kernel would build the code. Fixes: 4ee7d3b0118c82e651712bb65da53d08e78cd7b1 Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D53460 Include the follow-up header guard fix so RANDOM_ENABLE_TPM also provides the entropy harvest task in struct tpm_sc. (cherry picked from commit 3deb21f1afd5c4abfd9cb93ca120097a841536c5) (cherry picked from commit f1b9c1aafd8496c5bfdbc2be57bcfecfe58f12a8) M share/man/man4/random.4 M sys/amd64/conf/GENERIC M sys/amd64/conf/MINIMAL M sys/arm/conf/GENERIC M sys/arm64/conf/std.arm64 M sys/conf/NOTES M sys/conf/options M sys/dev/tpm/tpm20.c M sys/dev/tpm/tpm20.h M sys/riscv/conf/GENERIC _____________________________________________________________________________________________________________ Commit: 6a1b101a9f3764f690128dcef2ccea3218680a3e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6a1b101a9f3764f690128dcef2ccea3218680a3e Author: Kevin Bowling (Sun 30 Aug 2026 09:25:09 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 01:57:06 BST) e1000: Configure PCH low-power link modes for suspend The PCH suspend path kept a wake link fully powered and did not restore the negotiated EEE modes after its stop-time reset. Intel provides the ULP entry and exit machinery in the shared code, but FreeBSD did not invoke its Sx policy. Enter ULP on LPT and newer PCH controllers when wake is armed without directed-unicast, multicast, or broadcast filters, which ULP cannot preserve. For a link retained by host wake or management, restore the 100BASE-TX and 1000BASE-T LPI controls selected by the local advertisement and the cached link-partner ability. Keep these power reductions best-effort: wake filters and PME are already configured independently, and a ULP or EEE failure is logged without converting an optional power optimization into a suspend failure. The existing PCH resume workaround forcibly exits ULP and clears automatic Sx LPI state before normal initialization. Validated on a ThinkPad T440p with an I217-LM. FBT confirmed that the helper received the magic-wake mask during device suspend. The shared ULP helper returned its documented no-op for the initial I217 device ID. A full S3 cycle resumed cleanly. On a ThinkPad P51 with an I219, full S3 waited for a magic packet and then resumed with the 1-Gbps link and traffic restored. Sponsored by: BBOX.io (cherry picked from commit 52fbff96549904933898908644f3a99e5cd4cdca) M share/man/man4/em.4 M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: 0cab2bc676d7f978ebda6cfff324990c70cdb64f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0cab2bc676d7f978ebda6cfff324990c70cdb64f Author: Kevin Bowling (Sun 30 Aug 2026 07:06:02 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 01:55:44 BST) e1000: Rework Wake-on-LAN policy and programming The driver used the NVM APME default as both the hardware-support decision and the mutable filter mask. Consequently, an NVM-disabled but capable port did not advertise wake support, disabling a wake mode once could keep it disabled across later suspends, and directed-unicast wake could never be selected. Require the PCI power management capability to report D3hot PME support before advertising or arming wake. A PM capability alone does not mean the function can signal PME from the state used during system sleep. Separate the board and port capability matrix from the NVM-selected magic packet default. Read the proper per function NVM word on igb controllers, cover the newer PCH generations, and retain the documented legacy, multi-port, and OEM restrictions. Decode the distinct APM Enable locations used by 82544, 82541EI/82547EI, and the later 8254x parts. Do not advertise wake on the 82541ER, whose power-management logic cannot assert PME for wake events. For I210/I211 internal iNVM, use the hardware-loaded WUC.APME state; the shared reader does not expose the optional Initialization Control 3 word. Build WUFC from the enabled ifnet capabilities for each suspend. Reconstruct RAR0, the multicast table, and the receive filter after the stop-time reset so unicast and multicast wake use the current interface state. Fill the MTA on legacy PCI/PCI-X controllers and 82575 through 82580 when the address list overflows; their multicast wake matchers require the indexed MTA bit and do not use RCTL.MPE as a substitute. Do not access PF-only wake CSRs from the igb VF suspend and resume paths. Use the shared BM page access helpers and propagate every PHY receive address and wake-register programming failure. On resume, perform the required LCD reset before clearing host PHY-wake ownership, report the saved PHY or MAC wake cause, and clear PCI PME after removing the device wake source. Preserve management engine wake ownership throughout. Keep WUC.APME set only when early 82545EM/82546EB manageability needs its D3 clock-tree workaround; ordinary host wake uses PCI PME. Keep the link powered while host wake is armed. With no host wake, evaluate management pass-through at each suspend. Leave a management-owned link untouched and keep PCI PME enabled. Otherwise, use the Intel shared code PHY power-down hook, or its matching SerDes shutdown hook on igb fiber and SerDes devices. Track that state and restore the link without another PHY reset before hardware initialization. Ordinary ifconfig down behavior is unchanged. Apply and undo the PCH Sx workarounds across their full supported range. Use controller-specific CTRL and laser semantics, and restore RCTL when wake setup fails. Always run the pending PCIe-transaction drain and bus-master-disable sequence before D3. Suspend reports a wake programming failure rather than sleeping without wake, shutdown logs it and continues through the fencing sequence. Do not apply the ICH/PCH IGP3 D3 power-down workaround to igb controllers. The merged driver inherited an unconditional call from the em-only driver. On 82575 and 82576 it asserted CTRL.PHY_RST after the wake filters were armed, preventing the link from receiving wake traffic. The implementation was checked against the Intel controller data sheets, the Intel Linux e1000, e1000e, and igb lifecycle code, DPDK, and the Intel FreeBSD em-7.7.8 and igb-2.5.31 drivers. The 8254x audit also covered the PCI/PCI-X Software Developer's Manual, the 82541/82547 NVM guide, and the 82544, 82545, and 82546 specification updates. The out of tree drivers carry the family-specific power down and reset block hooks but do not call them from suspend. DPDK supplies the stop/start pairing. On PCH controllers including an 82579LM, I217-LM, and various I219s, device-only D3 tests observed PME and BM_WUS.MAG for a magic packet, no PME with every host filter disabled, and BM_WUS.EX with only directed-unicast wake enabled. With dev.em.0.wake enabled, ACPI S3 slept until a delayed magic packet and resumed with the interface operational. After wake traffic stopped and resume completed, a second cycle again waited for a newly delayed magic packet. Traffic restored after both host and firmware wake were enabled. An 82574L woke from S3 after one magic packet, reported MAC wakeup status, and returned with link and traffic operational. On 82571EB and 82573L adapters, device-only D3 tests observed WUS.MAG and PCI PME status after a magic packet, then returned to D0 with link and traffic operational. Full S3 did not wake either add-in card. The positive device tests and negative S3 isolate the remaining failure outside the MAC filter programming and my cards may lack aux power wiring because the link was off in S3. On 82575EB and 82576 adapters, pre-fix device only D3 tests left PMCSR at 0x2103 despite ten verified magic packets, and the handoff showed CTRL.PHY_RST asserted. With the em-family gate, identical tests changed PMCSR from 0x2103 to 0xa103, resume reported WUS.MAG, and both links returned operational. S3 testing on these separated controller from board behavior. An Intel 82576 card retained link in S3 and woke the system from a delayed magic packet, reported WUS.MAG, and returned with interface operational. The tested 82575 add-in card lost its link LED in S3 and retained no WUS cause after manual resume, although its identical D3hot test passed. That points the 82575 S3 result to card aux power wiring as well. D3 tests were performed on I210 and I350 but S3 has not yet been attempted on them. lem(4) testing has not been attempted yet. Community reports of success and failure are welcome. PR: 232708, 238411, 295443, 296675 Sponsored by: BBOX.io (cherry picked from commit 46cf612d98e99967204185829fe829350cfa51a1) M share/man/man4/em.4 M sys/dev/e1000/e1000_ich8lan.c M sys/dev/e1000/e1000_ich8lan.h M sys/dev/e1000/e1000_regs.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 2f49578f3d6a1e440f6392136db6e920309511e3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2f49578f3d6a1e440f6392136db6e920309511e3 Author: Kevin Bowling (Sat 29 Aug 2026 03:44:59 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 01:53:18 BST) e1000: Recover from igb(4) controller DEV_RST CTRL.DEV_RST resets every port on an 82580 and newer igb device. Hardware reports the event to each affected function through ICR.DRSTA and requires software to reinitialize the port registers and descriptor rings. The driver neither enabled nor handled this cause, so a reset initiated by another function could leave a running interface using stale state. In FreeBSD, we do not currently send this, but other OSes including Linux do, so a PF passed through to such a guest or FreeBSD as a guest running with a passthrough PF on the same controller can be wedged. Enable DRSTA for 82580 and newer PFs in both MSI-X and shared MSI/legacy modes. Bit 30 is reserved on 82575 and is the TCP timer on 82576, so leave it masked on those parts. Latch the event without programming port registers from the interrupt filter. Defer the iflib reset request to admin-task context because the request takes STATE_LOCK. Use IAM to auto-mask shared interrupts on the first ICR read. Keep admin, queue-vector, and interrupt-rearm work quiesced until initialization succeeds. Follow the device reset handshake before the first CTX-owned register programming: wait for GCR to report that the device reset and pending PCIe transactions have completed, then acknowledge STATUS.DEV_RST_SET. Also verify EEPROM autoload and PF reset completion on I350 and newer parts. This follows the Intel 82580 Datasheet, section 4.3.2, and the Intel I350 Datasheet, section 4.3.4. Detect a completed reset from STATUS even when the interface was down. A bounded timeout falls back to the requested port reset. Retain staged reset state through the complete initialization. Check ICR.DRSTA, GCR, and STATUS.DEV_RST_SET after all registers and rings have been rebuilt. If another reset arrived while interrupts were masked, reject the incomplete initialization and repeat the handshake. If both MMIO and PCI configuration space have disappeared, leave the interface stopped rather than queueing an endless recovery loop. Validated on an I210 with INVARIANTS and WITNESS. Injecting CTRL.DEV_RST while igb0 was running recovered through a full iflib initialization in both MSI-X and MSI modes without a panic. STATUS.DEV_RST_SET and GCR.DEV_RST_IN_PROGRESS cleared, enabled DMA coalescing was restored. Injecting the reset while igb0 was down left DEV_RST_SET latched; the first ifconfig up consumed it. On a dual-port 82580, synthetic DRSTA injection produced one complete reinitialization in four-queue MSI-X and shared-MSI modes. Five repeated events produced five clean reinitializations without a panic or watchdog. A raw CTRL.DEV_RST test is not counted because Intel's shared code deliberately avoids that unreliable operation on 82580. On an I350, a real device-wide reset initiated by a sibling function produced one reinitialization while igb0 was running and restored its carrier and enabled state. With igb0 down, STATUS.DEV_RST_SET remained latched until the first up, which consumed it and restored the correct state. The host remained healthy in both cases. Sponsored by: BBOX.io (cherry picked from commit 4674cc87a8d013b0f2337329c4314cb9fc29e02b) M sys/dev/e1000/e1000_82575.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: ea3fdee608a9fb6f690e22392c9948d45d350e1b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ea3fdee608a9fb6f690e22392c9948d45d350e1b Author: Kevin Bowling (Sat 29 Aug 2026 03:38:43 BST) Committer: Kevin Bowling (Sun 11 Oct 2026 01:49:57 BST) e1000: Correct igb(4) DMA coalescing register programming The disabled path wrote the complement of DMAC_EN to DMACR. That set every other field, including reserved bits, the one-shot EXIT_DC command, watchdog enables, receive threshold, and PCIe Lx selection. When DMA coalescing was enabled, the requested watchdog and Lx-delay values were ORed into their reset values rather than replacing the fields. PCIEMISC.LX_DECISION was also cleared, preventing DMACR.DMAC_Lx from controlling PCIe low-power entry. Disable coalescing by clearing only DMAC_EN and retaining the documented DMAC_Lx policy and watchdog fields. On enable, replace the variable fields under their masks, select DMA requirements for PCIe low-power entry, and program the loopback and BMC watchdog policies independently of prior state. Apply this consistently to I350, I354, and I210 while preserving the I354-specific timer units. Leave I210 reserved fields at their required encodings and do not expose the ineffective control on I211. Validated on I210 and I350 hardware. Repeated I210 enable, disable, and reset cycles preserved the watchdog, Lx, TTLX, and LX_DECISION fields. On I350, dmac values of 250, 1000, and 10000 programmed DMACWT as 0x7, 0x1f, and 0x138, respectively, while retaining a four-tick TTLX and leaving the reserved and watchdog fields stable. A real reset initiated by a sibling function restored the enabled dmac=1000 tuple and a down interface path restored the disabled tuple. Sponsored by: BBOX.io (cherry picked from commit 245437113020582f3622c9bcc6d841b7d9dc8f96) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: a42045af28db979bc7be4f1e29325164c2cd30f8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a42045af28db979bc7be4f1e29325164c2cd30f8 Author: Konstantin Belousov (Thu 8 Oct 2026 10:20:16 BST) Committer: Konstantin Belousov (Sun 11 Oct 2026 01:34:26 BST) .gitignore: add tgrep index directory (cherry picked from commit c2b7fe4a9e94a0edba9dd2772874928b565c4f9e) M .gitignore _____________________________________________________________________________________________________________ Commit: b8b23cf1122ed50d18e61f3a7f57cd0c30cbddd9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b8b23cf1122ed50d18e61f3a7f57cd0c30cbddd9 Author: Fernando Apesteguía (Sat 19 Sep 2026 17:39:19 BST) Committer: Fernando Apesteguía (Sat 10 Oct 2026 19:51:55 BST) virtual_oss(8): Fix cuse.ko check There is no need at all to load the cuse module to just access the tool help. kldload always checks for permissions first returning -EPERM if the user can't load modules and -EEXIST if the user can, but the module is already loaded. Approved by: christos@ Differential Revision: https://reviews.freebsd.org/D59844 MFC after: 2 weeks (cherry picked from commit 5aac18d0faec96c768baf1a9de63a50de3796023) M usr.sbin/virtual_oss/virtual_oss/main.c _____________________________________________________________________________________________________________ Commit: 179dfe41bcfe65a98b4cd4aa970764f95c6a0bd8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=179dfe41bcfe65a98b4cd4aa970764f95c6a0bd8 Author: Philip Paeps (Tue 6 Oct 2026 04:14:03 BST) Committer: Philip Paeps (Sat 10 Oct 2026 03:43:40 BST) lib80211: fix build with eXpat 2.9.0 eXpat 2.9.0 deprecates XML_GetCurrentLineNumber() in favour of XML_GetCurrentLineNumber64(). The new function behaves the same as the old one but is not prone to 32 bit integer wrap-around. (cherry picked from commit 657c089950a0388811c7ba3f6d3e7127c297864e) M lib/lib80211/lib80211_regdomain.c _____________________________________________________________________________________________________________ Commit: 94fd9b50590d114164755e7e6909334fe69c4e98 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=94fd9b50590d114164755e7e6909334fe69c4e98 Author: Philip Paeps (Tue 6 Oct 2026 08:05:31 BST) Committer: Philip Paeps (Sat 10 Oct 2026 03:43:40 BST) contrib/expat: import expat 2.9.0 Changes: https://github.com/libexpat/libexpat/blob/R_2_9_0/expat/Changes Security: CVE-2026-102633 Security: CVE-2026-77214 (cherry picked from commit 22c3edb31297a79ec3c7bf8f906be2df11b472d2) M contrib/expat/Changes M contrib/expat/Makefile.in M contrib/expat/README.md M contrib/expat/configure.ac M contrib/expat/doc/Makefile.in M contrib/expat/doc/reference.html M contrib/expat/doc/xmlwf.1 M contrib/expat/doc/xmlwf.xml M contrib/expat/examples/Makefile.in M contrib/expat/examples/element_declarations.c M contrib/expat/examples/elements.c M contrib/expat/examples/outline.c M contrib/expat/expat_config.h.in M contrib/expat/fuzz/xml_parse_fuzzer.c M contrib/expat/fuzz/xml_parsebuffer_fuzzer.c M contrib/expat/lib/Makefile.am M contrib/expat/lib/Makefile.in M contrib/expat/lib/expat.h M contrib/expat/lib/expat_external.h M contrib/expat/lib/internal.h M contrib/expat/lib/libexpat.map.in A contrib/expat/lib/xcs.c R076 contrib/expat/lib/xcsinc.c contrib/expat/lib/xcs.h M contrib/expat/lib/xmlparse.c M contrib/expat/lib/xmltok.c M contrib/expat/lib/xmltok_impl.c M contrib/expat/tests/Makefile.am M contrib/expat/tests/Makefile.in M contrib/expat/tests/acc_tests.c M contrib/expat/tests/alloc_tests.c M contrib/expat/tests/basic_tests.c M contrib/expat/tests/benchmark/Makefile.in M contrib/expat/tests/benchmark/benchmark.c M contrib/expat/tests/chardata.c M contrib/expat/tests/common.c M contrib/expat/tests/common.h M contrib/expat/tests/handlers.c M contrib/expat/tests/misc_tests.c A contrib/expat/tests/props_tests.c A contrib/expat/tests/props_tests.h M contrib/expat/tests/runtests.c M contrib/expat/tests/structdata.c A contrib/expat/tests/xcs_tests.c A contrib/expat/tests/xcs_tests.h M contrib/expat/xmlwf/Makefile.am M contrib/expat/xmlwf/Makefile.in M contrib/expat/xmlwf/xmlfile.c M contrib/expat/xmlwf/xmlfile.h M contrib/expat/xmlwf/xmlwf.c M lib/libexpat/Makefile M lib/libexpat/expat_config.h M lib/libexpat/libbsdxml.3 _____________________________________________________________________________________________________________ Commit: 7ed9a5a696c302ca37c3dd500ea4fbbf9c581a3e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7ed9a5a696c302ca37c3dd500ea4fbbf9c581a3e Author: ShengYi Hung (Wed 26 Aug 2026 08:02:49 BST) Committer: ShengYi Hung (Fri 9 Oct 2026 23:18:54 BST) linux: Exposes renderD nodes and chardev in sysfs To allow normal users to render through the render device, we expose the renderD node. This enables Wayland applications to use hardware acceleration when running under the Linux emulator. Additionally, libdrm and Mesa need to look up /sys/dev/char/: and /drm to identify the corresponding renderer device (e.g., a renderD device). We expose this path as well so that libdrm can locate the renderer. Differential Revision: https://reviews.freebsd.org/D59190 (cherry picked from commit 102adf88e6e8f83a9ab9769732d168c501f8eb6c) M sys/compat/linsysfs/linsysfs.c _____________________________________________________________________________________________________________ Commit: 8c47cbc97a17dbf0ce55aff65546f54fdf9a0a7e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8c47cbc97a17dbf0ce55aff65546f54fdf9a0a7e Author: ShengYi Hung (Tue 7 Jul 2026 05:49:48 BST) Committer: ShengYi Hung (Fri 9 Oct 2026 23:18:54 BST) hexdump: Support octal and hex for -N option GNU hexdump supports octal and hex, we add supports for BSD style hexdump for better compatibility. See: https://github.com/llvm/llvm-project/pull/206581/ MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58074 (cherry picked from commit b8f1972d51cf93ba4393d621b126dbd408423b87) M usr.bin/hexdump/odsyntax.c _____________________________________________________________________________________________________________ Commit: 21f25cc80de2f9f35d7698bf355b0353da45dbc7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=21f25cc80de2f9f35d7698bf355b0353da45dbc7 Author: Xin LI (Tue 6 Oct 2026 08:17:21 BST) Committer: Xin LI (Fri 9 Oct 2026 03:22:17 BST) libcasper: tolerate kernels without PD_NOWAITPID Commit 1a296762b3d0 made libcasper pass PD_NOWAITPID to pdfork(2). Kernels predating the flag (15.1 and earlier, since the flag first ships in 15.2) reject it with EINVAL, which makes cap_init() and every service fork fail when a newer world runs on an older kernel, for example in a poudriere jail. Add casper_pdfork(), which retries without the flag on EINVAL, and use it at both pdfork(2) call sites. The retry is safe because the kernel validates pdfork flags before creating a child. On such kernels the zombie must still be reaped with waitpid(2), as before the flag was introduced. The fallback is compiled out once __FreeBSD_version reaches 1700000, so it disappears from main when stable/16 branches while remaining in the stable/15 and stable/16 branches that need it. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D60401 (cherry picked from commit b4e2c9abaf14d6eabbce59656d448c064e0dc40b) M lib/libcasper/libcasper/libcasper.c M lib/libcasper/libcasper/libcasper_impl.h M lib/libcasper/libcasper/zygote.c _____________________________________________________________________________________________________________ Commit: 58ac9bf7248d133e55401eb6851573c6176c47f9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=58ac9bf7248d133e55401eb6851573c6176c47f9 Author: Konstantin Belousov (Tue 6 Oct 2026 09:22:21 BST) Committer: Konstantin Belousov (Fri 9 Oct 2026 01:26:27 BST) rtld.c: avoid double-free on dso load failure in do_load_object() (cherry picked from commit 274236ed084a259a0e8a11df1afebd2f2f1fb097) M libexec/rtld-elf/rtld.c _____________________________________________________________________________________________________________ Commit: 46237e2448fe42a0d400a4bd5f17828283bdb375 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=46237e2448fe42a0d400a4bd5f17828283bdb375 Author: Konstantin Belousov (Tue 6 Oct 2026 08:09:34 BST) Committer: Konstantin Belousov (Fri 9 Oct 2026 01:26:26 BST) rtld-elf/i386: remove no longer true __unused args annotations (cherry picked from commit ea23918b025baf72a43c0ce6f3f505ef153c2644) M libexec/rtld-elf/i386/reloc.c _____________________________________________________________________________________________________________ Commit: a6d8b449d9a3d0d2b9c8e96a225c02c486799476 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a6d8b449d9a3d0d2b9c8e96a225c02c486799476 Author: Konstantin Belousov (Thu 24 Sep 2026 19:30:57 BST) Committer: Konstantin Belousov (Fri 9 Oct 2026 01:25:34 BST) libc/stdlib/getenv.c: always allocate new environment PR: 298747 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298747 ) (cherry picked from commit dec68aeff8ce0ce154e93325a74bba6af71c87af) M lib/libc/stdlib/getenv.c _____________________________________________________________________________________________________________ Commit: 9530d4e997fade452cfce596a5dac0dc5be6257f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9530d4e997fade452cfce596a5dac0dc5be6257f Author: John Baldwin (Wed 30 Sep 2026 17:21:34 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) acpi/apm: Store the ACPI softc in si_drv1 This avoids looking it up via a slower path in apmopen. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D59940 (cherry picked from commit 8cf4fe39e8ec301e582b63099252b4adab740c60) M sys/x86/acpica/acpi_apm.c _____________________________________________________________________________________________________________ Commit: 42f4c37035ee97bfdcc19efac2d53501377bef54 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=42f4c37035ee97bfdcc19efac2d53501377bef54 Author: John Baldwin (Wed 30 Sep 2026 17:21:16 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) acpi/apm: Don't claim silent success for APMIO_BIOS ioctls Report failure as if the request had failed. This causes apm(8) to correctly report the resume timer as "unknown" rather than random garbage. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D59939 (cherry picked from commit 1d7f0c742863ad65e9d27df8f5ae4afddd6cc5e2) M sys/x86/acpica/acpi_apm.c _____________________________________________________________________________________________________________ Commit: e0d2f27825ff6a21da4948177ce4f5f3de343931 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e0d2f27825ff6a21da4948177ce4f5f3de343931 Author: John Baldwin (Wed 30 Sep 2026 17:04:59 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) acpi_timer: Add a softc to avoid use of global variables Add a softc and use it to mostly replace the use of global variables in this driver. Simplify the suspend and resume event handlers by saving the old timecounter in the softc and passing the softc pointer to the handlers. Differential Revision: https://reviews.freebsd.org/D59936 (cherry picked from commit 34cf45a93c54ee9a222d2893b97832283a850715) M sys/dev/acpica/acpi_timer.c _____________________________________________________________________________________________________________ Commit: 7ae6593f7a6436a32a17e5f81a71cfdd2d6f0610 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7ae6593f7a6436a32a17e5f81a71cfdd2d6f0610 Author: John Baldwin (Wed 30 Sep 2026 17:04:59 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) acpi_timer: Remove unneeded acpi_timer_freq global variable This was just an alias of acpi_timer_timecounter.tc_frequency. While here, register the machdep.acpi_timer_freq sysctl node dynamically only if the driver attaches rather than making the handler fail with EOPNOTSUPP if the driver had not attached. Differential Revision: https://reviews.freebsd.org/D59935 (cherry picked from commit 381840e88072a90df7ffb5731c08935412edbc19) M sys/dev/acpica/acpi_timer.c _____________________________________________________________________________________________________________ Commit: 3fd7a95dd0230303ecacb5e245f9bffcd827b286 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3fd7a95dd0230303ecacb5e245f9bffcd827b286 Author: John Baldwin (Wed 30 Sep 2026 17:04:59 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) acpi_timer: I/O resource cleanups - Use bus_read_4 and remove explicit bus_space tag and handle - Pass rid by value to bus_alloc_resource_any Differential Revision: https://reviews.freebsd.org/D59934 (cherry picked from commit 8d70bf332c519c427e3a36f54501201917506989) M sys/dev/acpica/acpi_timer.c _____________________________________________________________________________________________________________ Commit: c39dbb4fea23f9dbd42c8f63adab80a756b1e5af URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c39dbb4fea23f9dbd42c8f63adab80a756b1e5af Author: John Baldwin (Wed 30 Sep 2026 17:04:59 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) acpi_timer: Trim some more leftovers from the ACPI-safe timer The "safe" variant of the hook to read the timer is no longer used and can be removed. Instead, initialize the get_timecount member of acpi_timer_timecounter to the normal hook statically. While here, initialize a few more fields in acpi_timer_timecounter statically. I've kept the name as just "ACPI" instead of "ACPI-fast" now. During device probe there is no longer any reason to alloc the register resource since it is not used, so remove all that. While here, defer registration of the timecounter until attach (kind of odd to do such a thing during probe leaving a window where the timer register was unallocated but in theory could still be read via the timecounter). Reviewed by: cperciva Fixes: 00d061855deb ("Garbage-collect ACPI-safe timer and friends") Differential Revision: https://reviews.freebsd.org/D59933 (cherry picked from commit d23d186ff212023c4e1ff61a0f488dc4dcb1b75c) M sys/dev/acpica/acpi_timer.c _____________________________________________________________________________________________________________ Commit: dbdc129981c35b771f538e9f6c6a72b32b7858a0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dbdc129981c35b771f538e9f6c6a72b32b7858a0 Author: Osvaldo Janeri Filho (Wed 30 Sep 2026 16:04:08 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) pcib: Only apply ARI translation to a bridge's own secondary bus ARI changes RID interpretation only for the device on a downstream port's secondary bus. pcib_xlate_ari() applied that translation to every config access through an ARI-enabled bridge, including cycles forwarded to a subordinate bus. A non-zero slot on a subordinate bus then panics an INVARIANTS kernel and is misrouted otherwise. Translate only when the access targets this bridge's secondary bus. Reviewed by: kib, jhb Fixes: 55d3ea1731d1 ("Add support for PCIe ARI") Sponsored by: AMD Differential Revision: https://reviews.freebsd.org/D60033 (cherry picked from commit 10409ee40baf593b810cd0140f3c2f0d737c1a65) M sys/dev/pci/pci_pci.c _____________________________________________________________________________________________________________ Commit: e4bf15bc581e374a4e9883aa14c08fcfa16c9526 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e4bf15bc581e374a4e9883aa14c08fcfa16c9526 Author: John Baldwin (Wed 23 Sep 2026 20:15:11 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) x86/NOTES: Drop stale comments about si(4) This driver was removed several years ago. Fixes: c1c9764296e5 ("Remove the si(4) driver and sicontrol(8) for Specialix serial cards.") (cherry picked from commit 600c16c71ba1c1e0ad176437bcfeea12492d5ae7) M sys/x86/conf/NOTES _____________________________________________________________________________________________________________ Commit: fb3610071f84d67e9894610bfda059e8dfcbbc53 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fb3610071f84d67e9894610bfda059e8dfcbbc53 Author: John Baldwin (Wed 23 Sep 2026 20:13:22 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) dtrace: Remove bogus Makefile.inc This was added in the initial import of dtrace and overrides the normal load/unload targets with a custom target that loads a hardcoded set of modules. Over time, the set of modules has not been updated and is now incomplete. It's also not really useful compared to the default implementation of these targets used for loading or unloading an individual module being actively developed. This functionality is also available via dtraceall.ko which is how users commonly load the full suite of dtrace modules. Reviewed by: imp, markj Differential Revision: https://reviews.freebsd.org/D59821 (cherry picked from commit df7b90556859e1e5dbaf8d3dae2177ca607c0558) M sys/modules/dtrace/Makefile D sys/modules/dtrace/Makefile.inc _____________________________________________________________________________________________________________ Commit: c9ea1e9994b511b7d820a5986442af9224322833 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c9ea1e9994b511b7d820a5986442af9224322833 Author: John Baldwin (Wed 16 Sep 2026 20:56:20 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) cxgbe: Use the correct GHASH offset for a GMAC from a full TLS record If a TLS request transmits all but a part of the GMAC at the end of a TLS record, the work request asks the crypto engine to return the calculated GMAC to the driver so it can be sent in a simple TCP packet when the rest of the TLS record is transmitted in the future. However, the offset of the returned GHASH offset was calculated incorrectly in this case causing the driver to not recognize the cached GMAC and instead use a more wasteful work request in the future that encrypted the entire TLS record discarding all but the needed bytes of the trailer. Note that this does not effect correctness, just efficiency. Reviewed by: np Fixes: 9e269eafebfc ("cxgbe: Use partial GCM mode for partial TLS records on T7") Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D59711 (cherry picked from commit ed5fc8066f98e639f624de9997b33727ed883c32) M sys/dev/cxgbe/crypto/t7_kern_tls.c _____________________________________________________________________________________________________________ Commit: 1e838b3f58f38dbdbe75da0ceaad1513ab9d7da6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1e838b3f58f38dbdbe75da0ceaad1513ab9d7da6 Author: Navdeep Parhar (Wed 3 Jun 2026 06:16:13 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:33 BST) cxgbe(4): Use correct FID in KTLS tx work requests MFC after: 1 week Sponsored by: Chelsio Communications (cherry picked from commit 309fc9f765917fa032cdae7043bafffb6da5713b) M sys/dev/cxgbe/crypto/t7_kern_tls.c _____________________________________________________________________________________________________________ Commit: 0fc022224a5df9d4b5a3a11af36b43eec9f0d1f6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0fc022224a5df9d4b5a3a11af36b43eec9f0d1f6 Author: Navdeep Parhar (Tue 21 Oct 2025 18:29:28 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) cxgbe KTLS tx: Distribute FW6_PLD replies across rx queues If the connection flowid is available then the replies are requested on the rx queue that is receiving wire traffic for the connection. This reduces contention for the txq lock. Reviewed by: jhb MFC after: 3 days Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D53385 (cherry picked from commit a6ae6090bb3dc14eda750aa53650fccf4c0bf818) M sys/dev/cxgbe/crypto/t7_kern_tls.c _____________________________________________________________________________________________________________ Commit: e5514ce9f1a94181e7db1392c47cd681a21acde1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e5514ce9f1a94181e7db1392c47cd681a21acde1 Author: John Baldwin (Mon 14 Sep 2026 16:33:12 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) rangelock: Enable rl_q_owner tracking under INVARIANT_SUPPORT This fixes the build for kernels with INVARIANT_SUPPORT but without INVARIANTS. Fixes: 2e376cca379b ("rangelock: Reimplement _rangelock_cookie_assert()") (cherry picked from commit bcd1e7a8caac9129cc08995f8ff81a0eef0529bc) M sys/kern/kern_rangelock.c _____________________________________________________________________________________________________________ Commit: e77f9f06e3cc191a2ebac4fc2c86f37ad3a4d163 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e77f9f06e3cc191a2ebac4fc2c86f37ad3a4d163 Author: John Baldwin (Wed 26 Aug 2026 20:31:01 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) bhyve: Tidy lobits handling in pci_passthru - The lobits field in the "physical" BAR settings is never used, so don't bother setting it. - Expand the comment explaining why the existing lobits are preserved (namely, to preserve the prefetch flag on memory BARs). Reviewed by: bnovkov Differential Revision: https://reviews.freebsd.org/D58894 (cherry picked from commit 0ffad4ce5655cbe412b79185d2b7924d0d72983e) M usr.sbin/bhyve/pci_passthru.c _____________________________________________________________________________________________________________ Commit: e3aa820b05ef0fa0deb8cefdcffce4f4de517fa4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e3aa820b05ef0fa0deb8cefdcffce4f4de517fa4 Author: John Baldwin (Wed 26 Aug 2026 20:30:44 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) bhyve: Refactor initial PCI BAR setup Fully initialize BARs with an address of 0 in pci_emul_alloc_bar() instead of deferring some of that initialization to pci_emul_assign_bar(). Now, the latter is only used to allocate an initial address range for PCI BARs. Note that this means that the pci_passthru model now overrides the initial lobits after they are set removing the need for a workaround in pci_emul_assign_bar(). Reviewed by: bnovkov Differential Revision: https://reviews.freebsd.org/D58893 (cherry picked from commit b00bb87a614212a2bbb156288bfdd51b27bcb329) M usr.sbin/bhyve/pci_emul.c _____________________________________________________________________________________________________________ Commit: 00c581992de94265209c25d9003047a7cd908543 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=00c581992de94265209c25d9003047a7cd908543 Author: John Baldwin (Wed 26 Aug 2026 20:30:37 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) bhyve: Don't set the prefetch flag for large 64-bit memory BARs The only device model that can create a large 64-bit memory BAR is the passthru device model, and that device model reuses the lobits of the existing BAR explicitly. Fixes: e87a6f3ef284 ("bhyve: use physical lobits for BARs of passthru devices") (cherry picked from commit 3807c8be4645d7f02c5253aa88b193000e6aef09) M usr.sbin/bhyve/pci_emul.c _____________________________________________________________________________________________________________ Commit: 227ad493d42b696d22cf176294b3fdbeb63378ac URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=227ad493d42b696d22cf176294b3fdbeb63378ac Author: John Baldwin (Wed 26 Aug 2026 20:30:17 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) bhyve: Return void from pci_emul_alloc_bar This function never fails. Reviewed by: bnovkov, chuck, markj Differential Revision: https://reviews.freebsd.org/D58579 (cherry picked from commit b29dc5a30cce666896217a03a8067eba8b018eb6) M usr.sbin/bhyve/pci_emul.c M usr.sbin/bhyve/pci_emul.h M usr.sbin/bhyve/pci_fbuf.c M usr.sbin/bhyve/pci_nvme.c M usr.sbin/bhyve/pci_passthru.c _____________________________________________________________________________________________________________ Commit: 95239175799b66047b5b9247dfc2b56f786c5f4e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=95239175799b66047b5b9247dfc2b56f786c5f4e Author: John Baldwin (Wed 26 Aug 2026 20:01:39 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) release: Use "debug info" for lib32 set description This mirrors the changes applied to kernel debug symbol sets in commit 9a354a41be9a40c3c0a16cc20f4009d3b31679cc. Reviewed by: emaste Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D59058 (cherry picked from commit 22293f8c547ea0ee7f9d64b90384d7006b808feb) M release/scripts/make-manifest.sh _____________________________________________________________________________________________________________ Commit: 2c3ad0c04612fadfe144069d4197541278acb440 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2c3ad0c04612fadfe144069d4197541278acb440 Author: John Baldwin (Thu 13 Aug 2026 18:02:17 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) rtld: Remove a stale #ifdef PIC rtld has always been built PIC since commit 7ca8e6a67068e8357e251bd3ea86253c8a751d59. The stale #ifdef might confuse a reader by thinking rtld can be built as non-PIC. Reviewed by: kib Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D58623 (cherry picked from commit ec8985a1003326eff53cb6b594000b7cbb2114c5) M libexec/rtld-elf/rtld.c _____________________________________________________________________________________________________________ Commit: 6e4ef01c603c5745922902b42652125720adaa9c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6e4ef01c603c5745922902b42652125720adaa9c Author: John Baldwin (Fri 31 Jul 2026 18:52:56 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) stand: Reject ELF files with PT_LOAD segments where filesz > memsz Reviewed by: jrtc27, kib Differential Revision: https://reviews.freebsd.org/D58543 (cherry picked from commit c7400fe1df4e971670a7628ddcc856f7a6775dc6) M stand/common/load_elf.c _____________________________________________________________________________________________________________ Commit: 999ce4475a0199577e5b08fce12624df0e38d0c6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=999ce4475a0199577e5b08fce12624df0e38d0c6 Author: John Baldwin (Fri 31 Jul 2026 18:52:42 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) kld: Reject kernel modules with PT_LOAD segments where filesz > memsz All sorts of places in the ELF loading code assume that filesz <= memsz, so check that explicitly up front. Reported by: Jane Smith (via D57785) Reviewed by: jrtc27, kib Differential Revision: https://reviews.freebsd.org/D58542 (cherry picked from commit 486dfbb67e093a461a5ebd97f66be9b345f9de77) M sys/kern/link_elf.c _____________________________________________________________________________________________________________ Commit: 28c6ba6f85dabe5bf9af4b0065bbf09f02ab1d5b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=28c6ba6f85dabe5bf9af4b0065bbf09f02ab1d5b Author: John Baldwin (Fri 31 Jul 2026 18:52:34 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) libc: Reject static ELF exectables with PT_TLS segments were filesz > memsz Reviewed by: jrtc27 Differential Revision: https://reviews.freebsd.org/D58558 (cherry picked from commit b9eaf9b7cef25228e8c20e3819f1b7be94f486aa) M lib/libc/gen/tls.c _____________________________________________________________________________________________________________ Commit: db8b81ca99aaa06a5ffbe5ca2d364a14d7987067 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=db8b81ca99aaa06a5ffbe5ca2d364a14d7987067 Author: John Baldwin (Fri 31 Jul 2026 18:52:24 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) rtld: Reject ELF files with PT_LOAD or PT_TLS segments where filesz > memsz All sorts of places in the ELF loading code assume that filesz <= memsz, so check that explicitly up front. The kernel already performs this check for the PT_LOAD segments in the main binary and rtld in imgact_elf.c. Reviewed by: jrtc27, kib Differential Revision: https://reviews.freebsd.org/D58541 (cherry picked from commit 535eb24d8451bad8de745937018800df1895a9aa) M libexec/rtld-elf/map_object.c M libexec/rtld-elf/rtld.c _____________________________________________________________________________________________________________ Commit: d2521a4f31da47e1d460dbbf0665c741ee8b9843 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d2521a4f31da47e1d460dbbf0665c741ee8b9843 Author: John Baldwin (Fri 31 Jul 2026 18:51:37 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) stand: Improve error handling when loading ELF files Previously all the 'goto out' statements after the image was loaded into memory returned success rather than an error. This is despite comments indicating some of these conditions were in fact errors, and some of these error conditions (such as missing PT_DYNAMIC) are treated as errors in the kernel linker. In addition, when failing to looking up the symbols for the linker set, those cases returned failure leaking memory (though it's clear from the original code from commit ca49b3342d1e that only the second failure was intended to be an actual error). To avoid more confusion, move the assignment of `ret` to just before the `out` label so that `goto out` always returns an error. This is a more consistent pattern with other code in the tree that tends to use labels for the error case. Restructure some other code to avoid a few bogus errors. Specifically, a symbol table is not required so don't treat lack of a symbol table as an error. Also, if the start symbol for the module metadata linker set is not found, don't treat that as an error either. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D58540 (cherry picked from commit 80ee17c0285e5520e9c1db6760e84b7727778df5) M stand/common/load_elf.c _____________________________________________________________________________________________________________ Commit: b6fe00dd31df0fd37c2fbf426ba86db8ca21729f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b6fe00dd31df0fd37c2fbf426ba86db8ca21729f Author: John Baldwin (Fri 31 Jul 2026 18:50:33 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:32 BST) stand: Remove a pointless goto Commit 505222d35fea removed a batch of code that this goto used to skip around. Reviewed by: olce, kib, markj Fixes: 505222d35fea ("Implement the long-awaited module->file cache database. A userland tool (kldxref(8)) keeps a cache of what modules and versions are inside what .ko files. I have tested this on both Alpha and i386.") Differential Revision: https://reviews.freebsd.org/D58539 (cherry picked from commit 8aec309852b5285cfa03424f7776a0bf432dff7a) M stand/common/load_elf.c _____________________________________________________________________________________________________________ Commit: 4b52d12b0b066786d00848a5c9c1e9fce94e303c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4b52d12b0b066786d00848a5c9c1e9fce94e303c Author: John Baldwin (Wed 29 Jul 2026 19:38:08 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) rtld: Remove write-only text_end local variable from map_object Reviewed by: kib Fixes: 561991144e42 ("Remove Obj_Entry textsize member.") Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D58522 (cherry picked from commit ec73badfbc2e08928d917924af491c07e1f39a09) M libexec/rtld-elf/map_object.c _____________________________________________________________________________________________________________ Commit: a319427b5a059caed77907a177fd8d7bf0f58f66 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a319427b5a059caed77907a177fd8d7bf0f58f66 Author: John Baldwin (Mon 27 Jul 2026 19:09:03 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) kdump: Treat a flags argument of 0 to shmat as valid Sponsored by: AFRL, DARPA (cherry picked from commit c13a9982b56f873c7aa3374a69f6aa296a2d1968) M usr.bin/kdump/kdump.c _____________________________________________________________________________________________________________ Commit: 1e777d5818a8492cdbdf4b69d4f8f40add5b0cfb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1e777d5818a8492cdbdf4b69d4f8f40add5b0cfb Author: John Baldwin (Mon 27 Jul 2026 19:09:03 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) Regenerate after fixing getfhat(2) prototype (cherry picked from commit 9bf1bcf7491de99e4b0a8dd2ba8c61d5603ab407) M lib/libsys/_libsys.h M sys/compat/freebsd32/freebsd32_systrace_args.c M sys/kern/systrace_args.c M sys/sys/sysproto.h _____________________________________________________________________________________________________________ Commit: d72316320b97bbd29d1cf94e97ac24164821c0b0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d72316320b97bbd29d1cf94e97ac24164821c0b0 Author: John Baldwin (Mon 27 Jul 2026 19:09:03 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) getfhat: Add missing 'const' to path argument This matches the documented prototype and avoids spurious -Wincompatible-pointer-types-discards-qualifiers warnings when passing a constant pathname. Sponsored by: AFRL, DARPA (cherry picked from commit 09da0899551a63ce3eb841e4ce4385b6e48dd4ec) M sys/kern/syscalls.master M sys/sys/mount.h _____________________________________________________________________________________________________________ Commit: 1cdfb542cae5abc29ee168f2c97adc13d873a6bf URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1cdfb542cae5abc29ee168f2c97adc13d873a6bf Author: John Baldwin (Wed 1 Jul 2026 01:52:55 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) ktls: Centralize the check for CBC ciphers Move the check out of ktls_enable_(rx|tx) and into ktls_create_session. Reviewed by: gallatin, markj Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D57973 (cherry picked from commit 9cee48180d7a3d612110b4433f82bade288f326b) M sys/kern/uipc_ktls.c _____________________________________________________________________________________________________________ Commit: 8eeba7ea1f965160cd759a2296eb53aa7a4c4770 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8eeba7ea1f965160cd759a2296eb53aa7a4c4770 Author: John Baldwin (Tue 30 Jun 2026 19:11:29 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) ktls CBC decrypt: Avoid creating zero length iovec entries If an mbuf's length in the chain for an encrypted TLS record exactly matches the remaining length of header bytes to skip, skip the mbuf entirely rather than adding a zero-length iovec entry. Sponsored by: Chelsio Communications (cherry picked from commit 1756d1cab3ce28085eec94a45c557e1af265ccd0) M sys/opencrypto/ktls_ocf.c _____________________________________________________________________________________________________________ Commit: 4187412f2d3ef2b5e014863be2896de4c89681be URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4187412f2d3ef2b5e014863be2896de4c89681be Author: John Baldwin (Fri 26 Jun 2026 20:42:33 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) ctld: Cleanup redundant handling of duplicate kernel ports Sponsored by: Chelsio Communications (cherry picked from commit 21e94133eb51ef4eaea5bc37891741dd52d5933b) M usr.sbin/ctld/ctld.cc M usr.sbin/ctld/ctld.hh M usr.sbin/ctld/kernel.cc _____________________________________________________________________________________________________________ Commit: 9d34ae01cca97c22fe2fb374416b95ce179d4503 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9d34ae01cca97c22fe2fb374416b95ce179d4503 Author: John Baldwin (Thu 25 Jun 2026 17:21:25 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) ctld: Normalize physical port names Don't require ioctl port names to be fully expanded as this contradicts the syntax documented in the ctl.conf(5). However, don't require users to exactly guess when pp or vp can be omitted. Instead, normalize all physical port names by parsing any port name with a pp or vp value and reformatting them to a standardized format. This format is also used when generating names for kernel-enumerated ports. Reported by: Seth Hoffert Fixes: caef3c50ac06 ("ctld: Refactor ioctl port handling") Sponsored by: Chelsio Communications (cherry picked from commit 4907d1c5c7f97ca985611441df5871705b90030c) M usr.sbin/ctld/ctld.cc M usr.sbin/ctld/kernel.cc _____________________________________________________________________________________________________________ Commit: 4f20c129d951e16828bc15f825dc9d59fcca2a39 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4f20c129d951e16828bc15f825dc9d59fcca2a39 Author: John Baldwin (Wed 24 Jun 2026 16:28:51 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) ctld: Simplify handling of non-iSCSI and non-NVMe kernel ports Just add these directly to the kports object rather than treating them as iSCSI ports. Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D57283 (cherry picked from commit 03ac6fe4f6d2bce06a672024152eb894a423dfcb) M usr.sbin/ctld/kernel.cc _____________________________________________________________________________________________________________ Commit: 30421606e188696bfa94c097a7e871b1ec3991fc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=30421606e188696bfa94c097a7e871b1ec3991fc Author: Timo Völker (Wed 24 Jun 2026 20:57:34 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) pciconf: Add option to write into a BAR region Add option -W that allows to write into a BAR region. Also, add an option -R that allows to read from a BAR region that works similar to -r that reads from the PCI config space. Reviewed by: bcr (manpages), jhb Differential Revision: https://reviews.freebsd.org/D55915 (cherry picked from commit e63fbcc69402d4a1e8681a95710f0ec01a6837b4) M usr.sbin/pciconf/pciconf.8 M usr.sbin/pciconf/pciconf.c _____________________________________________________________________________________________________________ Commit: 489af4764fa96fdca9e36f5ec873b77837a34482 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=489af4764fa96fdca9e36f5ec873b77837a34482 Author: John Baldwin (Tue 23 Jun 2026 16:51:43 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) pciconf: Minor cleanups in the config register methods This is mostly to provide cleaner code for future changes to copy from. - Use NULL instead of casting 0 to pointer types. - Inline readone() in the sole caller now that it is just a single line. - Use a helper variable for the count of items on each line of output in readit(). - Fix the double space in the middle of byte output to only trigger for width 1. For other widths it would output spurious spaces at the end of the line which doesn't really hurt, but is buggy nonetheless. - Avoid using implicit booleans by explicitly comparing integer expressions against zero. - Don't compare the endptr returned from strtol() against NULL. Differential Revision: https://reviews.freebsd.org/D57535 (cherry picked from commit c6eb9f16cf0e19b54b382aa44f0c9a7bcec5fc40) M usr.sbin/pciconf/pciconf.c _____________________________________________________________________________________________________________ Commit: 3049231f68dadd0adb77154d68c0e1db851f0083 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3049231f68dadd0adb77154d68c0e1db851f0083 Author: John Baldwin (Tue 23 Jun 2026 16:51:43 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:31 BST) ktls: Make ktls_mbuf_crypto_state private and simplify Sponsored by: Chelsio Communications (cherry picked from commit 1a03b40a134318f26c93d85087de6a588b65f217) M sys/kern/uipc_ktls.c M sys/sys/ktls.h _____________________________________________________________________________________________________________ Commit: 28bb8f9e2208810988e896eb05e9989b0e31014b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=28bb8f9e2208810988e896eb05e9989b0e31014b Author: John Baldwin (Tue 23 Jun 2026 16:51:43 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:30 BST) cd9660: Add support for birth times Both the Extended Attribute Record in the base ISO-9660 standard and the RockRidge timestamp extension support a file creation timestamp. Use this to populate the birthtime if present. Reviewed by: markj (earlier version) Differential Revision: https://reviews.freebsd.org/D57526 (cherry picked from commit 3d945604ef8e1aaa49e153d82821fb4c6c1e67f2) M sys/fs/cd9660/cd9660_node.c M sys/fs/cd9660/cd9660_node.h M sys/fs/cd9660/cd9660_rrip.c M sys/fs/cd9660/cd9660_vnops.c _____________________________________________________________________________________________________________ Commit: 70d7b9fcd8a5d8666da6a23c3809c26e9aa501df URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=70d7b9fcd8a5d8666da6a23c3809c26e9aa501df Author: John Baldwin (Tue 23 Jun 2026 16:51:43 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:30 BST) cd9660: Adjust parsing of timestamps in the extended atttributes record The extended attribute record includes four different timestamps: file creation, file modification, file expiration, and file effective date. Only the first two are meaningful for stat(2). The latter two (if handled) would presumably affect if a file is visible for not. Previously, the logic here was a bit contorted and made use of the effective time. It also seemed to treat the creation time as a change time timestamp. Instead, simplify the logic such that the modification time is set to either the modification time (if present), or the creation time. The access and change times are then set to the modification time. NB: This is not used if RockRidge extensions are present, and makefs does not generate the extended attributes record. Differential Revision: https://reviews.freebsd.org/D57748 (cherry picked from commit f6dd01b417dcf247904b4653063f5fb7f22a0878) M sys/fs/cd9660/cd9660_node.c _____________________________________________________________________________________________________________ Commit: e07e7266933e8c99aad12236c602b9c2539a0b21 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e07e7266933e8c99aad12236c602b9c2539a0b21 Author: John Baldwin (Mon 22 Jun 2026 17:41:04 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:30 BST) cd9660: Add various length checks when parsing RRIP extensions Pass the length of a RockRidge attribute to the handler functions and validate that length in each handler. If a parsing error is detected, abort the entire parsing pass. Reviewed by: des Differential Revision: https://reviews.freebsd.org/D57136 (cherry picked from commit 9cd0d6231311bc5609403fb35377a7bb97a3cfaf) M sys/fs/cd9660/cd9660_rrip.c M sys/fs/cd9660/iso_rrip.h _____________________________________________________________________________________________________________ Commit: 7f396f144b1737cbfd4f8ce9a8b790e188c7b404 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7f396f144b1737cbfd4f8ce9a8b790e188c7b404 Author: John Baldwin (Wed 10 Jun 2026 14:44:10 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:30 BST) ppp: Reject FSM messages whose length is smaller than the message header PR: 271843 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=271843 ) Reported by: Robert Morris Reviewed by: des, emaste Differential Revision: https://reviews.freebsd.org/D57139 (cherry picked from commit 4d8fde8cff0796f32e659036543aa17d16a15b1b) M usr.sbin/ppp/fsm.c _____________________________________________________________________________________________________________ Commit: 89b8fa55b32c57337515b526989bbad37fc717ff URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=89b8fa55b32c57337515b526989bbad37fc717ff Author: John Baldwin (Wed 10 Jun 2026 14:44:10 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:30 BST) ppp: Permit CHAP challenges up to 255 bytes RFC 1994 does not place any limit on the length of the value field in challenge messages except that the length is a single octet which bounds the maximum length to 255. NB: I'm not sure why the local[] and peer[] arrays contain room for an authentication name (AUTHLEN) in addition to a challenge value/response, but I've just left that in place. PR: 271955 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=271955 ) Reported by: Robert Morris Reviewed by: des Differential Revision: https://reviews.freebsd.org/D57138 (cherry picked from commit 7e971892dfc5aac20bd62be7817941dbaed55f42) M usr.sbin/ppp/chap.c M usr.sbin/ppp/chap.h M usr.sbin/ppp/defs.h _____________________________________________________________________________________________________________ Commit: cf5b5966f52c8451001fd9fb72e22d0c113504ea URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cf5b5966f52c8451001fd9fb72e22d0c113504ea Author: John Baldwin (Wed 10 Jun 2026 14:44:10 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:30 BST) ppp: Don't fetch a non-existent variadic argument Only fetch the optional mode argument to ID0open to pass to open(2) if O_CREAT is present in the flags argument. It is UB to fetch an argument that doesn't exist. On CHERI this UB results in a fault. Reviewed by: brooks Obtained from: CheriBSD Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D57137 (cherry picked from commit b5a8b933d4994835e10226562ff8126298c96693) M usr.sbin/ppp/id.c _____________________________________________________________________________________________________________ Commit: 4cbff57e8f8604682595b8d1801f66adf25603fd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4cbff57e8f8604682595b8d1801f66adf25603fd Author: John Baldwin (Wed 10 Jun 2026 14:44:10 BST) Committer: John Baldwin (Thu 8 Oct 2026 21:42:30 BST) cd9660: Don't parse RRIP records whose length overflows the sector boundary PR: 272896 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272896 ) Reported by: Robert Morris Reviewed by: des, emaste Differential Revision: https://reviews.freebsd.org/D57135 (cherry picked from commit 0492dbe9212ee0172e8003c487f256015478edd6) M sys/fs/cd9660/cd9660_rrip.c _____________________________________________________________________________________________________________ Commit: 3f5bbee131b4ad8b31aedeabae7f184c83abe6e6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3f5bbee131b4ad8b31aedeabae7f184c83abe6e6 Author: Pouria Mousavizadeh Tehrani (Tue 22 Sep 2026 20:23:00 BST) Committer: Pouria Mousavizadeh Tehrani (Thu 8 Oct 2026 20:59:21 BST) route/fib_algo: Respect immediate_sync in fd_ref_nhop Now fd_ref_nhop() returns zero for cross family routes, Do not schedule nhop references and try to rebuild it immediately for connected and static routes. PR: 298733 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298733 ) Fixes: 633438224304 ("route/fib_algo: Fix nexthop index ...") (cherry picked from commit 3d030136ad1906e6d463673a8d2ef313eb054fb3) M sys/net/route/fib_algo.c _____________________________________________________________________________________________________________ Commit: d338d7bf7125ec1808700bbbb328e02730f51170 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d338d7bf7125ec1808700bbbb328e02730f51170 Author: Abdelkader Boudih (Thu 10 Sep 2026 20:03:57 BST) Committer: Abdelkader Boudih (Thu 8 Oct 2026 20:48:38 BST) jail: define well-known parameter names in sys/jail.h Userland jail managers hardcode jail parameter name strings; nothing in the headers has ever named them, even when sys/jail.h already has JAIL_META_PRIVATE/JAIL_META_SHARED for the metadata pair. Added JAIL_PARAM_* string constants for the static parameters registered by the base kernel. No functional change. MFC After: 1 week Reviewed by: jamie, adrian Differential Revision: https://reviews.freebsd.org/D59572 (cherry picked from commit 1256447cbc21361ff5a6f9022b58ad6c1c43e59f) M sys/kern/kern_jail.c M sys/sys/jail.h _____________________________________________________________________________________________________________ Commit: cb2711b163ba729d33051b66ac28f6cceaa1986e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cb2711b163ba729d33051b66ac28f6cceaa1986e Author: Maxim Konovalov (Thu 1 Oct 2026 17:22:50 BST) Committer: Maxim Konovalov (Thu 8 Oct 2026 20:46:55 BST) tcpdrop.8: Xr mod_cc(4) MFC after: 1 week (cherry picked from commit 9279dd3c15fbbf82e5727bc7bdfbc8e8b5a53552) M usr.sbin/tcpdrop/tcpdrop.8 _____________________________________________________________________________________________________________ Commit: b2b9be7c2ab308312e626a61e48df46714abad55 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b2b9be7c2ab308312e626a61e48df46714abad55 Author: Maxim Konovalov (Thu 1 Oct 2026 17:19:31 BST) Committer: Maxim Konovalov (Thu 8 Oct 2026 20:46:36 BST) tcpdrop.8: spell newreno MFC after: 1 week (cherry picked from commit cdb4538d7f6ba891ad54dd7d3d1b25632410e40f) M usr.sbin/tcpdrop/tcpdrop.8 _____________________________________________________________________________________________________________ Commit: 12e25072a868d039f08509d39a40be3b714d3638 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=12e25072a868d039f08509d39a40be3b714d3638 Author: Pouria Mousavizadeh Tehrani (Thu 8 Oct 2026 15:42:57 BST) Committer: Pouria Mousavizadeh Tehrani (Thu 8 Oct 2026 15:55:46 BST) route/fib_algo: Fix FIB_ALGO without ROUTE_MPATH option The ROUTE_MPATH compile option has been removed from CURRENT branch. Therefore, use the ROUTE_MPATH macro for nhgrp headers. PR: 299210 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=299210 ) Fixes: 891bda143f6b ("route/fib_algo: Fix nexthop index ...") Differential Revision: https://reviews.freebsd.org/D59552 (cherry picked from commit 63343822430453f4add20bcbfa134c99132361df) M sys/net/route/fib_algo.c _____________________________________________________________________________________________________________ Commit: f3b4732f7589923b96bb005c3faa3e46ca51d7ff URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f3b4732f7589923b96bb005c3faa3e46ca51d7ff Author: Olivier Certner (Fri 2 Oct 2026 18:14:16 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:10 BST) acpi: Tasks: Document why 'acpi_task_count' is accessed unsynchronized MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit e89c3ac5df58a9eae9d01f325ffc9b34258c4b29) M sys/dev/acpica/Osd/OsdSchedule.c _____________________________________________________________________________________________________________ Commit: 17498d6af94f0bd09d030ae1f0edfb239422cb4e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=17498d6af94f0bd09d030ae1f0edfb239422cb4e Author: Olivier Certner (Fri 2 Oct 2026 18:12:46 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:09 BST) acpi: Tasks: Make OsdSchedule.c whitespace clean MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit f0825f75bab8ae7cb8e0ba717f76110b6f1862f3) M sys/dev/acpica/Osd/OsdSchedule.c _____________________________________________________________________________________________________________ Commit: 61685a383fb196d54bf27cac76e38e529fdd5631 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=61685a383fb196d54bf27cac76e38e529fdd5631 Author: Olivier Certner (Fri 2 Oct 2026 18:11:58 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:09 BST) acpi: Tasks: Remove unnecessary includes MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit 2165accd3748c0acb6e82756d71a46509b220fd8) M sys/dev/acpica/Osd/OsdSchedule.c _____________________________________________________________________________________________________________ Commit: 35801aa5ee6d7f0a2840f048b50c8ded7ef970c4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=35801aa5ee6d7f0a2840f048b50c8ded7ef970c4 Author: Olivier Certner (Wed 30 Sep 2026 14:01:46 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:09 BST) ifuncs: Include instead of All architectures have been providing an 'ifunc.h' header with DEFINE_IFUNC() et alter working both in kernel and userland since commit cf41d1113377 ("riscv: implement kernel ifunc resolution"), and separate and headers were introduced in commit 2b1db07bec92 ("x86: add machine/ifunc.h"), so stop including directly and use the common idiom. While here, re-order includes in the blocks featuring , which requires fixing so that it can be included before . Reviewed by: kib MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60194 (cherry picked from commit a2fbd988638e94b61cc78449e893f2c02d43dec0) M sys/amd64/amd64/copyout.c M sys/amd64/amd64/fpu.c M sys/amd64/amd64/machdep.c M sys/amd64/amd64/pmap.c M sys/amd64/linux/linux_machdep.c M sys/amd64/linux32/linux32_machdep.c M sys/amd64/vmm/vmm.c M sys/cddl/dev/dtrace/amd64/dtrace_isa.c M sys/i386/i386/npx.c M sys/i386/i386/pmap.c M sys/i386/i386/pmap_base.c M sys/libkern/gsb_crc32.c M sys/x86/include/apicvar.h M sys/x86/x86/cpu_machdep.c _____________________________________________________________________________________________________________ Commit: cc2e9690cdb17d18e32cb3e6aad4328c09e415b2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cc2e9690cdb17d18e32cb3e6aad4328c09e415b2 Author: Olivier Certner (Wed 30 Sep 2026 16:04:24 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:08 BST) random: Remove unused include of ifuncs No functional change (intended). Reviewed by: markj, emaste Fixes: 3a12982962ce ("random: add RDSEED as a provably unique entropy source") MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60193 (cherry picked from commit 18ce3f50f630f64d5e9e898a3c06e9ed6e5a63a5) M sys/dev/random/ivy.c M sys/dev/random/rdseed.c _____________________________________________________________________________________________________________ Commit: 14be20344bbb4f4c74fdba970552fa609ca45059 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=14be20344bbb4f4c74fdba970552fa609ca45059 Author: Olivier Certner (Wed 30 Sep 2026 09:44:16 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:08 BST) ifuncs: Have DEFINE_*IFUNC() macros expand the passed name While here, make each header include so that it can be included standalone. Reviewed by: kib MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60167 (cherry picked from commit ab9fcc5a553a25804b9535190e914e3ba0e746cf) M sys/arm/include/ifunc.h M sys/arm64/include/ifunc.h M sys/powerpc/include/ifunc.h M sys/riscv/include/ifunc.h M sys/x86/include/ifunc.h _____________________________________________________________________________________________________________ Commit: b9a11a3534548deda63498074a4c2354b96fd6e4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b9a11a3534548deda63498074a4c2354b96fd6e4 Author: Olivier Certner (Thu 24 Sep 2026 17:23:05 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:08 BST) NOTES: Multiple schedulers can be compiled in at once Mention that ULE is the default scheduler when multiple ones are compiled in and how the tunable 'kern.sched.name' can be used to select another one. While here, regroup SCHED_ULE and SCHED_4BSD, as they control if the respective scheduler instances are compiled in, putting SCHED_STATS aside. Reviewed by: mchoo Fixes: 75a66a92c92f ("- Add an option to compile in SCHED_STATS. ...") Fixes: 1322760fd127 ("sys: enable both SCHED_ULE and SCHED_4BSD for some configs") MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60014 (cherry picked from commit 754d2c69f3589cdd0bc4649d9e85ecd59935d9d3) M sys/conf/NOTES _____________________________________________________________________________________________________________ Commit: 65cd5ed09b663e61ae60b40d038751dfee8e8e10 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=65cd5ed09b663e61ae60b40d038751dfee8e8e10 Author: Olivier Certner (Thu 24 Sep 2026 17:04:35 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:07 BST) NOTES: IPI_PREEMPTION: Fix documentation, applies to all architectures Move its description into 'sys/conf/NOTES' and update it to match reality. Reviewed by: scheduler (mchoo) MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60013 (cherry picked from commit d972d832f580c307cdfd87d563a382f40877dd10) M sys/conf/NOTES M sys/x86/conf/NOTES _____________________________________________________________________________________________________________ Commit: 892cd949801d572a21bcfeae224043a74f50b861 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=892cd949801d572a21bcfeae224043a74f50b861 Author: Olivier Certner (Thu 24 Sep 2026 17:00:32 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:07 BST) NOTES: SMP: Move PREEMPTION out of the debugging options section It has been activated by default for more than 20 years. Reviewed by: mchoo, srcmgr (imp) Fixes: 444ba945136b ("Switch the default scheduler to 4BSD...") MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60012 (cherry picked from commit 61ce73643f22f6f8273701eb978faa246bbca27d) M sys/conf/NOTES _____________________________________________________________________________________________________________ Commit: 91a3b752c17c872309703975fae5fa471373b4d6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=91a3b752c17c872309703975fae5fa471373b4d6 Author: Olivier Certner (Thu 24 Sep 2026 16:33:45 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:07 BST) i386 NOTES: Remove IPI_PREEMPTION remnant after move to x86 NOTES Fixes: 1f38677ba40b ("x86 NOTES: Move shared options from amd/i386 NOTES to x86 NOTES") MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60011 (cherry picked from commit 7ce0ede913801c0e74f6d90beee2fc4eb5c6ef2f) M sys/i386/conf/NOTES _____________________________________________________________________________________________________________ Commit: 9b74c57df89018a01b831a7bdf839f74fb3ee303 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9b74c57df89018a01b831a7bdf839f74fb3ee303 Author: Olivier Certner (Thu 24 Sep 2026 15:59:07 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:06 BST) sched: options: Regroup scheduler-related kernel options This makes it easier to have a full list of them at a glance, and makes for a natural place to add new ones. MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60010 (cherry picked from commit 406d6658ff821fc43eb0b2b10df4ab09eb2e2e16) M sys/conf/options _____________________________________________________________________________________________________________ Commit: fbf789a52a83dead137c3606c91fab506b5eaed3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fbf789a52a83dead137c3606c91fab506b5eaed3 Author: Olivier Certner (Fri 25 Sep 2026 09:29:19 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:06 BST) SYSCTL(9): Retire SYSCTL_NODE_CHILDREN() It does not provide value over the pre-existing SYSCTL_STATIC_CHILDREN() macro, which is widely used in the tree, whereas SYSCTL_NODE_CHILDREN() is not. Reviewed by: markj MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D60009 (cherry picked from commit 4672ad1f16092c146261b4de485ec5eb5e8d127b) M sys/dev/usb/net/usb_ethernet.c M sys/net80211/ieee80211_freebsd.c M sys/sys/sysctl.h _____________________________________________________________________________________________________________ Commit: 5ebf596a64e1cd1badd5113e163841ed49a67e05 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5ebf596a64e1cd1badd5113e163841ed49a67e05 Author: Quentin Thébault (Fri 6 Feb 2026 06:03:21 GMT) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:06 BST) sys/conf/options: remove improper full stops Only keep them when used in a sentence. Reviewed by: vexeduxr Signed-off-by: Quentin Thébault Sponsored by: Defenso Closes: https://github.com/freebsd/freebsd-src/pull/2004 (cherry picked from commit 87b2c0168d9deb79aacf3f13dbd3201054371b2b) M sys/conf/options _____________________________________________________________________________________________________________ Commit: 3d64b7fc93759158cca147fa964443209ac8dfe8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3d64b7fc93759158cca147fa964443209ac8dfe8 Author: Olivier Certner (Mon 7 Sep 2026 17:09:54 BST) Committer: Olivier Certner (Thu 8 Oct 2026 13:20:00 BST) pwd(1): De-obfuscate, style(9) In getcwd_logical(), test for a '.' or '..' component in one of the most straightforward and intelligible ways possible. In particular, this removes a superfluous re-test of the the component's first character being '.' when the first one did not pass and, more importantly, prevents the second test from relying on a side-effect in the first. While here, for better clarity, replace the loop that searches for '/' with a simple call to strchrnul(). Add high-level comments about what is going on. While here, test explicitly that pointed 'char' values are not 0 ('\0') (style(9)). While here, separate the successive steps of getcwd_logical() with blank lines. No functional change (intended). Discussed with: emaste Fixes: 2df923c5d2d0 ("pwd: Clean up and adopt POSIX semantics") MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59709 (cherry picked from commit 72bb9eb7b6decc34f343bdcbf0a8df0c73f9edd4) M bin/pwd/pwd.c _____________________________________________________________________________________________________________ Commit: 8436cbdb909a29bd949f1a263db022923dbd4d5c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8436cbdb909a29bd949f1a263db022923dbd4d5c Author: Jamie Gritton (Tue 6 Oct 2026 00:54:21 BST) Committer: Jamie Gritton (Thu 8 Oct 2026 04:42:05 BST) jaildesc: Lock prison pointer when filling kinfo Submitted by: Yuri Tkachenko MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D60392 (cherry picked from commit a5ae2a9bfb1ca7f49e79ee63ed39216c42326d02) M sys/kern/kern_jaildesc.c _____________________________________________________________________________________________________________ Commit: a689dd9f2b1798c7152b08019f7826935c04e9e0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a689dd9f2b1798c7152b08019f7826935c04e9e0 Author: Siva Mahadevan (Mon 28 Sep 2026 16:07:56 BST) Committer: Siva Mahadevan (Thu 8 Oct 2026 00:56:48 BST) libgcc_s: add libgcc_s_asneeded.so wrapper for gcc 16 GCC 16[0][1] now requires a wrapper lib to handle `--push-state --as-needed -lgcc_s --pop-state` logic[1] for `gcc` invocations. `g++` will still unconditionally use `-lgcc_s`. This fixes buildworld with gcc16. [0] https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=8a99fdb70493df1294b53406913e5ea1fc971c13 [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123396 Reviewed by: jhb MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59511 Squashed commits including fixups: (cherry picked from commit fdd3f6f78888b02a1bfa69a0572317413dc14a45) (cherry picked from commit b45d14d3d665e0253391924e5c0595c259b8a773) (cherry picked from commit 222210c6a82282de78aa863c550da21471630316) M Makefile.inc1 M lib/Makefile A lib/libgcc_s_asneeded/Makefile A lib/libgcc_s_asneeded/libgcc_s_asneeded.ldscript M share/mk/bsd.lib.mk _____________________________________________________________________________________________________________ Commit: 9b2f363dbe833d11584cefb89cdbaab5bb2537e3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9b2f363dbe833d11584cefb89cdbaab5bb2537e3 Author: Siva Mahadevan (Tue 8 Sep 2026 21:04:19 BST) Committer: Siva Mahadevan (Thu 8 Oct 2026 00:56:48 BST) tests/pmc: annotate busy loop counters with __unused This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: netchild MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit 0be29268ae4e593581e1f711f0f8822a52215aef) M tests/sys/pmc/pmc_credexec_test.c M tests/sys/pmc/pmc_detach_test.c M tests/sys/pmc/pmc_exec_test.c M tests/sys/pmc/pmc_lifecycle_test.c M tests/sys/pmc/pmc_log_test.c _____________________________________________________________________________________________________________ Commit: 70f18afe3929c2303d506b13f49cb1fc5ad09028 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=70f18afe3929c2303d506b13f49cb1fc5ad09028 Author: Siva Mahadevan (Mon 28 Sep 2026 16:07:23 BST) Committer: Siva Mahadevan (Thu 8 Oct 2026 00:53:06 BST) OFED: add -Wunused-but-set-variable to OFED_C This keeps it in sync with sys/modules/ibcore/Makefile and fixes the build on GCC 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: jhb MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59539 (cherry picked from commit 188c455f3d7a137aeb9695dd0ba08a68d26c45f3) M sys/conf/kern.pre.mk _____________________________________________________________________________________________________________ Commit: b9180c09cb19941a54a0e08149d6a1a022ace15d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b9180c09cb19941a54a0e08149d6a1a022ace15d Author: Dimitry Andric (Mon 28 Sep 2026 19:12:33 BST) Committer: Dimitry Andric (Wed 7 Oct 2026 18:20:40 BST) Merge commit c52392a6f464 from llvm-project (by ShengYi Hung): [Clang][ExprConst] Drop PRValue for nothrow new (#226753) A user defined operator new can accept prvalue for nothrow. However, it should not be a ConstExpr. Early returns by isUsableAsGlobalAllocationFunctionInConstantEvaluation instead of doing LValue evaluation. Also, move CheckPlacement new logic into new OpCode. This decouples checking from Interp.cpp to Compiler.cpp. This fixes "Assertion failed: (E->isGLValue() || E->getType()->isFunctionType() || E->getType()->isVoidType() || isa(E->IgnoreParens())), function EvaluateLValue" when building the databases/mariadb123-server port. MFC after: 1 week (cherry picked from commit ca3747034ef484b024a202d213a2e08b16066791) M contrib/llvm-project/clang/lib/AST/ByteCode/Compiler.cpp M contrib/llvm-project/clang/lib/AST/ByteCode/Interp.cpp M contrib/llvm-project/clang/lib/AST/ByteCode/Interp.h M contrib/llvm-project/clang/lib/AST/ByteCode/Opcodes.td M contrib/llvm-project/clang/lib/AST/ExprConstant.cpp _____________________________________________________________________________________________________________ Commit: 5006f0cc49ac85817ab2de3a2b9e3b9a3d0181f0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5006f0cc49ac85817ab2de3a2b9e3b9a3d0181f0 Author: Mitchell Horne (Wed 30 Sep 2026 20:24:31 BST) Committer: Mitchell Horne (Wed 7 Oct 2026 17:55:55 BST) jh7110_gpio: fdt_pinctrl interface This provides GPIO programming/configuration at attach time based on the device tree 'pinmux' descriptions. Reference: device-tree/Bindings/pinctrl/starfive,jh7110-sys-pinctrl.yaml Reviewed by: Brian Scott Tested by: Brian Scott MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59992 (cherry picked from commit 0fc4ef160550d8f454fbe4cb521e64276db91d7d) M sys/riscv/starfive/jh7110_gpio.c _____________________________________________________________________________________________________________ Commit: a0c0f12c1bbc28f314bd739fa1f52d369c5c4caa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a0c0f12c1bbc28f314bd739fa1f52d369c5c4caa Author: Mitchell Horne (Wed 30 Sep 2026 20:23:03 BST) Committer: Mitchell Horne (Wed 7 Oct 2026 17:55:55 BST) jh7110_gpio: handle preset high/low Take action in the presence of the GPIO_PIN_PRESET_LOW/HIGH flags. This part of the GPIO interface seems to be unused, but is trivially implemented in our driver. Reviewed by: Brian Scott MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59991 (cherry picked from commit 6f9d0f02e72cdcf64af6e0a034af4d4f065b26f8) M sys/riscv/starfive/jh7110_gpio.c _____________________________________________________________________________________________________________ Commit: aa5fa178db14ca59a61df4c52ff50127a8916fa7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=aa5fa178db14ca59a61df4c52ff50127a8916fa7 Author: Brian Scott (Tue 22 Sep 2026 14:31:47 BST) Committer: Mitchell Horne (Wed 7 Oct 2026 17:55:55 BST) jh7110_temp: CPU temperature sensor for JH7110 This patch adds a driver for the CPU temperature sensor on the jh7110 SoC. The calibration numbers come from the OpenBSD driver but are reworked to produce a result in K rather than C. The temperature is exposed as a sysctl, dev.jh7110_temp.0.temperature but I have also exposed it as dev.cpu.0.temperature because that's where you find it on a RaspberryPi and amdtemp(4), so it's a lot more obvious. (mhorne: Added 'starfive,jh7100-temp' compatible.) Reviewed by: mhorne, bnovkov MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59478 (cherry picked from commit fa28ede31dac57fdb191afd114c70439b9b41e4f) M sys/dev/clk/starfive/jh7110_clk_sys.c M sys/riscv/starfive/files.starfive A sys/riscv/starfive/jh7110_temp.c _____________________________________________________________________________________________________________ Commit: 466aa18c3793fe7e73b62526aeb00332f7d2e731 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=466aa18c3793fe7e73b62526aeb00332f7d2e731 Author: Mitchell Horne (Wed 9 Sep 2026 15:38:22 BST) Committer: Mitchell Horne (Wed 7 Oct 2026 17:55:55 BST) riscv: enable gpiopower driver It is functional, and there are some RISC-V platforms which can benefit from it. Requested by: Brian Scott Sponsored by: The FreeBSD Foundation (cherry picked from commit c745fccd9b2647c1f84f8e38b3992640ea34c50d) M sys/riscv/conf/GENERIC _____________________________________________________________________________________________________________ Commit: 3663cce63df9500aa3003daf6eeacfbe6d0be4e5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3663cce63df9500aa3003daf6eeacfbe6d0be4e5 Author: Brian Scott (Wed 9 Sep 2026 15:33:14 BST) Committer: Mitchell Horne (Wed 7 Oct 2026 17:55:55 BST) eqos: Reduce RX error noisiness Reduce very common console messages: Receive error rdes3=30208000 As observed on the VisionFive v2 hardware after some large transfers. Differentiate between overflow errors and others. Report the errors when the length is non-zero (overflow errors). Also, count errors for netstat purposes. Reviewed by: mhorne MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59479 (cherry picked from commit e67697869e7208e4fe5eb96ce3f3d1240b44d2e1) M sys/dev/eqos/if_eqos.c _____________________________________________________________________________________________________________ Commit: c97799277650647b5a8c2345ca11a842e0e02e10 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c97799277650647b5a8c2345ca11a842e0e02e10 Author: Christos Margiolis (Wed 30 Sep 2026 10:51:09 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:32 BST) cuse: Rename cuse_server_free() to cuse_server_dtor() This name is clearer, given that this function is the cdevpriv destructor callback. MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit b55b6e1d727bdc810b157047cb12e2e550333551) M sys/fs/cuse/cuse.c _____________________________________________________________________________________________________________ Commit: 58ca5e461c6ed6f0503b979e5b59047369a18f7e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=58ca5e461c6ed6f0503b979e5b59047369a18f7e Author: Christos Margiolis (Wed 30 Sep 2026 10:51:05 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:32 BST) cuse: Assert the server refcount Assert that the refcount does not underflow before decrementing it, and that it really is zero by the time the server is freed. MFC after: 1 week Sponsored by: The FreeBSD Foundation Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D60043 (cherry picked from commit f96c4f45f791124192363c9aa2898b1d0e4cc6d0) M sys/fs/cuse/cuse.c _____________________________________________________________________________________________________________ Commit: 2cb963ee8d157a688892c944aa0567bfd35322b7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2cb963ee8d157a688892c944aa0567bfd35322b7 Author: Christos Margiolis (Wed 30 Sep 2026 10:50:41 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:32 BST) cuse: Implement hot-unload cuse_kern_uninit() can hang on destroy_dev(), because of threads sleeping in CUSE_IOCTL_GET_COMMAND, so implement d_purge to wake them up before calling destroy_dev(). Also do not allow threads to go back to sleep if the is_closing flag has been set. MFC after: 1 week Sponsored by: The FreeBSD Foundation Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D60022 (cherry picked from commit d38ef1aca969f9a79572958c06bc4a4e03f053c2) M sys/fs/cuse/cuse.c _____________________________________________________________________________________________________________ Commit: 1c6b48130d9a7c7926ba04a91cdf9097fc6fd02d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1c6b48130d9a7c7926ba04a91cdf9097fc6fd02d Author: Christos Margiolis (Wed 30 Sep 2026 10:50:03 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:31 BST) cuse: Use make_dev_s() to create client devices make_dev_s() sets si_drv1 before the node is published in devfs, which avoids a race where cuse_client_open() could see it as NULL. It also now reports finer-grained errors on failure, instead of only ENOMEM. While here, drop the NULL checks on kern_dev in cuse_server_free_dev(), since a device is only added to the server's list once it has been created. MFC after: 1 week Sponsored by: The FreeBSD Foundation Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D59874 (cherry picked from commit fad756fd200bf988861eb80146392661a887ab71) M sys/fs/cuse/cuse.c _____________________________________________________________________________________________________________ Commit: f9669d9986a193da4e2dbab88d36f0dc220ab6e7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f9669d9986a193da4e2dbab88d36f0dc220ab6e7 Author: Christos Margiolis (Wed 30 Sep 2026 10:49:58 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:31 BST) cuse: Retire unnecessary CUSE_VERSION No functional change intended. MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit 34b00da59b8f8c3fa877135beaefd3ad31841f41) M sys/fs/cuse/cuse.c M sys/fs/cuse/cuse_defs.h _____________________________________________________________________________________________________________ Commit: 8b462fa2d3e7148ff81b85b8fc4b414ebd8e9fdd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8b462fa2d3e7148ff81b85b8fc4b414ebd8e9fdd Author: Christos Margiolis (Wed 30 Sep 2026 10:49:55 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:31 BST) cuse: Remove unnecessary semicolon in cuse_convert_error() No functional change intended. MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit e923a30ecf2a34cdf46afcfbffdbc30e822148d1) M sys/fs/cuse/cuse.c _____________________________________________________________________________________________________________ Commit: ba847a03d60743086646ac462049cd1e48fb24e1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ba847a03d60743086646ac462049cd1e48fb24e1 Author: Christos Margiolis (Wed 30 Sep 2026 10:49:52 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:31 BST) cuse: Improve server cleanup Move cuse_server_unref()'s device cleanup loop into a new cuse_server_free_devs_locked(), and call it from cuse_server_free() instead. The cdevpriv destructor now destroys the server's devices before dropping its reference, which closes the clients using them, so that the destructor is always the one that takes the last reference. By the time cuse_server_unref() frees the server, the device list should be empty, so assert this. In cuse_kern_uninit(), delete the infinite loop which waits for all open /dev/cuse instances to exit, and instead call destroy_dev() directly, which runs their cdevpriv destructor. MFC after: 1 week Sponsored by: The FreeBSD Foundation Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D59872 (cherry picked from commit 40431ec4da1d14032462ea6327ef695c2f58a3b1) M sys/fs/cuse/cuse.c _____________________________________________________________________________________________________________ Commit: 598eb6719091ff35af17c6de6347d0f17136a4d1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=598eb6719091ff35af17c6de6347d0f17136a4d1 Author: Christos Margiolis (Wed 30 Sep 2026 10:49:46 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:31 BST) cuse: Create /dev/cuse with MAKEDEV_CHECKNAME Since we now use make_dev_credf(), make sure to fail kldload if it returned NULL. MFC after: 1 week Sponsored by: The FreeBSD Foundation Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D59863 (cherry picked from commit 3b3e6473b13093c6900194b42e8a11f56c2ea7d8) M sys/fs/cuse/cuse.c _____________________________________________________________________________________________________________ Commit: 4772247a4f7448471ce8509d5aafedb0959e8239 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4772247a4f7448471ce8509d5aafedb0959e8239 Author: Christos Margiolis (Wed 30 Sep 2026 10:49:41 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:31 BST) cuse: Actually use cuse_modevent() We can call cuse_kern_init()/cuse_kern_uninit() here, rather than using SYSINIT/SYSUNINIT. MFC after: 1 week Sponsored by: The FreeBSD Foundation Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D59862 (cherry picked from commit 2fd8d2eb7bb91148169471291dbcfa499579b1bc) M sys/fs/cuse/cuse.c _____________________________________________________________________________________________________________ Commit: b1aea70753bca974af6b8e4814aecd1aaff29e2a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b1aea70753bca974af6b8e4814aecd1aaff29e2a Author: Christos Margiolis (Wed 30 Sep 2026 10:49:35 BST) Committer: Christos Margiolis (Wed 7 Oct 2026 07:23:31 BST) cuse: Fix hang on readv(2) and writev(2) with multiple iovecs uiomove() leaves an iovec it has just emptied as the current one, so cuse_client_read() and cuse_client_write() picked it up again on the next iteration, sent the server a zero-length command, and got zero bytes back. That left the residual count unchanged, so the loop never terminated and the call never returned. Step past empty iovecs at the start of every iteration. This also covers caller-supplied zero-length iovecs, which hung in the same way PR: 293489 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293489 ) MFC after: 1 week Sponsored by: The FreeBSD Foundation Reviewed by: kib, markj Differential Revision: https://reviews.freebsd.org/D59822 (cherry picked from commit 872c36cb6f2de17278c559a300c2163d8b39b3c6) M sys/fs/cuse/cuse.c _____________________________________________________________________________________________________________ Commit: 556d10a6452cb4c830516bb7d0c267dccb8fea53 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=556d10a6452cb4c830516bb7d0c267dccb8fea53 Author: Juraj Lutter (Thu 1 Oct 2026 08:54:04 BST) Committer: Juraj Lutter (Wed 7 Oct 2026 06:29:17 BST) man: Link ena.4 to if_ena.4 For consistency, create a symbolic link from ena.4 to also if_ena.4 Reviewed by: #manpages, ziaee Differential Revision: https://reviews.freebsd.org/D60191 MFC after: 3 days (cherry picked from commit 566fdcba48817b0f8fea1f9b2963505b925675fb) M share/man/man4/Makefile _____________________________________________________________________________________________________________ Commit: 9a0ea129a2a6325d8422a30f9f22fba825c0abf1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9a0ea129a2a6325d8422a30f9f22fba825c0abf1 Author: Konstantin Belousov (Wed 23 Sep 2026 19:50:45 BST) Committer: Konstantin Belousov (Wed 7 Oct 2026 04:26:32 BST) stat.2: document SFBSD_MNTROOT (cherry picked from commit 1e8708d9b598415a993fecb7b5c5cc8a9e64cba5) M lib/libsys/stat.2 _____________________________________________________________________________________________________________ Commit: 2961d9d2f32ee59ae4a563362b18b8e9f073c8b1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2961d9d2f32ee59ae4a563362b18b8e9f073c8b1 Author: Maxim Sobolev (Wed 23 Sep 2026 15:43:01 BST) Committer: Konstantin Belousov (Wed 7 Oct 2026 04:26:32 BST) stat(2): Document st_bsdflags and SFBSD_NAMEDATTR (cherry picked from commit 72e391060bb6c83ed65ac7ca3936bd6e07ab1ebc) M lib/libsys/stat.2 _____________________________________________________________________________________________________________ Commit: ad3fdab6e507e4ef73b705c86930846859cb41af URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ad3fdab6e507e4ef73b705c86930846859cb41af Author: Konstantin Belousov (Tue 22 Sep 2026 17:16:36 BST) Committer: Konstantin Belousov (Wed 7 Oct 2026 04:26:32 BST) stat(2): report mount points using st_bsdflags SFBSD_MNTPOINT flag (cherry picked from commit 0d5d8872931c2659692b5e59db2190b715ff314c) M sys/kern/vfs_syscalls.c M sys/kern/vfs_vnops.c M sys/sys/stat.h _____________________________________________________________________________________________________________ Commit: 3b4437e9c9df13612b9958144dbb7a77ed22a258 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3b4437e9c9df13612b9958144dbb7a77ed22a258 Author: Kristof Provost (Mon 28 Sep 2026 19:11:45 BST) Committer: Kristof Provost (Tue 6 Oct 2026 22:22:37 BST) pf: set the correct type for rule timeouts PR: 298877 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298877 ) MFC after: 1 week Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 3c58e64369fd8124c83f1c7d63106bddca83fa1e) M sys/netpfil/pf/pf_nl.c M tests/sys/netpfil/pf/src_track.sh _____________________________________________________________________________________________________________ Commit: fabb224f2f15b80eff4526d6e6b8c1c69834883e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fabb224f2f15b80eff4526d6e6b8c1c69834883e Author: Peter Eriksson (Fri 2 Oct 2026 17:45:59 BST) Committer: Ed Maste (Tue 6 Oct 2026 20:13:30 BST) camcontrol: Add support for firmware uploading on HPE-branded drives PR: 299059 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=299059 ) (cherry picked from commit b30e67dc130ea8217e92e0b4c462f189e2268eba) M sbin/camcontrol/fwdownload.c _____________________________________________________________________________________________________________ Commit: 04aa36c01c68c3ba93cdcb62f1f13f05b9b96da7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=04aa36c01c68c3ba93cdcb62f1f13f05b9b96da7 Author: Mitchell Horne (Mon 16 Mar 2026 23:35:35 GMT) Committer: Mitchell Horne (Tue 6 Oct 2026 19:29:17 BST) pmc.h: bump PMC_VERSION_MINOR Bump for the addition of PMC_OP_GETCAPS and the recently added Intel CPUs. Sponsored by: The FreeBSD Foundation (cherry picked from commit e39d3a6b32331437da6c13a4aeb67e5bcca67625) M sys/sys/pmc.h _____________________________________________________________________________________________________________ Commit: 7c5caf70b6e9ec9de608480b841fb1d091f1d3ff URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7c5caf70b6e9ec9de608480b841fb1d091f1d3ff Author: Ali Mashtizadeh (Sun 1 Mar 2026 22:08:30 GMT) Committer: Mitchell Horne (Tue 6 Oct 2026 19:27:57 BST) libpmc: Query hwpmc for caps This change allows for fine-grained capabilities per counter index. This is particularly useful for AMD where subclasses are not exposed to the general PMC code, but other architectures also have asymmetric behaviors when it comes to specific counter indices. A new PMC_OP_GETCAPS op is added to the hwpmc(4) ioctl interface. Reviewed by: mhorne Sponsored by: Netflix Pull Request: https://github.com/freebsd/freebsd-src/pull/2058 (cherry picked from commit 44a983d249d05d932b6cff333f130baf70febc22) M lib/libpmc/libpmc.c M share/man/man4/hwpmc.4 M sys/dev/hwpmc/hwpmc_amd.c M sys/dev/hwpmc/hwpmc_mod.c M sys/sys/pmc.h _____________________________________________________________________________________________________________ Commit: de5689d1e6ea621249e1ef44db3c2d3ee8431ba5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=de5689d1e6ea621249e1ef44db3c2d3ee8431ba5 Author: Maxim Konovalov (Tue 22 Sep 2026 22:32:43 BST) Committer: Maxim Konovalov (Tue 6 Oct 2026 18:37:11 BST) bsnmp: validate the lower bound of error_index in responses Check if the response's error_index is within a sane interval. Otherwise, a rogue peer could crash us. PR: 298222 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298222 ) Reported by: Robert Morris Reviewed by: markj Discussed with: secteam (markj) MFC after: 2 weeks Analyzed with: Claude Code Opus 5 (cherry picked from commit 296e3fd54ca8972fa6696974097a2f2705f8dfc4) M usr.sbin/bsnmpd/tools/bsnmptools/bsnmpget.c M usr.sbin/bsnmpd/tools/libbsnmptools/bsnmptools.c _____________________________________________________________________________________________________________ Commit: 0154a0df90c736d0c6d246b31f92c7becf71a86a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0154a0df90c736d0c6d246b31f92c7becf71a86a Author: Maxim Konovalov (Tue 22 Sep 2026 23:49:33 BST) Committer: Maxim Konovalov (Tue 6 Oct 2026 18:36:47 BST) bsnmpget: initialise the suboption value in getsubopt1() Otherwise, "bsnmpget -o verbose -I cut" crashes. Reported by: clang static analyzer MFC after: 2 weeks (cherry picked from commit 5d169b5365b1f5cdf8586efa9421feaa4bfe40af) M usr.sbin/bsnmpd/tools/libbsnmptools/bsnmptools.c _____________________________________________________________________________________________________________ Commit: 2da109690be8f29f03b68150c827f47db81ad8b5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2da109690be8f29f03b68150c827f47db81ad8b5 Author: Maxim Konovalov (Tue 22 Sep 2026 00:32:09 BST) Committer: Maxim Konovalov (Tue 6 Oct 2026 18:36:21 BST) dummynet: do not overflow the points[ED_MAX_SAMPLES_NO] array Otherwise, the following would segfault dnctl pipe 1 config bw 1Mbit/s profile 1025points.txt Found with: Claude Code Sonnet 5 MFC after: 2 weeks (cherry picked from commit 04fcf30961266cd77139b40774cb0d6ef6eb2be5) M sbin/ipfw/dummynet.c _____________________________________________________________________________________________________________ Commit: 0c409a56237ae09be7ba491750bbbbdb25ef2e4d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0c409a56237ae09be7ba491750bbbbdb25ef2e4d Author: Dimitry Andric (Sat 3 Oct 2026 12:36:42 BST) Committer: Dimitry Andric (Tue 6 Oct 2026 17:38:03 BST) Merge commit c4ce37507537 from llvm-project (by ShengYi Hung): [Clang][Sema] Create LocalScope for Variable Template (#228280) A variable template should create its own LocalScope, as it should be opaque to other instantiations. This can occur when there are multiple instantiations in the same lexical scope. The correct behavior is that these instantiations should not be chained together. Assisted-by: Claude # Test ReleaseNote Fixes: #134148 This fixes an assertion while building the devel/glaze port. PR: 276265 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=276265 ) MFC after: 3 days (cherry picked from commit fe9c7137871ee0b5c48d4c38b87d80f72e73379e) M contrib/llvm-project/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp _____________________________________________________________________________________________________________ Commit: 8b754816e8032ceac791a9cfd5b6b9f589d81755 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8b754816e8032ceac791a9cfd5b6b9f589d81755 Author: Xiaoqiang Zhao (Mon 28 Sep 2026 16:14:09 BST) Committer: Dimitry Andric (Tue 6 Oct 2026 17:37:45 BST) llvm: add LoongArch target support, not enabled by default Note there is ongoing work to add LoongArch support to the base system, but having target support in llvm is an essential component. This must be explicitly enabled using WITH_LLVM_TARGET_LOONGARCH. Reviewed by: dim MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59899 (cherry picked from commit 2f49e40a684a4bffd8e368a6878384ec4f735ea8) M lib/clang/include/llvm/Config/AsmParsers.def M lib/clang/include/llvm/Config/AsmPrinters.def M lib/clang/include/llvm/Config/Disassemblers.def M lib/clang/include/llvm/Config/Targets.def M lib/clang/libllvm/Makefile M lib/clang/llvm.build.mk M share/man/man5/src.conf.5 M share/mk/src.opts.mk A tools/build/options/WITHOUT_LLVM_TARGET_BPF A tools/build/options/WITHOUT_LLVM_TARGET_LOONGARCH M tools/build/options/WITH_LLVM_TARGET_BPF A tools/build/options/WITH_LLVM_TARGET_LOONGARCH _____________________________________________________________________________________________________________ Commit: afc8c5f9fd73badc16d8312d86ecfd88ad01be01 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=afc8c5f9fd73badc16d8312d86ecfd88ad01be01 Author: Dimitry Andric (Thu 1 Oct 2026 13:31:42 BST) Committer: Dimitry Andric (Tue 6 Oct 2026 17:34:13 BST) Merge commit 80e8c0a59189 from llvm-project (by ShengYi Hung): [DebugInfo] Fill Column 0 if Line is not found (#227559) It is possible that user specified line 0 as the start of the line in C language (using `# 0`). However, it is rejected by the Lexer as we have no line but still carries column information. As a result, we fill column to 0 if we cannot find line. Assisted-by: Claude # Test Fixes: #56186 This fixes a fatal error when building the textproc/peg port. PR: 264853 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=264853 ) MFC after: 3 days (cherry picked from commit 37c9eba1644b0f9e1b5d130ccff381122f48aebe) M contrib/llvm-project/clang/lib/CodeGen/CGDebugInfo.cpp _____________________________________________________________________________________________________________ Commit: 35aeff778dc976fa48b3a165dd80a92eb452f5e2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=35aeff778dc976fa48b3a165dd80a92eb452f5e2 Author: Roman Bogorodskiy (Fri 28 Aug 2026 18:51:31 BST) Committer: Roman Bogorodskiy (Tue 6 Oct 2026 09:16:43 BST) bhyveload: validate character disk devices Currently, bhyveload(8) does not validate the supplied disk image path. For example, it allows passing the /dev/null device, which later fails in userboot because it does not support DIOCGSECTORSIZE and DIOCGMEDIASIZE ioctls (see userdisk_init() in stand/userboot/userboot/userboot_disk.c). Fix that by checking DIOCGSECTORSIZE and DIOCGMEDIASIZE ioctls early. A similar check already exists in bhyve(8). While here, make cb_diskioctl() report the obtained sector size instead of hard-coding 512. Reviewed by: markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59253 (cherry picked from commit 51234535ddd6ec0afe9dd4e3f34a31b92d5cdd78) M usr.sbin/bhyveload/bhyveload.c _____________________________________________________________________________________________________________ Commit: 7c66df657e167d1e1759d0e4e8c11d5cc3ed6835 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7c66df657e167d1e1759d0e4e8c11d5cc3ed6835 Author: Jaeyoon Choi (Tue 15 Sep 2026 04:02:38 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:10 BST) ufshci: build the ioctl file into the kernel The passthrough ioctl went into the module build only. A kernel with device ufshci then failed to link, because ufshci_ctrlr.c calls ufshci_ioctl_construct() and ufshci_ioctl_destruct() and neither was compiled in. Add the file to sys/conf/files. Fixes: 28fefc441e3b ("ufshci: add a control device node") Sponsored by: Samsung Electronics (cherry picked from commit d435248a2196bc78f626850a7ae700aaeace1c13) M sys/conf/files _____________________________________________________________________________________________________________ Commit: d815ad7420115f8e453c42e8e0b94ab2049b53ee URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d815ad7420115f8e453c42e8e0b94ab2049b53ee Author: Jaeyoon Choi (Tue 15 Sep 2026 02:42:17 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:09 BST) ufshci: install the ioctl header The passthrough ioctl has a userland ABI header, but nothing installed it. A program that wanted to use the ioctl had to copy the headers out of the source tree by hand. Install ufshci.h and ufshci_ioctl.h under /usr/include/dev/ufshci, the way nvme installs nvme.h. The ioctl header pulls in ufshci.h, so both go. Add the directory to the include mtree so installworld creates it. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D59560 (cherry picked from commit 8895b1348f3d21e2db16a06f31d555be0471e36d) M etc/mtree/BSD.include.dist M include/Makefile _____________________________________________________________________________________________________________ Commit: 26ca0a15a8bd09843a7df0a3d8f0ace80f291a8b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=26ca0a15a8bd09843a7df0a3d8f0ace80f291a8b Author: Jaeyoon Choi (Tue 15 Sep 2026 02:40:33 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:09 BST) ufshci: add a passthrough ioctl This ioctl is for a port of ufs-utils: https://github.com/SanDisk-Open-Source/ufs-utils The driver only exposed a CAM SIM. Reading a descriptor, an attribute or a flag needs a query request, and a UniPro attribute needs a DME command. The driver built both only for its own setup, so userland could reach neither. Add two ioctls on the control node. UFSHCI_PASSTHROUGH_CMD sends a UPIU the caller built, sizes the request from its transaction code, and copies the response UPIU back. UFSHCI_PASSTHROUGH_UIC carries the four attribute commands and refuses the rest, which can drop the link or power the device off. It keeps the raw argument2 so the caller can read the result code the device reported, not just a failure. Validate the input and bound it by what the controller can map. The descriptor has no request length, so the controller reads it from the UPIU header, and a header that declares more than was copied in would reach past the descriptor. The ioctl layer copies output back only on a zero return. So a command that reached the device is a success even when it was refused. The caller reads the reason from the response header, and an answerless failure comes back as EIO. Clear the response before use so no stale bytes read as a device answer. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D59559 (cherry picked from commit ae31f2928596f8c6efc8f136559562d864968dcc) M sys/dev/ufshci/ufshci.h M sys/dev/ufshci/ufshci_ioctl.c M sys/dev/ufshci/ufshci_ioctl.h M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_uic_cmd.c _____________________________________________________________________________________________________________ Commit: 4392fed5c8ee699d22ac833e649b6abacd4afa18 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4392fed5c8ee699d22ac833e649b6abacd4afa18 Author: Jaeyoon Choi (Tue 15 Sep 2026 02:39:41 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:09 BST) ufshci: add a control device node The driver only exposed a CAM SIM. Userland had no way to reach the device for anything that is not a SCSI command, so reading a descriptor or an attribute was impossible. Add /dev/ufshci%d as a root only node and the ioctl ABI header for it. The node answers no ioctl yet. The header pulls in ufshci.h, which declares bool only under _KERNEL, so include stdbool.h for userland the way nvme.h already does. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D59558 (cherry picked from commit 28fefc441e3b701acc2888892a518774394255c7) M sys/dev/ufshci/ufshci.h M sys/dev/ufshci/ufshci_ctrlr.c A sys/dev/ufshci/ufshci_ioctl.c A sys/dev/ufshci/ufshci_ioctl.h M sys/dev/ufshci/ufshci_private.h M sys/modules/ufshci/Makefile _____________________________________________________________________________________________________________ Commit: ac1ad37b7d84d19625c887d89034d6291a3e03d4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ac1ad37b7d84d19625c887d89034d6291a3e03d4 Author: Jaeyoon Choi (Tue 15 Sep 2026 02:37:30 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:08 BST) ufshci: tell the controller how long the EHS is The transfer request descriptor has a field for the total Extra Header Segment length. The driver left it at zero. A request that carried an EHS went out as the bare command UPIU, and the device answered a request it had only seen part of. Fill the field from the request UPIU header, which already carries the same length. Every other path sets it to zero, so nothing else changes. An EHS is the first thing that makes a request vary in size, so assert that the request and the response still fit in the command descriptor. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D59557 (cherry picked from commit d3e5082ce4dcb154cbf50cba05d8f1dbbd55a5fc) M sys/dev/ufshci/ufshci_req_queue.c _____________________________________________________________________________________________________________ Commit: 6f162827ada7e1cf8cb038a03a26a346bb71ffe6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6f162827ada7e1cf8cb038a03a26a346bb71ffe6 Author: Jaeyoon Choi (Wed 2 Sep 2026 02:52:48 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:08 BST) ufshci: skip the reinit when the new link works UFSHCI_QUIRK_REINIT_AFTER_MAX_GEAR_SWITCH always rebuilt the link after the gear switch. It threw away a working HS link and ended up in PWM. The reinit is only needed for a dead link. There the local side reports HS and the peer never answers. A local readback cannot tell the two apart. Peer traffic can. Probe the peer with DME_PEER_GET after the switch. Skip the reinit when the probe succeeds. Log it when the probe fails. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D59299 (cherry picked from commit 9930150214d1ca4ad21561d2e0afce9ebf2cdf6c) M sys/dev/ufshci/ufshci_ctrlr.c _____________________________________________________________________________________________________________ Commit: 1aaad60ae89a132bbca0b1f1af85a5eb0f65f7b1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1aaad60ae89a132bbca0b1f1af85a5eb0f65f7b1 Author: Jaeyoon Choi (Wed 2 Sep 2026 02:50:09 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:07 BST) ufshci: set HS series per platform and adapt type per gear The driver always asked for Rate-B. It never set the adaptation type. The Snapdragon X Elite firmware tunes the PHY for Rate-A. A Rate-B link dies at every gear there. HS-G4 and above need initial adaptation. This is a UniPro rule. It applies to every host. Add an hs_series field to the device tables. Use Rate-A on the Snapdragon X Elite. Keep Rate-B on the PCI hosts. A table entry without an HS series fails to attach. Set PA_TxHsAdaptType to initial adaptation at HS-G4 and above. Leave it alone below that. Hosts before UniPro 1.8 do not have it. The Galaxy Book 4 Edge now links at HS-G5 Rate-A. fio results (128k sequential, 4k random, posixaio): QD | SEQ_R(MiB/s) | SEQ_W(MiB/s) | RND_R(kIOPS) | RND_W(kIOPS) ----+--------------+--------------+--------------+------------- 1 | 1357 | 1221 | 12.1 | 27.2 4 | 3103 | 3234 | 46.5 | 92.9 32 | 3508 | 3238 | 176.4 | 125.0 Sequential writes land in the WriteBooster buffer. Sustained writes drop to 556 MiB/s once the buffer runs out. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D59298 (cherry picked from commit c09daa33d6ffbbd1956bfe4dcd9ca746192d6940) M sys/dev/ufshci/ufshci.h M sys/dev/ufshci/ufshci_acpi.c M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_pci.c M sys/dev/ufshci/ufshci_private.h _____________________________________________________________________________________________________________ Commit: 8dcd02bdf8a6f25fd541a4f0df9131395bfefc47 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8dcd02bdf8a6f25fd541a4f0df9131395bfefc47 Author: Jaeyoon Choi (Wed 2 Sep 2026 02:47:18 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:07 BST) ufshci: fix the Snapdragon X Elite reference clock The driver's ACPI table set bRefClkFreq to 19.2 MHz. The Snapdragon X Elite feeds the device 38.4 MHz from its CXO. The firmware has no property for it. The device ran its PLL from the wrong base. Every HS mode failed. PWM still worked. The attribute is persistent. The wrong value survived reboots. Set 38.4 MHz in the table. Read the attribute first. Write it only when the value differs or the read fails. Log a changed value and a failed read. Verified on the Galaxy Book 4 Edge. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D59297 (cherry picked from commit 973783515e7db6e19550c57c8f9d94d907e3bd0e) M sys/dev/ufshci/ufshci_acpi.c M sys/dev/ufshci/ufshci_dev.c _____________________________________________________________________________________________________________ Commit: 3e6ff534b634831cbc5faeda22cb3bbe77979fcb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3e6ff534b634831cbc5faeda22cb3bbe77979fcb Author: Jaeyoon Choi (Thu 27 Aug 2026 06:04:11 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:06 BST) ufshci: reject new requests on a failed controller A failed controller accepted new requests, but nothing ever completed them, so the caller waited forever. The admin retry path could also resubmit a request to a dead queue. Reject new submits and admin retries on a failed controller. The submit check runs under the queue lock, so it cannot race with the queue walk in the fail path. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58948 (cherry picked from commit 3ecee9314d88e2bb277b365d9413e219fd9a1283) M sys/dev/ufshci/ufshci_req_queue.c _____________________________________________________________________________________________________________ Commit: 36e915b5eacb667a7f65aa6b89083022cf675bff URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=36e915b5eacb667a7f65aa6b89083022cf675bff Author: Jaeyoon Choi (Thu 27 Aug 2026 06:03:02 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:06 BST) ufshci: handle a recovery reset before the SIM attach When the first start attempt fails early, the recovery reset runs the start sequence again without a SIM. That pass still looked up the WLUN, so it dereferenced a NULL SIM and panicked. Attach the SIM whenever it does not exist yet. Also make the WLUN lookup return NULL when there is no SIM. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58947 (cherry picked from commit e59d4ec66fcab3da813f593f52bb8f1577cbb403) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: c8095bbcad867e6342ab1cd498318a7276a52484 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c8095bbcad867e6342ab1cd498318a7276a52484 Author: Jaeyoon Choi (Thu 27 Aug 2026 06:02:10 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:05 BST) ufshci: build valid fake responses for manual completion The manual completion wrote the fake response to the wrong descriptor for task management slots. It also left the task tag at zero, which tripped the task tag check under INVARIANTS. Write the fake response where the completion path reads it. Copy the task tag from the request. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58946 (cherry picked from commit 746278a6ddc80a98001f875cd975283d7c99b960) M sys/dev/ufshci/ufshci_req_queue.c _____________________________________________________________________________________________________________ Commit: d4e7c457a762403faab9bb1c71844353fda7b275 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d4e7c457a762403faab9bb1c71844353fda7b275 Author: Jaeyoon Choi (Thu 27 Aug 2026 06:00:41 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:05 BST) ufshci: claim trackers before failing them ufshci_req_queue_fail() drops the queue lock to complete each tracker. In that window the completion path could complete the same tracker again. Claim the slot before dropping the lock, so the completion scan skips it. Reserved slots are left to their submit thread, which completes them itself. The manual request completion helper lost its only caller, so drop it. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58945 (cherry picked from commit 7682b8f37669671844fedd94a382ec0c459b9b2c) M sys/dev/ufshci/ufshci_req_queue.c _____________________________________________________________________________________________________________ Commit: 94e28f979a84251f7108c10db7efc8ccdf424b2e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=94e28f979a84251f7108c10db7efc8ccdf424b2e Author: Jaeyoon Choi (Thu 27 Aug 2026 05:58:21 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:04 BST) ufshci: run the controller fail path only once Two threads could run ufshci_ctrlr_fail() at the same time. Each one walked the queues and completed the same trackers again, which caused a double free and a panic. Turn is_failed into an atomic gate, so only the first caller walks the queues. The reset task now returns early on a failed controller instead of re-enabling it. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58944 (cherry picked from commit 1258ae2bcb559854c966e425f4c5c48668d3cf7b) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_private.h _____________________________________________________________________________________________________________ Commit: 5f607128c9fb20d487b8b040a65172a9bd83387e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5f607128c9fb20d487b8b040a65172a9bd83387e Author: Jaeyoon Choi (Tue 18 Aug 2026 06:09:21 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:04 BST) ufshci: report the highest LUN number in the path inquiry cpi->max_lun is an inclusive upper bound, but the driver reported the LUN count (8 or 32), so CAM probed one nonexistent LUN past the end. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58820 (cherry picked from commit 68091ebf0a72b58424e6b57d6ff9687af9043003) M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: a078bf6669da860792fd2867beba5f5076b78bcd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a078bf6669da860792fd2867beba5f5076b78bcd Author: Jaeyoon Choi (Tue 18 Aug 2026 06:06:54 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:03 BST) ufshci: correct the crypto/config register offsets and HCMID fields The reserved array after CCAP must be 508, but it was 511. This pushed the config, MCQ config, and ESI registers from 0x300 and 0x380 up to 0x900. None of these registers are used yet, so nothing broke. Also fix the HCMID bank index field. The spec places it at bits [23:16], but it was defined on top of the manufacturer code at [15:0]. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58819 (cherry picked from commit 34518292a3e077efe239b61f64b9d860bbfb2960) M sys/dev/ufshci/ufshci_reg.h _____________________________________________________________________________________________________________ Commit: 5dd01a6f1518d9bc615880ec04d732fca00489bb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5dd01a6f1518d9bc615880ec04d732fca00489bb Author: Jaeyoon Choi (Tue 18 Aug 2026 05:52:54 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:03 BST) ufshci: consolidate the device query submit/poll pattern The six query helpers duplicated the same submit, error check, poll, and status check sequence. Move it into ufshci_dev_send_query() so future changes to the query flow are made in one place. This also unifies the failure log message format. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58818 (cherry picked from commit e1aa173f812010675005e2917d7b2b44ee4a226e) M sys/dev/ufshci/ufshci_dev.c _____________________________________________________________________________________________________________ Commit: 7fb453f00502c522656f44715f2a55a0313e76d0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7fb453f00502c522656f44715f2a55a0313e76d0 Author: Jaeyoon Choi (Tue 18 Aug 2026 05:51:42 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:02 BST) ufshci: validate the CDB before allocating a request The CDB pointer and length checks depend only on the CCB, so perform them before allocating and initializing the request. This avoids a wasted allocation for invalid CCBs on the I/O path and removes one request-free error path. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58817 (cherry picked from commit f3c3db35d545bb14b96e4cb079312c377247540b) M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: 4adcdaf0da316483cc0f5eabb8448dd968a02875 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4adcdaf0da316483cc0f5eabb8448dd968a02875 Author: Jaeyoon Choi (Tue 18 Aug 2026 05:50:27 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:02 BST) ufshci: pass the queue being destroyed to the cmd descriptor teardown ufshci_req_sdb_destroy() hardcoded &ctrlr->transfer_req_queue when destroying command descriptors instead of using its req_queue argument. No functional change: the branch only runs for the transfer queue, so the two pointers are always the same today. Using the argument keeps the function queue-agnostic for when more transfer queues exist (MCQ). Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58816 (cherry picked from commit dbcebc7c661e961ea6e72ef77e29675aca86ab4b) M sys/dev/ufshci/ufshci_req_sdb.c _____________________________________________________________________________________________________________ Commit: 88fe4b75cf27064f9c19dac4be24440a27ae55fe URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=88fe4b75cf27064f9c19dac4be24440a27ae55fe Author: Jaeyoon Choi (Tue 18 Aug 2026 05:48:56 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:02 BST) ufshci: return the real errno from SDB queue construction ufshci_req_sdb_cmd_desc_construct() and ufshci_req_sdb_construct() returned ENOMEM for every failure, so an EINVAL from bus_dma_tag_create() was reported as a memory shortage. Capture and return the real errno, and drop the cmd descriptor construct's now pointless out label. No functional change: no caller inspects the value beyond propagating it, so this only improves the diagnostics on an attach failure. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D58815 (cherry picked from commit a508a9f7238828fb5fb0f68e9f5df7d24072d6c2) M sys/dev/ufshci/ufshci_req_sdb.c _____________________________________________________________________________________________________________ Commit: b3f313e26e878904fd39722b09520d68e0c8a167 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b3f313e26e878904fd39722b09520d68e0c8a167 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:53:27 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:01 BST) ufshci: do not reset the device in the XPT_RESET_DEV handler CAM calls the SIM action callback with the SIM lock and the CAM device lock held. The XPT_RESET_DEV handler called ufshci_dev_reset(), which sleeps on device commands. Sleeping there panics when another thread contends for the lock: "panic: sleeping thread holds CAM device lock". Report success without touching the device, as nvme_sim(4) does. A real device reset needs the controller reset path. That rework is planned together with in-flight request recovery. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58671 (cherry picked from commit a33860b0a2b98caf32c2ff62707f254ca92773f4) M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: 748239b973e2c24160b29742d7e90f0670a6d203 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=748239b973e2c24160b29742d7e90f0670a6d203 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:52:37 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:01 BST) ufshci: free the taskqueue on detach ufshci_ctrlr_destruct() never freed the taskqueue. Every load and unload cycle leaked the taskqueue and its kernel thread. A task that was still queued could also run after the module was gone. Free the taskqueue in destruct. Do it after the interrupt teardown so nothing enqueues new work. A reset task that is still queued at this point races the queue teardown. That race is older than this change. The planned in-flight recovery rework will close it. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58670 (cherry picked from commit 2d32961316248fdff54a2a9fc24ac8b712fee9b0) M sys/dev/ufshci/ufshci_ctrlr.c _____________________________________________________________________________________________________________ Commit: 31d28afe7ec5b92b8af1bb324be2e93ff78363b4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=31d28afe7ec5b92b8af1bb324be2e93ff78363b4 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:51:30 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:00 BST) ufshci: release the CCB after sending a start stop unit command ufshci_sim_send_ssu() got a CCB from cam_periph_getccb() but never returned it. Each call leaked the CCB and one slot of the device's CCB allocation budget. When the budget runs out, the next cam_periph_getccb() waits forever and the suspend path hangs. Release the CCB while the periph lock is still held, as the other CAM periph drivers do. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58669 (cherry picked from commit aaf0e80e684da35cd527491243583467ae7c75cb) M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: af54fe0db727a82838f593b1716b4f2a2e404fa8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=af54fe0db727a82838f593b1716b4f2a2e404fa8 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:49:31 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:28:00 BST) ufshci: check completions under the queue lock The completion scan held only the recovery lock. The submit path sets a slot to SCHEDULED and then rings the doorbell, both under the queue lock. A scan running between those two steps saw a SCHEDULED slot with a clear doorbell and completed a command the device had not started. The command failed with OCS 0xf, and a reused slot could return wrong read data. Check the slot state and the doorbell under the queue lock. The submit path holds it across both steps, so a half-submitted slot can no longer be seen. Found with fio randrw verify on QEMU. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58668 (cherry picked from commit c686e7d3b0d315c358be81b4a1151711213d998d) M sys/dev/ufshci/ufshci_req_sdb.c _____________________________________________________________________________________________________________ Commit: d3ff4bd64c07b1c28c38222a89307482d6df080b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d3ff4bd64c07b1c28c38222a89307482d6df080b Author: Jaeyoon Choi (Mon 10 Aug 2026 02:48:41 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:59 BST) ufshci: read UIC command results while holding the lock The UIC result registers (UICCMDARG2/3) are only valid between a command's completion and the next command's submission. They were read after uic_cmd_lock was dropped, so a concurrent UIC submitter could overwrite them in between. Read them into locals before releasing the lock. Also mask the generic error code to its [7:0] field when checking it, so unrelated bits in UICCMDARG2 (such as the attribute set type echoed for DME_SET) cannot be mistaken for an error. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58667 (cherry picked from commit 266ce89fc231d58431293cf5b77e0854440aa13d) M sys/dev/ufshci/ufshci_uic_cmd.c _____________________________________________________________________________________________________________ Commit: b6e20a5ae8a1782749495e4caa018e2e2cb26123 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b6e20a5ae8a1782749495e4caa018e2e2cb26123 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:47:38 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:59 BST) ufshci: initialize desc_size for non-descriptor query requests The flag and attribute query builders left param.desc_size uninitialized, so stack garbage was sent as the query UPIU length field. Devices generally ignore the length for these opcodes, which hid the bug. Zero it explicitly. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58665 (cherry picked from commit af00e00f23a1d427d96fecbb39e276fc2d7dfde1) M sys/dev/ufshci/ufshci_dev.c _____________________________________________________________________________________________________________ Commit: 2e2f523ae6999d39e07dfebffd06f942fe8a13b8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2e2f523ae6999d39e07dfebffd06f942fe8a13b8 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:46:50 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:59 BST) ufshci: byte-swap big-endian UPIU fields The UPIU wire fields are big-endian. The task management and query builders wrote host-order values into them. The completion paths also read the results back without conversion. On a little-endian host an ABORT_TASK carried a swapped task tag and LUN, a query carried a swapped length, and attribute reads returned swapped values. Tolerant devices masked most of the damage. Convert with htobe*/be*toh at the wire boundary, as ufshci_sim.c already does for its fields. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58664 (cherry picked from commit 50a00f10d830119ed54f5bce1b34533f3a09325e) M sys/dev/ufshci/ufshci_ctrlr_cmd.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_req_queue.c _____________________________________________________________________________________________________________ Commit: 75180cf2ec09248c501ccfd9923dd1e2e5726b65 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=75180cf2ec09248c501ccfd9923dd1e2e5726b65 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:45:49 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:58 BST) ufshci: initialize alloc_units before the dedicated-buffer scan If every unit descriptor read failed in the LU-dedicated WriteBooster scan, alloc_units was used uninitialized. Start it at zero so that case is treated as a zero-sized buffer and WriteBooster is disabled. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58663 (cherry picked from commit 456ab423dddc0ce07787b21fcb79426abc7b436e) M sys/dev/ufshci/ufshci_dev.c _____________________________________________________________________________________________________________ Commit: 5f7c2adceb5c3df28a24e8c6f0287f4a5b640263 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5f7c2adceb5c3df28a24e8c6f0287f4a5b640263 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:44:35 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:58 BST) ufshci: do not free the devq twice on SIM attach failure cam_sim_free() with free_devq set already frees the devq, so the following cam_simq_free() call on the xpt_bus_register() and xpt_create_path() failure paths was a double free. Also clear ctrlr->ufshci_sim so a later ufshci_sim_detach() does not operate on the freed SIM. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58662 (cherry picked from commit c71705a0830497c080579896b4aa2a5ce2513f1c) M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: e0ce55de9adcff53dfb9e614f623d3873d095dc7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e0ce55de9adcff53dfb9e614f623d3873d095dc7 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:43:34 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:57 BST) ufshci: check SDB queue allocations for failure The hardware queue and ucd_bus_addr allocations use M_NOWAIT but were used without a NULL check, and the payload bus_dmamap_create() return value was ignored, so a failed allocation was only discovered by faulting on it later. Fail the construction instead. The teardown path handles the partially constructed queue. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58661 (cherry picked from commit 25a61a7927c8b1a516e6e095a6f53031a8636fde) M sys/dev/ufshci/ufshci_req_sdb.c _____________________________________________________________________________________________________________ Commit: 6b85b8e923ae55ca57c15eb46103a2a35cdc3ef4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6b85b8e923ae55ca57c15eb46103a2a35cdc3ef4 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:42:16 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:57 BST) ufshci: tolerate partially constructed queues in SDB teardown When attach fails, ufshci_req_sdb_destroy() runs on a partially constructed queue, and it runs twice: once from the construct error path and once from the controller destructor. Make that safe: NULL-check each resource before freeing it and clear the pointer afterwards, so a second call finds nothing to do. The construct error label no longer frees the command descriptors itself, which fixes a double free of ucd_bus_addr. Also destroy the payload DMA tag, which was previously leaked. Drop the mtx_initialized() checks: the locks are always set up before any failure path can reach the destroy. Attach can also fail before the queues were constructed at all. The destructor would then call a NULL qops.destroy pointer, so skip the destroy when the queue was never set up. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58660 (cherry picked from commit 24c2ead33b44ca5db2605b462c935236f3a73443) M sys/dev/ufshci/ufshci_req_queue.c M sys/dev/ufshci/ufshci_req_sdb.c _____________________________________________________________________________________________________________ Commit: 87ececd2dd8f3de45be0010e0bfbd9941d4e29e5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=87ececd2dd8f3de45be0010e0bfbd9941d4e29e5 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:40:28 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:56 BST) ufshci: free the correct address when DMA load fails The bus_dmamap_load() error paths passed hwq->utrd and req_queue->ucd to bus_dmamem_free(), but both pointers are only assigned after a successful load and are still NULL at that point. The freshly allocated memory was leaked. Free the local buffer instead. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58659 (cherry picked from commit c2186638ff7052e3803f2bdab9ad62cfb69ac7de) M sys/dev/ufshci/ufshci_req_sdb.c _____________________________________________________________________________________________________________ Commit: c8852e0ac0c1b6ce9947e412307fbc7d7659b5c8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c8852e0ac0c1b6ce9947e412307fbc7d7659b5c8 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:39:12 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:56 BST) ufshci: fix WLUN periph reference counting The driver stored the WLUN periph pointer without holding a reference, so the pointer went stale when the pass(4) device went away. In addition, ufshci_sim_send_ssu() released a reference that it had never acquired. Define a simple ownership rule. ufshci_sim_find_periph() acquires the periph and returns it. The cache owns one reference. The controller destructor drops it with cam_periph_release() before taking the SIM lock, since the release takes the CAM device lock by itself. ufshci_sim_send_ssu() acquires its own reference and releases it when done. Reuse the cached periph instead of searching again, so the old reference is not leaked. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58658 (cherry picked from commit c84c2bf78b39058a339551117323668c933f6162) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: ad33bd6f67a906e26e96aaf7cfb3448038bc9647 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ad33bd6f67a906e26e96aaf7cfb3448038bc9647 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:37:00 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:55 BST) ufshci: free the lookup path when the periph search times out ufshci_sim_find_periph() freed the lookup path only when it found the periph. The timeout path returned without freeing it and leaked the path. Free the path at the single exit instead. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58657 (cherry picked from commit 607189d789ac37fac03025cbf7dfb0d243b7c49e) M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: 49c63957ab9b2c41d9de6629371f96a5827ff982 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=49c63957ab9b2c41d9de6629371f96a5827ff982 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:35:45 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:55 BST) ufshci: fix SCSI I/O request failure cleanup ufshchi_sim_scsiio() did not check the M_NOWAIT request allocation for NULL. The CDB validation and submit failure paths also returned without freeing the request. Fail the CCB when the allocation returns NULL. Free the request on every failure path. Mark the CCB as queued right before the submit, so the failure paths above do not need to touch that flag. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58656 (cherry picked from commit 360b7c1635ea772d41275f8d1061cef4e131e328) M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: 9997667c1b34eda8a1f3f1bd4c20e28d1144f07b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9997667c1b34eda8a1f3f1bd4c20e28d1144f07b Author: Jaeyoon Choi (Mon 10 Aug 2026 02:34:06 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:54 BST) ufshci: handle controller command submit failures Return submission errors from the controller command helpers and propagate them to polled callers before waiting for completion. Free requests that never enter a hardware queue so failure paths do not leak or panic after the poll timeout. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58655 (cherry picked from commit c9827f1528a69664f4031e1c511b2e7022601a7c) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_ctrlr_cmd.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_req_queue.c _____________________________________________________________________________________________________________ Commit: d8ed29dcb9f3fa7cc2a91c20f2f17e23664db663 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d8ed29dcb9f3fa7cc2a91c20f2f17e23664db663 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:33:00 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:54 BST) ufshci: fail attribute reads on a non-zero config result code ufshci_uic_send_cmd() only logged the error code and returned success, so a failed DME_GET gave its caller a stale value as if it were valid. The gear and lane settings could then be programmed from that garbage. Return ENXIO for reads instead. Writes keep logging and continuing, because a device may reject an optional attribute and that must not fail bring-up. Sponsored by: Samsung Electronics Reviewed by imp (mentor) Differential Revision: https://reviews.freebsd.org/D58654 (cherry picked from commit 154e335cd635436c69ad98723e25988852bd11db) M sys/dev/ufshci/ufshci_uic_cmd.c _____________________________________________________________________________________________________________ Commit: 3c812d0f02e35ccc3b2a5087819b1acb052851b8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3c812d0f02e35ccc3b2a5087819b1acb052851b8 Author: Jaeyoon Choi (Mon 10 Aug 2026 02:31:43 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:53 BST) ufshci: abort submission when payload DMA mapping fails When bus_dmamap_load_mem() failed, ufshci_req_queue_prepare_prdt() manually completed and released the tracker, but its caller kept going: it built the UTRD, set the slot back to SCHEDULED, and rang the doorbell for a tracker whose request had already been freed. Return the mapping error and stop the submission so the released tracker is not resurrected. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58653 (cherry picked from commit 5f3a2b364ea51ea05daa4399693bda2021e39434) M sys/dev/ufshci/ufshci_req_queue.c _____________________________________________________________________________________________________________ Commit: c9e2fd2eb3b91cbef7295e556b22ab249b14686e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c9e2fd2eb3b91cbef7295e556b22ab249b14686e Author: Jaeyoon Choi (Mon 10 Aug 2026 02:30:11 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:53 BST) ufshci: fix data direction encoding for read commands The data_direction field in the UTP Transfer Request Descriptor is only 2 bits wide ([26:25]). UFSHCI_DATA_DIRECTION_FROM_TGT_TO_SYS was defined as 0x10, which truncates to 0b00 (No data transfer) when stored into the 2-bit field, so every read command was described to the controller as having no data phase. Only writes (0b01) happened to be encoded correctly. Define all values as 2-bit binary literals, matching the existing RESERVED = 0b11 entry, so read is encoded as 0b10 as required by the specification. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D58652 (cherry picked from commit cf04a05424f1a79e55303de252e5873abeae7b88) M sys/dev/ufshci/ufshci.h _____________________________________________________________________________________________________________ Commit: c4035bfbf17e2fd4f42b4562f5cec5df4815635f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c4035bfbf17e2fd4f42b4562f5cec5df4815635f Author: Jaeyoon Choi (Tue 24 Mar 2026 05:16:26 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:52 BST) ufshci: Support ACPI Supports UFS host controller attachment via ACPI. Tested on the Samsung Galaxy Book 4 Edge using Qualcomm Snapdragon X Elite. Additionally, a quirk related to power mode change has been added. For reference, it doesn't reach maximum speed yet. I plan to improve it later. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D55986 (cherry picked from commit e2083e8d3a01cac739b38521abc72620d3810aba) M sys/conf/files A sys/dev/ufshci/ufshci_acpi.c M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_private.h M sys/modules/ufshci/Makefile _____________________________________________________________________________________________________________ Commit: 03ff40e2c1838571668a7bedd716b9632976e680 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=03ff40e2c1838571668a7bedd716b9632976e680 Author: Jaeyoon Choi (Tue 24 Mar 2026 05:14:04 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:52 BST) ufshci: add uic powermode parameter to sysctl Adds parameters related to the performance of the UFS device. Also update man page for the missing sysctl entries. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D55985 (cherry picked from commit 085028463fa92b28939c87d0a14337fc14f394a0) M share/man/man4/ufshci.4 M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_pci.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_sysctl.c _____________________________________________________________________________________________________________ Commit: 5286fdbc8e977f1b8cb8ed4153cf01b5648e0dde URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5286fdbc8e977f1b8cb8ed4153cf01b5648e0dde Author: Jaeyoon Choi (Tue 24 Mar 2026 05:12:14 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:51 BST) ufshci: fix bug in ufshci_req_sdb_enable When enabling the request queue, safely reset the list base address. This was added due to a quirk in the Qualcomm UFS controller during the process of activating it. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D55984 (cherry picked from commit c4386988baa2ecdcb482c8ccace183dc643d097c) M sys/dev/ufshci/ufshci_req_sdb.c _____________________________________________________________________________________________________________ Commit: c6c2c22ffe51d456882e18e1a3c2d8bc0b6e018a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c6c2c22ffe51d456882e18e1a3c2d8bc0b6e018a Author: Jaeyoon Choi (Wed 4 Feb 2026 23:53:01 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:51 BST) ufshci: Remove UIC error during initialization This patch removes the UIC error caused by QEMU not supporting certain UIC command. Additionally, it removes the unused unipro_version. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54513 (cherry picked from commit 0f515c0a97489d8d35aca7f5e28c28b22f217dc9) M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_private.h _____________________________________________________________________________________________________________ Commit: 5e2782d26567a4d8d558ca05800855c7fc217e35 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5e2782d26567a4d8d558ca05800855c7fc217e35 Author: Jaeyoon Choi (Mon 26 Jan 2026 06:29:28 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:51 BST) cam/scsi: Restore scsi_start_stop() and add scsi_start_stop_pc() Revert the argument change that broke libcam in 8c35de49 and move power_condition support to scsi_start_stop_pc(). Reported by: imp Reviewed By: #cam, imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54822 (cherry picked from commit 8ef8c6abfadfc9eb0465ce57c6b09ca310415bdd) M sbin/camcontrol/camcontrol.c M sys/cam/cam_periph.c M sys/cam/scsi/scsi_all.c M sys/cam/scsi/scsi_all.h M sys/cam/scsi/scsi_cd.c M sys/dev/mpr/mpr_sas_lsi.c M sys/dev/mps/mps_sas_lsi.c M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: 873bafa44c0a0d599bdb4ae0623dbffa20c097a8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=873bafa44c0a0d599bdb4ae0623dbffa20c097a8 Author: Jaeyoon Choi (Mon 5 Jan 2026 02:36:10 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:50 BST) ufshci: Enable admin command retry Also, This patch fixes an issue where the admin command flag was not passed through. Sponsored by: Samsung Electronic Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54244 (cherry picked from commit ece6e062ae4b419736c8bb65874ece6be28c2100) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_ctrlr_cmd.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_req_queue.c M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: 5e5d927ea3735c0bc73ef36e7abdc1acb26d8c9f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5e5d927ea3735c0bc73ef36e7abdc1acb26d8c9f Author: Jaeyoon Choi (Mon 5 Jan 2026 02:35:52 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:50 BST) ufshci: Fix task management queue num_trackers on failure path Fix a kernel panic caused by the task management queue using the transfer request queue’s num_entries value. Sponsored by: Samsung Electronic Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D54243 (cherry picked from commit ef2d7cc11d04728f2b97d2b0188d77be77d5c252) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_req_queue.c _____________________________________________________________________________________________________________ Commit: 5480024f603dab61768dec76fe40dd9fa27f7d2e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5480024f603dab61768dec76fe40dd9fa27f7d2e Author: Jaeyoon Choi (Wed 3 Dec 2025 04:06:09 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:49 BST) ufshci: Add a Auto Hibernate quirk to Intel Alder Lake-N Alder Lake-N supports Auto Hibernate, but it does not work. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54006 (cherry picked from commit 0e60cb8c6a4e9cf943b7360cbd9e9a390f545a10) M sys/dev/ufshci/ufshci_pci.c _____________________________________________________________________________________________________________ Commit: 810264f0e849dd2ac2801eab2f50b2358f472721 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=810264f0e849dd2ac2801eab2f50b2358f472721 Author: Jaeyoon Choi (Wed 3 Dec 2025 04:06:01 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:49 BST) ufshci: Support UIC Auto Hibernation Automatically transition the UniPro link to Hibernate when it is idle for the duration configured by the Auto-Hibernate Idle Timer (AHIT). This reduces link power while the device is inactive. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54004 (cherry picked from commit db8b06468baefb9d9b5db5f91084d85071bfb5cb) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_pci.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_sysctl.c M sys/dev/ufshci/ufshci_uic_cmd.c _____________________________________________________________________________________________________________ Commit: ff341c1149f958f0038c76ddeaf3bd7abd43e40e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ff341c1149f958f0038c76ddeaf3bd7abd43e40e Author: Jaeyoon Choi (Wed 3 Dec 2025 04:05:51 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:48 BST) ufshci: Support UIC hibernation enter/exit Add helpers to issue DME_HIBERNATE_ENTER/DME_HIBERNATE_EXIT and call them during suspend/resume. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54003 (cherry picked from commit bec77e3a160dba10cbc30416f53a506ca2b9301f) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_uic_cmd.c _____________________________________________________________________________________________________________ Commit: 1b063270950c4b444f156d54619c6740271f96ef URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1b063270950c4b444f156d54619c6740271f96ef Author: Jaeyoon Choi (Wed 3 Dec 2025 04:05:36 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:48 BST) ufshci: Support suspend/resume Handle system power events and issue START STOP UNIT (SSU) to the UFS Device WLUN (0x50). Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D54002 (cherry picked from commit 3a99f31fdb6c66434f77d83ca5166aae4ad2d22c) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_pci.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_req_queue.c M sys/dev/ufshci/ufshci_sim.c M sys/dev/ufshci/ufshci_sysctl.c _____________________________________________________________________________________________________________ Commit: ae109f0cba290849a75f4be9eb0c52c853dc6cbe URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ae109f0cba290849a75f4be9eb0c52c853dc6cbe Author: Jaeyoon Choi (Tue 29 Sep 2026 00:51:39 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:47 BST) ufshci: define the sleep types locally for stable/15 The suspend/resume support merged next uses enum power_stype from . That enum comes from the generic sleep types work (c43473dc9b83), which is not in stable/15 and depends on ACPI changes that are not here either. Define the enum in ufshci_private.h with the names the driver uses, so the following merges from main apply without changes. This is a direct commit to stable/15. Sponsored by: Samsung Electronics M sys/dev/ufshci/ufshci_private.h _____________________________________________________________________________________________________________ Commit: 968c352536ff17f5536ebd408c975d1d59b231d0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=968c352536ff17f5536ebd408c975d1d59b231d0 Author: Jaeyoon Choi (Mon 1 Dec 2025 04:39:49 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:47 BST) ufshci: Add a check for WLUN during driver initialization This patch checks whether wlun is registered as a periph device. It also implements a function to issue an SSU. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D53923 (cherry picked from commit 31407551c3d4d29905f77abddac3fd9b649e166b) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_sim.c M sys/dev/ufshci/ufshci_sysctl.c _____________________________________________________________________________________________________________ Commit: c60b3057f7d10868d8ed0218ba2dd76deaa313ce URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c60b3057f7d10868d8ed0218ba2dd76deaa313ce Author: Jaeyoon Choi (Mon 1 Dec 2025 04:39:35 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:47 BST) cam/scsi: Add power condition support to START STOP UNIT This patch adds a power_condition parameter to the scsi_start_stop() function and sets the power condition via SSU. Reviewed by: imp (mentor) Sponsored by: Samsung Electronic Differential Revision: https://reviews.freebsd.org/D53922 (cherry picked from commit 8c35de4982d855950a900483513f341643f6158f) M sbin/camcontrol/camcontrol.c M sys/cam/cam_periph.c M sys/cam/scsi/scsi_all.c M sys/cam/scsi/scsi_all.h M sys/cam/scsi/scsi_cd.c M sys/dev/mpr/mpr_sas_lsi.c M sys/dev/mps/mps_sas_lsi.c _____________________________________________________________________________________________________________ Commit: ab96d69e5c77783c31cdc71c5ba72c19e3580802 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ab96d69e5c77783c31cdc71c5ba72c19e3580802 Author: Jaeyoon Choi (Mon 1 Dec 2025 04:39:14 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:46 BST) ufshci: Enable WLUN scan QEMU ufs device does not implement WLUN, so QUIRK is added. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D53921 (cherry picked from commit 5e0d065b5b90d4f4264d8248f39f199f1a2576dc) M sys/dev/ufshci/ufshci.h M sys/dev/ufshci/ufshci_pci.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: 17534ff9c2dd608b7fa6ba212dac810fad91ce02 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=17534ff9c2dd608b7fa6ba212dac810fad91ce02 Author: Jaeyoon Choi (Mon 1 Dec 2025 04:38:52 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:46 BST) cam/scsi: Support well known logical unit This patch adds an additional state to probe well-known logical units before probing normal logical units. Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D53920 (cherry picked from commit ba963776199f84775388a03d072121bf93707020) M sys/cam/cam_ccb.h M sys/cam/cam_xpt.c M sys/cam/cam_xpt_internal.h M sys/cam/scsi/scsi_all.h M sys/cam/scsi/scsi_xpt.c _____________________________________________________________________________________________________________ Commit: 6dfd9f0a81e083dd3fd219789668b3eb7e3e6aeb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6dfd9f0a81e083dd3fd219789668b3eb7e3e6aeb Author: Jaeyoon Choi (Mon 1 Dec 2025 04:38:24 GMT) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:45 BST) ufshci: add helper to convert SCSI LUN to UPIU LUN formats Reviewed by: imp (mentor) Sponsored by: Samsung Electronics Differential Revision: https://reviews.freebsd.org/D53919 (cherry picked from commit 3e3d7e590566c7e1a55bfb0f084c9f64c6c46898) M sys/dev/ufshci/ufshci.h M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: b75d670fe7559ad5fc23c51d805e1786bbddfd22 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b75d670fe7559ad5fc23c51d805e1786bbddfd22 Author: Jaeyoon Choi (Thu 18 Sep 2025 15:37:08 BST) Committer: Jaeyoon Choi (Tue 6 Oct 2026 07:27:45 BST) ufshci: revisit controller reset path and add I/O timeout handling This patch revisits the controller reset path and introduces timeout handling for I/O commands. To support controller reset during driver operation, the controller’s construct, destruct, enable, and disable functions are clearly separated in ufshci_ctrlr.c. ufshci_ctrlr_hw_reset() function is added to leverage enable/disable. After initialization, ufshci_ctrlr_reset_task() is also introduced to ensure controller resets are performed via the task queue. Timeout handling is designed in five steps. This patch implements Step 1 and Step 5, while the remaining steps will be added later. The timeout mechanism follows the same shared timeout model used in the NVMe driver. Test: Intentionally delayed UPIU I/O in QEMU to trigger a timeout and verify timeout handling. Sponsored by: Samsung Electronics Reviewed by: imp (mentor) Differential Revision: https://reviews.freebsd.org/D52440 (cherry picked from commit 6b841d70960a3a0ec4e43392683053878c403f9c) M sys/dev/ufshci/ufshci_ctrlr.c M sys/dev/ufshci/ufshci_ctrlr_cmd.c M sys/dev/ufshci/ufshci_dev.c M sys/dev/ufshci/ufshci_pci.c M sys/dev/ufshci/ufshci_private.h M sys/dev/ufshci/ufshci_req_queue.c M sys/dev/ufshci/ufshci_req_sdb.c M sys/dev/ufshci/ufshci_sim.c _____________________________________________________________________________________________________________ Commit: 41c078cae365b4ec6f61d9fe40dcb772bff796ba URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=41c078cae365b4ec6f61d9fe40dcb772bff796ba Author: Ed Maste (Tue 12 May 2026 23:49:29 BST) Committer: Ed Maste (Tue 6 Oct 2026 01:34:42 BST) pam_ssh: Fix build - chase OpenSSH function signature change Reported by: dch Fixes: 644b4646c7ac ("OpenSSH: Update to 10.1p1") Sponsored by: The FreeBSD Foundation (cherry picked from commit b76b05c04cc9ed2cd053c7b367c92628447ede6f) M lib/libpam/modules/pam_ssh/pam_ssh.c _____________________________________________________________________________________________________________ Commit: 98cd53be408d3118004a254449d943bfb8a7f25c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=98cd53be408d3118004a254449d943bfb8a7f25c Author: Ahmad Khalifa (Fri 2 Oct 2026 03:11:32 BST) Committer: Ahmad Khalifa (Mon 5 Oct 2026 20:25:26 BST) stand/images: remove translucent pixels around orb Remove semi-transparent pixels around the orb. These become more pronounced when the orb is used as the spash screen image. While here also strip metadata. MFC after: 3 days Reviewed by: tsoome Differential Revision: https://reviews.freebsd.org/D60163 (cherry picked from commit f7663278c2ba527dc681b1a806d4cc78ea49452b) M stand/images/freebsd-logo-rev.png _____________________________________________________________________________________________________________ Commit: 128e91e002d29ecfb62f0568dda316eac4125b68 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=128e91e002d29ecfb62f0568dda316eac4125b68 Author: Gleb Popov (Mon 27 Jul 2026 19:18:12 BST) Committer: Gleb Popov (Mon 5 Oct 2026 15:11:26 BST) nuageinit: Allow the userdata script to run before firstboot* rc services Allowing nuageinit user scripts to run before these makes it possible to customize official BASIC-CI and BASIC-CLOUDINIT FreeBSD images. This was requested by KDE for their CI. Approved by: cperciva Pull-Request: https://ron-dev.freebsd.org/FreeBSD/src/pulls/60 (cherry picked from commit 16e47f317c4ce2be5fed530bf8a9af9f9bf55364) M libexec/rc/rc.d/nuageinit_user_data_script _____________________________________________________________________________________________________________ Commit: f2b0910a9831d09404558611d20364456549a96f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f2b0910a9831d09404558611d20364456549a96f Author: Ed Maste (Thu 9 Jul 2026 18:17:11 BST) Committer: Ed Maste (Mon 5 Oct 2026 14:47:51 BST) OpenSSH: Update to 10.4p1 Full release notes are available at https://www.openssh.com/txt/release-10.4 Selected highlights from the release notes: Potentially-incompatible changes -------------------------------- * sshd(8): configuration dump mode ("sshd -G") now writes directives in mixed case (e.g. "PubkeyAuthentication") whereas previously it emitted only lower-case names. * ssh(1), sshd(8): make the transport protocol stricter by disconnecting if the peer sends non-KEX messages during a post- authentication key re-exchange. Previously a malicious peer could continue sending non-key exchange messages without penalty. These would be buffered, causing memory to be wasted up until the connection terminated or the server/client hit a memory limit. Implementations that do not restrict messages sent during key exchange as per RFC4253 section 7.1 may be disconnected. Reported by Marko Jevtic. Changes since OpenSSH 10.3 ========================== This release contains a number of security fixes as well as general bugfixes and a couple of new features. Security ======== * sftp(1): when downloading files on the command-line using "sftp host:/path .", a malicious server could cause the file to be downloaded to an unexpected location. This issue was identified by the Swival Security Scanner. * scp(1): when copying files between two remote destinations, do not allow a malicious server to write files to the parent directory of the intended target directory. This issue was identified by the Swival Security Scanner. * sshd(8): DisableForwarding=yes didn't override PermitTunnel=yes as it was documented to do. Note that PermitTunnel is not enabled by default. Reported independently by Huzaifa Sidhpurwala of Redhat and Marko Jevtic. * sshd(8): avoid a potential pre-authentication denial of service when GSSAPIAuthentication was enabled (this feature is off by default). This was not mitigated by MaxAuthTries, but would be penalised by PerSourcePenalties. This was reported by Manfred Kaiser of the milCERT AT (Austrian Ministry of Defence). * sshd(8): fix a number of cases where the minimum authentication delay was not being enforced. Reported by the Orange Cyberdefense Vulnerability Team. * ssh(1): fix a possible client-side use-after-free if the server changes its host key during a key reexchange. This was reported by Zhenpeng (Leo) Lin of Depthfirst. New features ------------ * All: add experimental support for a composite post-quantum signature scheme that combines ML-DSA 44 and Ed25519 as specified in draft-miller-sshm-mldsa44-ed25519-composite-sigs. This scheme is not enabled by default. To use it, you'll need to add it to HostKeyAlgorithms, PubkeyAcceptedAlgorithms, etc. Keys may be generated using "ssh-keygen -t mldsa44-ed25519". Bugfixes -------- * sshd(8): avoid sending observably different messages for valid vs invalid users in GSSAPIAuthentication (disabled by default). * ssh(1), sshd(8): fix several bugs that incorrectly classified bulk traffic as interactive. bz3972, bz3958 * ssh-keygen(1), ssh-add(1): skip unsupported key types when downloading resident keys from a FIDO token. Previously, downloads would abort when one was encountered. GHPR657 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58083 (cherry picked from commit bb5c77e9d281d6def6835d48249898764bc6a5fe) (cherry picked from commit f7c08d8dd810d031e5b2e53cbaa102a9105ada3f) (cherry picked from commit 5792a639ab950fb7e6add09352e1cd41f1809bc2) M crypto/openssh/.depend M crypto/openssh/.git_allowed_signers.asc M crypto/openssh/.github/ci-status.md M crypto/openssh/.github/configs A crypto/openssh/.github/install_dropbear.sh M crypto/openssh/.github/install_libcrypto.sh A crypto/openssh/.github/pin_actions.sh M crypto/openssh/.github/run_test.sh M crypto/openssh/.github/setup_ci.sh M crypto/openssh/.github/workflows/c-cpp.yml M crypto/openssh/.github/workflows/cifuzz.yml M crypto/openssh/.github/workflows/selfhosted.yml M crypto/openssh/.github/workflows/upstream.yml M crypto/openssh/.github/workflows/vm.yml M crypto/openssh/.skipped-commit-ids M crypto/openssh/ChangeLog M crypto/openssh/Makefile.in M crypto/openssh/PROTOCOL.agent M crypto/openssh/README M crypto/openssh/README.privsep M crypto/openssh/auth.h M crypto/openssh/auth2-chall.c M crypto/openssh/auth2-gss.c M crypto/openssh/auth2.c M crypto/openssh/authfd.c M crypto/openssh/authfile.c M crypto/openssh/chacha.c M crypto/openssh/channels.c M crypto/openssh/channels.h M crypto/openssh/cipher.c M crypto/openssh/cipher.h M crypto/openssh/clientloop.c M crypto/openssh/config.h M crypto/openssh/configure.ac M crypto/openssh/contrib/redhat/openssh.spec M crypto/openssh/contrib/suse/openssh.spec M crypto/openssh/crypto_api.h M crypto/openssh/defines.h M crypto/openssh/ed25519-openssl.c M crypto/openssh/ed25519.c M crypto/openssh/ed25519.sh M crypto/openssh/kex.c M crypto/openssh/kex.h M crypto/openssh/kexmlkem768x25519.c A crypto/openssh/libcrux-mlkem-mldsa.c A crypto/openssh/libcrux_internal.h D crypto/openssh/libcrux_mlkem768_sha3.h M crypto/openssh/mac.c M crypto/openssh/match.c M crypto/openssh/misc.c D crypto/openssh/mlkem768.sh A crypto/openssh/mlkem_mldsa.sh M crypto/openssh/moduli M crypto/openssh/monitor.c M crypto/openssh/monitor_wrap.c M crypto/openssh/monitor_wrap.h M crypto/openssh/openbsd-compat/bsd-cygwin_util.c M crypto/openssh/openbsd-compat/bsd-misc.c M crypto/openssh/openbsd-compat/fake-rfc2553.c M crypto/openssh/openbsd-compat/fmt_scaled.c M crypto/openssh/openbsd-compat/getrrsetbyname-ldns.c M crypto/openssh/openbsd-compat/getrrsetbyname.c M crypto/openssh/openbsd-compat/vis.c M crypto/openssh/packet.c M crypto/openssh/pathnames.h M crypto/openssh/readconf.c M crypto/openssh/regress/Makefile M crypto/openssh/regress/addrmatch.sh M crypto/openssh/regress/agent.sh M crypto/openssh/regress/cert-hostkey.sh M crypto/openssh/regress/cert-userkey.sh M crypto/openssh/regress/cfgmatch.sh M crypto/openssh/regress/dropbear-kex.sh M crypto/openssh/regress/dropbear-server.sh M crypto/openssh/regress/hostkey-agent.sh M crypto/openssh/regress/kbdint.sh M crypto/openssh/regress/keyscan.sh M crypto/openssh/regress/keytype.sh M crypto/openssh/regress/knownhosts-command.sh M crypto/openssh/regress/misc/ssh-verify-attestation/ssh-verify-attestation.c M crypto/openssh/regress/sshsig.sh M crypto/openssh/regress/test-exec.sh M crypto/openssh/regress/unittests/Makefile M crypto/openssh/regress/unittests/Makefile.inc M crypto/openssh/regress/unittests/authopt/Makefile A crypto/openssh/regress/unittests/crypto/Makefile A crypto/openssh/regress/unittests/crypto/test_ed25519.c A crypto/openssh/regress/unittests/crypto/test_mldsa.c A crypto/openssh/regress/unittests/crypto/test_mldsa_eddsa.c A crypto/openssh/regress/unittests/crypto/test_mlkem.c A crypto/openssh/regress/unittests/crypto/testdata/draft-ietf-lamps-pq-composite-sigs.json A crypto/openssh/regress/unittests/crypto/testdata/nistkats-44.json A crypto/openssh/regress/unittests/crypto/tests.c M crypto/openssh/regress/unittests/hostkeys/Makefile M crypto/openssh/regress/unittests/kex/Makefile M crypto/openssh/regress/unittests/match/tests.c A crypto/openssh/regress/unittests/servconf/Makefile A crypto/openssh/regress/unittests/servconf/tests.c M crypto/openssh/regress/unittests/sshkey/Makefile M crypto/openssh/regress/unittests/sshkey/mktestdata.sh M crypto/openssh/regress/unittests/sshkey/test_file.c M crypto/openssh/regress/unittests/sshkey/test_fuzz.c M crypto/openssh/regress/unittests/sshkey/test_sshkey.c A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_1 A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_1-cert.fp A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_1-cert.pub A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_1.fp A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_1.fp.bb A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_1.pub A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_1_pw A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_2 A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_2.fp A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_2.fp.bb A crypto/openssh/regress/unittests/sshkey/testdata/mldsa44_ed25519_2.pub M crypto/openssh/regress/unittests/sshkey/tests.c M crypto/openssh/regress/unittests/sshsig/Makefile M crypto/openssh/regress/unittests/sshsig/mktestdata.sh A crypto/openssh/regress/unittests/sshsig/testdata/mldsa44-ed25519 A crypto/openssh/regress/unittests/sshsig/testdata/mldsa44-ed25519.pub A crypto/openssh/regress/unittests/sshsig/testdata/mldsa44-ed25519.sig M crypto/openssh/regress/unittests/sshsig/tests.c M crypto/openssh/regress/unittests/test_helper/test_helper.c M crypto/openssh/regress/unittests/test_helper/test_helper.h M crypto/openssh/sandbox-seccomp-filter.c M crypto/openssh/scp.c M crypto/openssh/servconf.c M crypto/openssh/servconf.h M crypto/openssh/serverloop.c M crypto/openssh/session.c M crypto/openssh/sftp-client.c M crypto/openssh/sftp-server.8 M crypto/openssh/sftp-server.c M crypto/openssh/sftp.c M crypto/openssh/sk-usbhid.c M crypto/openssh/ssh-add.c M crypto/openssh/ssh-agent.1 M crypto/openssh/ssh-agent.c M crypto/openssh/ssh-keygen.1 M crypto/openssh/ssh-keygen.c M crypto/openssh/ssh-keyscan.1 M crypto/openssh/ssh-keyscan.c M crypto/openssh/ssh-keysign.c A crypto/openssh/ssh-mldsa-eddsa.c M crypto/openssh/ssh.1 M crypto/openssh/ssh.c M crypto/openssh/ssh_config.5 M crypto/openssh/ssh_namespace.h M crypto/openssh/sshbuf-io.c M crypto/openssh/sshbuf.h M crypto/openssh/sshconnect.c M crypto/openssh/sshconnect.h M crypto/openssh/sshconnect2.c M crypto/openssh/sshd-auth.c M crypto/openssh/sshd-session.c M crypto/openssh/sshd.c M crypto/openssh/sshd_config M crypto/openssh/sshd_config.5 M crypto/openssh/ssherr-libcrypto.c M crypto/openssh/ssherr.c M crypto/openssh/ssherr.h M crypto/openssh/sshkey.c M crypto/openssh/sshkey.h M crypto/openssh/version.h M secure/lib/libssh/Makefile _____________________________________________________________________________________________________________ Commit: e1e83fddfb4e046626250229c31dea547f5583ee URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e1e83fddfb4e046626250229c31dea547f5583ee Author: Ed Maste (Thu 14 May 2026 19:59:30 BST) Committer: Ed Maste (Mon 5 Oct 2026 14:47:51 BST) OpenSSH: Update to 10.3p1 Full release notes are available at https://www.openssh.com/txt/release-10.3 Selected highlights from the release notes: * ssh(1), sshd(8): remove bug compatibility for implementations that don't support rekeying. If such an implementation tries to interoperate with OpenSSH, it will now eventually fail when the transport needs rekeying. * ssh(1), sshd(8): support IANA-assigned codepoints for SSH agent forwarding, as per draft-ietf-sshm-ssh-agent. Support for the new names is advertised via the EXT_INFO message. If a server offers support for the new names, then they are used preferentially. * ssh(1): add a ~I escape option that shows information about the current SSH connection. * sshd(8): add 'invaliduser' penalty to PerSourcePenalties, which is applied to login attempts for usernames that do not match real accounts. Defaults to 5s to match 'authfail' but allows administrators to block such attempts for longer if desired. * Support the ed25519 signature scheme via libcrypto. Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D56999 (cherry picked from commit 2574974648c68c738aec3ff96644d888d7913a37) (cherry picked from commit f5993872faf5dbd5c142857e9633b11e330f8c38) (cherry picked from commit 3d246db08333c06df343281d5aaebfd07ea08252) (cherry picked from commit 77fd9e0ceabcfa99894b3e70f60013c157115ca0) M crypto/openssh/.depend M crypto/openssh/.github/ci-status.md M crypto/openssh/.github/configs M crypto/openssh/.github/run_test.sh M crypto/openssh/.github/setup_ci.sh M crypto/openssh/.github/workflows/c-cpp.yml M crypto/openssh/.github/workflows/selfhosted.yml M crypto/openssh/.github/workflows/upstream.yml M crypto/openssh/.github/workflows/vm.yml M crypto/openssh/.gitignore M crypto/openssh/.skipped-commit-ids M crypto/openssh/ChangeLog M crypto/openssh/INSTALL M crypto/openssh/Makefile.in M crypto/openssh/PROTOCOL M crypto/openssh/README M crypto/openssh/README.md M crypto/openssh/addr.c M crypto/openssh/addr.h M crypto/openssh/addrmatch.c M crypto/openssh/audit-bsm.c M crypto/openssh/auth-bsdauth.c M crypto/openssh/auth-krb5.c M crypto/openssh/auth-options.c M crypto/openssh/auth-pam.c M crypto/openssh/auth-pam.h M crypto/openssh/auth.c M crypto/openssh/auth.h M crypto/openssh/auth2-chall.c M crypto/openssh/auth2-gss.c M crypto/openssh/auth2-hostbased.c M crypto/openssh/auth2-none.c M crypto/openssh/auth2-pubkey.c M crypto/openssh/auth2-pubkeyfile.c M crypto/openssh/auth2.c M crypto/openssh/authfd.c M crypto/openssh/authfd.h M crypto/openssh/authfile.c M crypto/openssh/canohost.c M crypto/openssh/chacha.c M crypto/openssh/channels.c M crypto/openssh/channels.h M crypto/openssh/cipher-aesctr.c M crypto/openssh/cipher-chachapoly-libcrypto.c M crypto/openssh/cipher.c M crypto/openssh/clientloop.c M crypto/openssh/clientloop.h M crypto/openssh/compat.c M crypto/openssh/config.h M crypto/openssh/configure.ac M crypto/openssh/contrib/redhat/openssh.spec M crypto/openssh/contrib/suse/openssh.spec M crypto/openssh/crypto_api.h M crypto/openssh/defines.h M crypto/openssh/dh.c M crypto/openssh/digest-libc.c M crypto/openssh/dispatch.c M crypto/openssh/dispatch.h M crypto/openssh/dns.c A crypto/openssh/ed25519-openssl.c M crypto/openssh/ed25519.c M crypto/openssh/entropy.c M crypto/openssh/entropy.h M crypto/openssh/gss-genr.c M crypto/openssh/gss-serv-krb5.c M crypto/openssh/gss-serv.c D crypto/openssh/hash.c M crypto/openssh/hmac.c M crypto/openssh/hostfile.c M crypto/openssh/kex-names.c M crypto/openssh/kex.c M crypto/openssh/kex.h M crypto/openssh/kexdh.c M crypto/openssh/kexecdh.c M crypto/openssh/kexgen.c M crypto/openssh/kexgex.c M crypto/openssh/kexgexc.c M crypto/openssh/kexgexs.c M crypto/openssh/krb5_config.h M crypto/openssh/krl.c M crypto/openssh/krl.h M crypto/openssh/libcrux_mlkem768_sha3.h M crypto/openssh/log.c M crypto/openssh/loginrec.c M crypto/openssh/loginrec.h M crypto/openssh/mac.c M crypto/openssh/mac.h M crypto/openssh/mdoc2man.awk M crypto/openssh/misc-agent.c M crypto/openssh/misc.c M crypto/openssh/misc.h M crypto/openssh/mlkem768.sh M crypto/openssh/moduli M crypto/openssh/moduli.c M crypto/openssh/monitor.c M crypto/openssh/monitor.h M crypto/openssh/monitor_fdpass.c M crypto/openssh/monitor_wrap.c M crypto/openssh/monitor_wrap.h M crypto/openssh/msg.c M crypto/openssh/mux.c M crypto/openssh/myproposal.h M crypto/openssh/nchan.c M crypto/openssh/openbsd-compat/bcrypt_pbkdf.c M crypto/openssh/openbsd-compat/bsd-misc.c M crypto/openssh/openbsd-compat/bsd-misc.h M crypto/openssh/openbsd-compat/bsd-openpty.c M crypto/openssh/openbsd-compat/bsd-poll.h R100 crypto/openssh/openbsd-compat/sha2.h crypto/openssh/openbsd-compat/bsd-sha2.h M crypto/openssh/openbsd-compat/fake-rfc2553.c A crypto/openssh/openbsd-compat/include/glob.h A crypto/openssh/openbsd-compat/include/sys/queue.h A crypto/openssh/openbsd-compat/include/sys/tree.h M crypto/openssh/openbsd-compat/openbsd-compat.h M crypto/openssh/openbsd-compat/openssl-compat.c M crypto/openssh/openbsd-compat/openssl-compat.h M crypto/openssh/openbsd-compat/sha2.c M crypto/openssh/packet.c M crypto/openssh/packet.h M crypto/openssh/pathnames.h M crypto/openssh/progressmeter.c M crypto/openssh/readconf.c M crypto/openssh/readconf.h M crypto/openssh/readpass.c M crypto/openssh/regress/Makefile M crypto/openssh/regress/cert-hostkey.sh M crypto/openssh/regress/cert-userkey.sh M crypto/openssh/regress/cfgmatch.sh M crypto/openssh/regress/check-perm.c A crypto/openssh/regress/gss-auth.sh M crypto/openssh/regress/hostbased.sh A crypto/openssh/regress/kbdint.sh M crypto/openssh/regress/misc/sk-dummy/Makefile M crypto/openssh/regress/misc/sk-dummy/fatal.c M crypto/openssh/regress/misc/ssh-verify-attestation/Makefile M crypto/openssh/regress/modpipe.c M crypto/openssh/regress/multiplex.sh M crypto/openssh/regress/percent.sh A crypto/openssh/regress/proxyjump.sh M crypto/openssh/regress/scp.sh M crypto/openssh/regress/scp3.sh M crypto/openssh/regress/sftp-cmds.sh M crypto/openssh/regress/sftp-resume.sh A crypto/openssh/regress/ssh-pkcs11.sh A crypto/openssh/regress/ssh-tty.sh M crypto/openssh/regress/test-exec.sh M crypto/openssh/regress/unittests/Makefile.inc M crypto/openssh/regress/unittests/authopt/Makefile M crypto/openssh/regress/unittests/authopt/tests.c M crypto/openssh/regress/unittests/bitmap/Makefile M crypto/openssh/regress/unittests/conversion/Makefile M crypto/openssh/regress/unittests/hostkeys/Makefile M crypto/openssh/regress/unittests/hostkeys/test_iterate.c M crypto/openssh/regress/unittests/kex/Makefile M crypto/openssh/regress/unittests/kex/tests.c M crypto/openssh/regress/unittests/match/Makefile M crypto/openssh/regress/unittests/misc/Makefile M crypto/openssh/regress/unittests/misc/test_convtime.c M crypto/openssh/regress/unittests/misc/test_misc.c M crypto/openssh/regress/unittests/sshbuf/Makefile M crypto/openssh/regress/unittests/sshbuf/test_sshbuf.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_fuzz.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_getput_basic.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_getput_crypto.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_getput_fuzz.c M crypto/openssh/regress/unittests/sshkey/Makefile M crypto/openssh/regress/unittests/sshkey/test_sshkey.c M crypto/openssh/regress/unittests/sshkey/tests.c M crypto/openssh/regress/unittests/sshsig/Makefile M crypto/openssh/regress/unittests/test_helper/test_helper.c M crypto/openssh/regress/unittests/test_helper/test_helper.h M crypto/openssh/regress/unittests/utf8/Makefile M crypto/openssh/rijndael.c M crypto/openssh/sandbox-seccomp-filter.c M crypto/openssh/scp.c M crypto/openssh/servconf.c M crypto/openssh/servconf.h M crypto/openssh/serverloop.c M crypto/openssh/session.c M crypto/openssh/sftp-client.c M crypto/openssh/sftp-client.h M crypto/openssh/sftp-common.c M crypto/openssh/sftp-common.h M crypto/openssh/sftp-glob.c M crypto/openssh/sftp-server.c M crypto/openssh/sftp-usergroup.c M crypto/openssh/sftp.c M crypto/openssh/sntrup761.c M crypto/openssh/sntrup761.sh M crypto/openssh/srclimit.c M crypto/openssh/srclimit.h M crypto/openssh/ssh-add.1 M crypto/openssh/ssh-add.c M crypto/openssh/ssh-agent.1 M crypto/openssh/ssh-agent.c M crypto/openssh/ssh-ecdsa-sk.c M crypto/openssh/ssh-ecdsa.c M crypto/openssh/ssh-ed25519-sk.c M crypto/openssh/ssh-ed25519.c M crypto/openssh/ssh-keygen.1 M crypto/openssh/ssh-keygen.c M crypto/openssh/ssh-keyscan.c M crypto/openssh/ssh-keysign.c M crypto/openssh/ssh-pkcs11-client.c M crypto/openssh/ssh-pkcs11-helper.c M crypto/openssh/ssh-pkcs11.c M crypto/openssh/ssh-pkcs11.h M crypto/openssh/ssh-rsa.c M crypto/openssh/ssh-sk-client.c M crypto/openssh/ssh-sk-helper.c M crypto/openssh/ssh.1 M crypto/openssh/ssh.c M crypto/openssh/ssh_api.c M crypto/openssh/ssh_api.h M crypto/openssh/ssh_config.5 M crypto/openssh/ssh_namespace.h M crypto/openssh/sshbuf-getput-basic.c M crypto/openssh/sshbuf-getput-crypto.c M crypto/openssh/sshbuf-misc.c M crypto/openssh/sshbuf.c M crypto/openssh/sshbuf.h M crypto/openssh/sshconnect.c M crypto/openssh/sshconnect.h M crypto/openssh/sshconnect2.c M crypto/openssh/sshd-auth.c M crypto/openssh/sshd-session.c M crypto/openssh/sshd.c M crypto/openssh/sshd_config M crypto/openssh/sshd_config.5 A crypto/openssh/ssherr-libcrypto.c A crypto/openssh/ssherr-nolibcrypto.c M crypto/openssh/ssherr.c M crypto/openssh/ssherr.h M crypto/openssh/sshkey.c M crypto/openssh/sshkey.h M crypto/openssh/sshlogin.c M crypto/openssh/sshpty.c M crypto/openssh/sshsig.c M crypto/openssh/ttymodes.c M crypto/openssh/uidswap.c M crypto/openssh/umac.c M crypto/openssh/version.h M secure/lib/libssh/Makefile M secure/libexec/sftp-server/Makefile M secure/libexec/ssh-sk-helper/Makefile M secure/ssh.mk _____________________________________________________________________________________________________________ Commit: 2bdbd0a3702fb9595767379a68861dd401c28621 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2bdbd0a3702fb9595767379a68861dd401c28621 Author: Ed Maste (Tue 12 May 2026 22:12:09 BST) Committer: Ed Maste (Mon 5 Oct 2026 14:47:51 BST) OpenSSH: Update to 10.2p1 Full release notes are available at https://www.openssh.com/txt/release-10.2 Selected highlights from the release notes: Bugfixes -------- * ssh(1): fix mishandling of terminal connections when ControlPersist was active that rendered the session unusable. bz3872 Sponsored by: The FreeBSD Foundation (cherry picked from commit e68aa5ab80ab57bdbcbe94dd2922a018d675e7f0) M crypto/openssh/.depend M crypto/openssh/.github/ci-status.md M crypto/openssh/.github/run_test.sh M crypto/openssh/ChangeLog M crypto/openssh/Makefile.in M crypto/openssh/README M crypto/openssh/auth-pam.c M crypto/openssh/channels.c M crypto/openssh/channels.h M crypto/openssh/config.h M crypto/openssh/configure.ac M crypto/openssh/contrib/redhat/openssh.spec M crypto/openssh/contrib/suse/openssh.spec M crypto/openssh/openbsd-compat/arc4random.h M crypto/openssh/openbsd-compat/bsd-misc.c M crypto/openssh/openbsd-compat/bsd-misc.h M crypto/openssh/regress/test-exec.sh M crypto/openssh/ssh-pkcs11-helper.c M crypto/openssh/ssh-pkcs11.c M crypto/openssh/ssh_namespace.h M crypto/openssh/sshkey.c M crypto/openssh/version.h _____________________________________________________________________________________________________________ Commit: 687a0d4a6b2391cd045951e4e431dd585d131575 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=687a0d4a6b2391cd045951e4e431dd585d131575 Author: Ed Maste (Tue 12 May 2026 21:24:10 BST) Committer: Ed Maste (Mon 5 Oct 2026 14:47:51 BST) OpenSSH: Update to 10.1p1 Full release notes are available at https://www.openssh.com/txt/release-10.1 Selected highlights from the release notes: Potentially-incompatible changes * ssh(1): add a warning when the connection negotiates a non-post quantum key agreement algorithm. * ssh(1), sshd(8): major changes to handling of DSCP marking/IPQoS * ssh(1), sshd(8): deprecate support for IPv4 type-of-service (ToS) keywords in the IPQoS configuration directive. * ssh-add(1): when adding certificates to an agent, set the expiry to the certificate expiry time plus a short (5 min) grace period. * ssh-agent(1), sshd(8): move agent listener sockets from /tmp to under ~/.ssh/agent for both ssh-agent(1) and forwarded sockets in sshd(8). Security * ssh(1): disallow control characters in usernames passed via the commandline or expanded using %-sequences from the configuration file, and disallow \0 characters in ssh:// URIs. New features * ssh(1), sshd(8): add SIGINFO handlers to log active channel and session information. Sponsored by: The FreeBSD Foundation (cherry picked from commit 644b4646c7acab87dc20d4e5dd53d2d9da152989) M crypto/openssh/.depend M crypto/openssh/.github/ci-status.md M crypto/openssh/.github/configs A crypto/openssh/.github/install_libcrypto.sh A crypto/openssh/.github/install_putty.sh M crypto/openssh/.github/run_test.sh M crypto/openssh/.github/setup_ci.sh M crypto/openssh/.github/workflows/c-cpp.yml M crypto/openssh/.github/workflows/selfhosted.yml M crypto/openssh/.github/workflows/upstream.yml A crypto/openssh/.github/workflows/vm.yml M crypto/openssh/.gitignore M crypto/openssh/.skipped-commit-ids M crypto/openssh/ChangeLog M crypto/openssh/INSTALL M crypto/openssh/Makefile.in M crypto/openssh/PROTOCOL M crypto/openssh/PROTOCOL.agent D crypto/openssh/PROTOCOL.certkeys D crypto/openssh/PROTOCOL.chacha20poly1305 M crypto/openssh/README M crypto/openssh/TODO M crypto/openssh/atomicio.c M crypto/openssh/audit-bsm.c M crypto/openssh/audit-linux.c M crypto/openssh/auth-krb5.c M crypto/openssh/auth-options.c M crypto/openssh/auth-pam.c M crypto/openssh/auth-passwd.c M crypto/openssh/auth-rhosts.c M crypto/openssh/auth-shadow.c M crypto/openssh/auth.c M crypto/openssh/auth2-chall.c M crypto/openssh/auth2-hostbased.c M crypto/openssh/auth2-pubkey.c M crypto/openssh/auth2-pubkeyfile.c M crypto/openssh/auth2.c M crypto/openssh/authfd.c M crypto/openssh/authfd.h M crypto/openssh/authfile.c M crypto/openssh/channels.c M crypto/openssh/channels.h M crypto/openssh/cipher.c M crypto/openssh/clientloop.c M crypto/openssh/config.h M crypto/openssh/configure.ac M crypto/openssh/contrib/Makefile M crypto/openssh/contrib/README M crypto/openssh/contrib/cygwin/ssh-user-config A crypto/openssh/contrib/gnome-ssh-askpass4.c M crypto/openssh/contrib/redhat/openssh.spec M crypto/openssh/contrib/redhat/sshd.init M crypto/openssh/contrib/ssh-copy-id M crypto/openssh/contrib/suse/openssh.spec M crypto/openssh/crypto_api.h M crypto/openssh/defines.h M crypto/openssh/digest-libc.c M crypto/openssh/dispatch.c M crypto/openssh/dns.c M crypto/openssh/dns.h M crypto/openssh/groupaccess.c M crypto/openssh/gss-genr.c M crypto/openssh/gss-serv.c M crypto/openssh/hmac.c M crypto/openssh/hostfile.c M crypto/openssh/kex-names.c M crypto/openssh/kex.c M crypto/openssh/kex.h M crypto/openssh/kexdh.c M crypto/openssh/kexecdh.c M crypto/openssh/kexgen.c M crypto/openssh/kexgexc.c M crypto/openssh/kexgexs.c M crypto/openssh/kexmlkem768x25519.c M crypto/openssh/krb5_config.h M crypto/openssh/krl.c M crypto/openssh/log.c M crypto/openssh/loginrec.c M crypto/openssh/logintest.c M crypto/openssh/m4/openssh.m4 M crypto/openssh/mac.c A crypto/openssh/misc-agent.c M crypto/openssh/misc.c M crypto/openssh/misc.h M crypto/openssh/moduli M crypto/openssh/moduli.c M crypto/openssh/monitor.c M crypto/openssh/monitor_fdpass.c M crypto/openssh/monitor_wrap.c M crypto/openssh/monitor_wrap.h M crypto/openssh/mux.c M crypto/openssh/openbsd-compat/Makefile.in M crypto/openssh/openbsd-compat/arc4random.c M crypto/openssh/openbsd-compat/arc4random_uniform.c M crypto/openssh/openbsd-compat/bsd-misc.c M crypto/openssh/openbsd-compat/bsd-misc.h M crypto/openssh/openbsd-compat/bsd-openpty.c M crypto/openssh/openbsd-compat/bsd-poll.h M crypto/openssh/openbsd-compat/daemon.c M crypto/openssh/openbsd-compat/glob.c A crypto/openssh/openbsd-compat/include/netgroup.h A crypto/openssh/openbsd-compat/include/util.h M crypto/openssh/openbsd-compat/memmem.c M crypto/openssh/openbsd-compat/openssl-compat.c M crypto/openssh/openbsd-compat/openssl-compat.h M crypto/openssh/openbsd-compat/port-prngd.c M crypto/openssh/openbsd-compat/reallocarray.c M crypto/openssh/openbsd-compat/recallocarray.c M crypto/openssh/openbsd-compat/regress/utimensattest.c M crypto/openssh/packet.c M crypto/openssh/packet.h M crypto/openssh/pathnames.h M crypto/openssh/pkcs11.h M crypto/openssh/platform.c M crypto/openssh/poly1305.c M crypto/openssh/progressmeter.c M crypto/openssh/readconf.c M crypto/openssh/readconf.h M crypto/openssh/readpass.c M crypto/openssh/regress/Makefile M crypto/openssh/regress/agent-pkcs11-cert.sh M crypto/openssh/regress/agent-pkcs11-restrict.sh M crypto/openssh/regress/agent-pkcs11.sh M crypto/openssh/regress/agent-restrict.sh M crypto/openssh/regress/agent.sh M crypto/openssh/regress/cert-hostkey.sh M crypto/openssh/regress/cert-userkey.sh M crypto/openssh/regress/cfgmatch.sh M crypto/openssh/regress/cfgparse.sh A crypto/openssh/regress/connect-bigconf.sh A crypto/openssh/regress/dropbear-server.sh D crypto/openssh/regress/dsa_ssh2.prv D crypto/openssh/regress/dsa_ssh2.pub M crypto/openssh/regress/dynamic-forward.sh M crypto/openssh/regress/hostbased.sh M crypto/openssh/regress/keygen-comment.sh M crypto/openssh/regress/keytype.sh M crypto/openssh/regress/knownhosts-command.sh M crypto/openssh/regress/krl.sh M crypto/openssh/regress/limit-keytype.sh M crypto/openssh/regress/misc/fuzz-harness/Makefile M crypto/openssh/regress/misc/fuzz-harness/agent_fuzz_helper.c M crypto/openssh/regress/misc/fuzz-harness/fixed-keys.h M crypto/openssh/regress/misc/fuzz-harness/testdata/create-agent-corpus.sh D crypto/openssh/regress/misc/fuzz-harness/testdata/id_dsa-cert.pub M crypto/openssh/regress/misc/sk-dummy/sk-dummy.c M crypto/openssh/regress/misc/ssh-verify-attestation/Makefile M crypto/openssh/regress/misc/ssh-verify-attestation/ssh-verify-attestation.c M crypto/openssh/regress/modpipe.c M crypto/openssh/regress/netcat.c A crypto/openssh/regress/password.sh M crypto/openssh/regress/penalty-expire.sh M crypto/openssh/regress/penalty.sh M crypto/openssh/regress/percent.sh M crypto/openssh/regress/rekey.sh M crypto/openssh/regress/ssh-com-client.sh M crypto/openssh/regress/ssh-com.sh M crypto/openssh/regress/ssh2putty.sh M crypto/openssh/regress/sshcfgparse.sh M crypto/openssh/regress/sshsig.sh M crypto/openssh/regress/test-exec.sh M crypto/openssh/regress/unittests/Makefile.inc M crypto/openssh/regress/unittests/authopt/Makefile M crypto/openssh/regress/unittests/authopt/tests.c M crypto/openssh/regress/unittests/bitmap/Makefile M crypto/openssh/regress/unittests/bitmap/tests.c M crypto/openssh/regress/unittests/conversion/Makefile M crypto/openssh/regress/unittests/conversion/tests.c M crypto/openssh/regress/unittests/hostkeys/Makefile M crypto/openssh/regress/unittests/hostkeys/mktestdata.sh M crypto/openssh/regress/unittests/hostkeys/test_iterate.c D crypto/openssh/regress/unittests/hostkeys/testdata/dsa_1.pub D crypto/openssh/regress/unittests/hostkeys/testdata/dsa_2.pub D crypto/openssh/regress/unittests/hostkeys/testdata/dsa_3.pub D crypto/openssh/regress/unittests/hostkeys/testdata/dsa_4.pub D crypto/openssh/regress/unittests/hostkeys/testdata/dsa_5.pub D crypto/openssh/regress/unittests/hostkeys/testdata/dsa_6.pub M crypto/openssh/regress/unittests/hostkeys/testdata/known_hosts M crypto/openssh/regress/unittests/hostkeys/tests.c M crypto/openssh/regress/unittests/kex/Makefile M crypto/openssh/regress/unittests/kex/test_kex.c M crypto/openssh/regress/unittests/kex/test_proposal.c M crypto/openssh/regress/unittests/kex/tests.c M crypto/openssh/regress/unittests/match/Makefile M crypto/openssh/regress/unittests/match/tests.c M crypto/openssh/regress/unittests/misc/Makefile M crypto/openssh/regress/unittests/misc/test_argv.c M crypto/openssh/regress/unittests/misc/test_convtime.c M crypto/openssh/regress/unittests/misc/test_expand.c M crypto/openssh/regress/unittests/misc/test_hpdelim.c A crypto/openssh/regress/unittests/misc/test_misc.c M crypto/openssh/regress/unittests/misc/test_parse.c M crypto/openssh/regress/unittests/misc/test_ptimeout.c M crypto/openssh/regress/unittests/misc/test_strdelim.c A crypto/openssh/regress/unittests/misc/test_xextendf.c M crypto/openssh/regress/unittests/misc/tests.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_fixed.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_fuzz.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_getput_basic.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_getput_crypto.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_getput_fuzz.c M crypto/openssh/regress/unittests/sshbuf/test_sshbuf_misc.c M crypto/openssh/regress/unittests/sshbuf/tests.c M crypto/openssh/regress/unittests/sshkey/Makefile M crypto/openssh/regress/unittests/sshkey/common.c M crypto/openssh/regress/unittests/sshkey/common.h M crypto/openssh/regress/unittests/sshkey/mktestdata.sh M crypto/openssh/regress/unittests/sshkey/test_file.c M crypto/openssh/regress/unittests/sshkey/test_fuzz.c M crypto/openssh/regress/unittests/sshkey/test_sshkey.c D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1 D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1-cert.fp D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1-cert.pub D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1.fp D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1.fp.bb D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1.param.g D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1.param.priv D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1.param.pub D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1.pub D crypto/openssh/regress/unittests/sshkey/testdata/dsa_1_pw D crypto/openssh/regress/unittests/sshkey/testdata/dsa_2 D crypto/openssh/regress/unittests/sshkey/testdata/dsa_2.fp D crypto/openssh/regress/unittests/sshkey/testdata/dsa_2.fp.bb D crypto/openssh/regress/unittests/sshkey/testdata/dsa_2.pub D crypto/openssh/regress/unittests/sshkey/testdata/dsa_n D crypto/openssh/regress/unittests/sshkey/testdata/dsa_n_pw M crypto/openssh/regress/unittests/sshkey/tests.c M crypto/openssh/regress/unittests/sshsig/Makefile M crypto/openssh/regress/unittests/sshsig/mktestdata.sh D crypto/openssh/regress/unittests/sshsig/testdata/dsa D crypto/openssh/regress/unittests/sshsig/testdata/dsa.pub D crypto/openssh/regress/unittests/sshsig/testdata/dsa.sig M crypto/openssh/regress/unittests/sshsig/tests.c M crypto/openssh/regress/unittests/test_helper/fuzz.c M crypto/openssh/regress/unittests/test_helper/test_helper.c M crypto/openssh/regress/unittests/test_helper/test_helper.h M crypto/openssh/regress/unittests/utf8/Makefile M crypto/openssh/regress/unittests/utf8/tests.c M crypto/openssh/sandbox-capsicum.c M crypto/openssh/sandbox-darwin.c M crypto/openssh/sandbox-seccomp-filter.c M crypto/openssh/scp.1 M crypto/openssh/scp.c M crypto/openssh/servconf.c M crypto/openssh/serverloop.c M crypto/openssh/session.c M crypto/openssh/sftp-client.c M crypto/openssh/sftp-client.h M crypto/openssh/sftp-common.c M crypto/openssh/sftp-glob.c M crypto/openssh/sftp-server.c M crypto/openssh/sftp.c M crypto/openssh/sk-api.h M crypto/openssh/sk-usbhid.c M crypto/openssh/srclimit.c M crypto/openssh/ssh-add.1 M crypto/openssh/ssh-add.c M crypto/openssh/ssh-agent.1 M crypto/openssh/ssh-agent.c D crypto/openssh/ssh-dss.c M crypto/openssh/ssh-ecdsa.c M crypto/openssh/ssh-ed25519.c M crypto/openssh/ssh-keygen.1 M crypto/openssh/ssh-keygen.c M crypto/openssh/ssh-keyscan.1 M crypto/openssh/ssh-keyscan.c M crypto/openssh/ssh-keysign.c M crypto/openssh/ssh-pkcs11-client.c M crypto/openssh/ssh-pkcs11-helper.c M crypto/openssh/ssh-pkcs11.c M crypto/openssh/ssh-pkcs11.h M crypto/openssh/ssh-rsa.c M crypto/openssh/ssh-sk-helper.c M crypto/openssh/ssh-sk.c D crypto/openssh/ssh-xmss.c M crypto/openssh/ssh.c M crypto/openssh/ssh_config M crypto/openssh/ssh_config.5 M crypto/openssh/ssh_namespace.h M crypto/openssh/sshbuf-getput-basic.c M crypto/openssh/sshbuf-misc.c M crypto/openssh/sshbuf.h M crypto/openssh/sshconnect.c M crypto/openssh/sshconnect2.c M crypto/openssh/sshd-auth.c M crypto/openssh/sshd-session.c M crypto/openssh/sshd.8 M crypto/openssh/sshd.c M crypto/openssh/sshd_config M crypto/openssh/sshd_config.5 D crypto/openssh/sshkey-xmss.c D crypto/openssh/sshkey-xmss.h M crypto/openssh/sshkey.c M crypto/openssh/sshkey.h M crypto/openssh/sshlogin.c M crypto/openssh/sshpty.c M crypto/openssh/sshsig.c M crypto/openssh/uidswap.c M crypto/openssh/umac.c M crypto/openssh/version.h M crypto/openssh/xmalloc.c D crypto/openssh/xmss_commons.c D crypto/openssh/xmss_commons.h D crypto/openssh/xmss_fast.c D crypto/openssh/xmss_fast.h D crypto/openssh/xmss_hash.c D crypto/openssh/xmss_hash.h D crypto/openssh/xmss_hash_address.c D crypto/openssh/xmss_hash_address.h D crypto/openssh/xmss_wots.c D crypto/openssh/xmss_wots.h M secure/lib/libssh/Makefile M secure/ssh.mk _____________________________________________________________________________________________________________ Commit: 2ba5b9da2be10261c383035bef932cd37d52f903 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2ba5b9da2be10261c383035bef932cd37d52f903 Author: Ed Maste (Mon 24 Aug 2026 02:36:25 BST) Committer: Ed Maste (Mon 5 Oct 2026 14:47:51 BST) openssh: Add date bump command to FREEBSD-upgrade instructions Provide a convenient in-place sed edit command to update the FreeBSD VersionAddendum dates with today's date. Sponsored by: The FreeBSD Foundation (cherry picked from commit 0ec81f6a531bf7b3b06e869c99295f3d4ab9ed8e) M crypto/openssh/FREEBSD-upgrade _____________________________________________________________________________________________________________ Commit: 14d6926293569048d2d04f6e5a13d80f192ad99e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=14d6926293569048d2d04f6e5a13d80f192ad99e Author: Ed Maste (Fri 15 May 2026 17:16:45 BST) Committer: Ed Maste (Mon 5 Oct 2026 14:47:51 BST) openssh: Add reference for another local patch A bug fix was committed locally and submitted upstream. Document it in our upgrade instructions, as these sometimes take a long time before getting merged. Sponsored by: The FreeBSD Foundation (cherry picked from commit 6531070132b0210aaaeb08c0dc93cb272bed348e) M crypto/openssh/FREEBSD-upgrade _____________________________________________________________________________________________________________ Commit: 8bf2795588c3edc26952ade677f3d586fff3bdd6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8bf2795588c3edc26952ade677f3d586fff3bdd6 Author: Chandrakanth Patil (Tue 28 Apr 2026 15:10:13 BST) Committer: Sumit Saxena (Mon 5 Oct 2026 14:35:24 BST) bnxt_en: add bnxt_sriov.c to sys/conf/files for built-in kernel builds The SR-IOV series added bnxt_sriov.c and listed it in sys/modules/bnxt/bnxt_en/Makefile, but kernels that build bnxt into the image only compile sources named in sys/conf/files. Add bnxt_sriov.c next to the other bnxt_en entries so built-in bnxt (including LINT) links the SR-IOV implementation and avoids undefined symbols referenced from if_bnxt.c. Fixes: f2f831b2c151 ("bnxt_en: Add core SR-IOV infrastructure") MFC after: 1 month Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D56688 (cherry picked from commit c21c63fb565f1bc7f9564dbf12068c864f8891d8) M sys/conf/files _____________________________________________________________________________________________________________ Commit: 4e0870fd9dc77e5bc615492db3e2e2046335f662 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4e0870fd9dc77e5bc615492db3e2e2046335f662 Author: Alexander Ziaee (Fri 11 Sep 2026 10:59:37 BST) Committer: Alexander Ziaee (Sun 4 Oct 2026 01:52:21 BST) rc.conf.5: Fix typo Fixes: fa7094c5b06f ("Improve NOAUTO configuration") MFC after: 3 days Reported by: Herbert J. Skuhra Event: EuroBSDcon Devsummit 2026 (cherry picked from commit 45f4abef5eab5b439f8af272b68171ca5803498d) M share/man/man5/rc.conf.5 _____________________________________________________________________________________________________________ Commit: 405ee2a8bf62f1aa3ce6eb2340a17c74ac02af31 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=405ee2a8bf62f1aa3ce6eb2340a17c74ac02af31 Author: Alexander Ziaee (Fri 11 Sep 2026 07:17:39 BST) Committer: Alexander Ziaee (Sun 4 Oct 2026 01:52:16 BST) rc.conf.5: Improve NOAUTO configuration + tag SPDX - Show how to start a NOAUTOed interface - "configured" is not quite right, try to improve that MFC after: 3 days Event: EuroBSDcon Devsummit 2026 Reviewed by: adrian Discussed with: Antranig Vartanian Differential Revision: https://reviews.freebsd.org/D59571 (cherry picked from commit fa7094c5b06fe31a025906bcee922a46c1b36ed6) M share/man/man5/rc.conf.5 _____________________________________________________________________________________________________________ Commit: c678389a56f56c476c4bbcc3ec2198f03e533fe2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c678389a56f56c476c4bbcc3ec2198f03e533fe2 Author: Alexander Ziaee (Tue 15 Sep 2026 21:44:12 BST) Committer: Alexander Ziaee (Sun 4 Oct 2026 01:47:18 BST) bcm2835_pwm: Fix dev.pwm.0.ratio2 register A typo in the sysctl for RPI0 PWM channel 2 was causing it to write to the wrong register, leaving it misconfigured if used. PR: 298301 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298301 ) MFC after: 3 days (problem reported on 14.4) Reviewed by: adrian Reported by: Attila Kover Differential Revision: https://reviews.freebsd.org/D59644 (cherry picked from commit 32878e64e687a848fceb710ab9b45e396f27db3f) M sys/arm/broadcom/bcm2835/bcm2835_pwm.c _____________________________________________________________________________________________________________ Commit: 206bf1998ef94c23e078e7c990869b2831851953 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=206bf1998ef94c23e078e7c990869b2831851953 Author: Alexander Ziaee (Wed 16 Sep 2026 02:46:38 BST) Committer: Alexander Ziaee (Sun 4 Oct 2026 01:46:25 BST) ng manpages: Standardize descriptions Netgraph document descriptions are all over the place, wordsmith them into a standard format of "%s netgraph node", trying to describe them better to enhance accessiblity of apropos results. Event: EuroBSDcon 2026 MFC after: 3 days Reviewed by: dteske, glebius Discussed with: des, dteske, glebius Differential Revision: https://reviews.freebsd.org/D59643 (cherry picked from commit b1e3d6a668c5a8290ecf32c1badb9f0c9364d280) M share/man/man4/ng_UI.4 M share/man/man4/ng_async.4 M share/man/man4/ng_bpf.4 M share/man/man4/ng_bridge.4 M share/man/man4/ng_btsocket.4 M share/man/man4/ng_car.4 M share/man/man4/ng_checksum.4 M share/man/man4/ng_cisco.4 M share/man/man4/ng_deflate.4 M share/man/man4/ng_device.4 M share/man/man4/ng_echo.4 M share/man/man4/ng_eiface.4 M share/man/man4/ng_etf.4 M share/man/man4/ng_ether.4 M share/man/man4/ng_ether_echo.4 M share/man/man4/ng_frame_relay.4 M share/man/man4/ng_gif.4 M share/man/man4/ng_gif_demux.4 M share/man/man4/ng_hci.4 M share/man/man4/ng_hole.4 M share/man/man4/ng_hub.4 M share/man/man4/ng_iface.4 M share/man/man4/ng_ip_input.4 M share/man/man4/ng_ipfw.4 M share/man/man4/ng_ksocket.4 M share/man/man4/ng_l2cap.4 M share/man/man4/ng_l2tp.4 M share/man/man4/ng_lmi.4 M share/man/man4/ng_macfilter.4 M share/man/man4/ng_mppc.4 M share/man/man4/ng_nat.4 M share/man/man4/ng_netflow.4 M share/man/man4/ng_one2many.4 M share/man/man4/ng_patch.4 M share/man/man4/ng_pipe.4 M share/man/man4/ng_ppp.4 M share/man/man4/ng_pppoe.4 M share/man/man4/ng_pptpgre.4 M share/man/man4/ng_pred1.4 M share/man/man4/ng_rfc1490.4 M share/man/man4/ng_socket.4 M share/man/man4/ng_source.4 M share/man/man4/ng_split.4 M share/man/man4/ng_tag.4 M share/man/man4/ng_tcpmss.4 M share/man/man4/ng_tee.4 M share/man/man4/ng_tty.4 M share/man/man4/ng_ubt.4 M share/man/man4/ng_vjc.4 M share/man/man4/ng_vlan.4 M share/man/man4/ng_vlan_rotate.4 M usr.sbin/nghook/nghook.8 _____________________________________________________________________________________________________________ Commit: f39219fc43c2854a0c60b3797f36aab9bb4dd963 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f39219fc43c2854a0c60b3797f36aab9bb4dd963 Author: Konstantin Belousov (Sun 27 Sep 2026 23:25:34 BST) Committer: Konstantin Belousov (Sun 4 Oct 2026 01:33:41 BST) libthr.3: document LIBPTHREAD_PSHARED_LOCK_DESTROY_IMMEDIATE_GC (cherry picked from commit c2f66b6616425e0e8edab3e893bc4cb58869140d) M lib/libthr/libthr.3 _____________________________________________________________________________________________________________ Commit: e831067d51b422e7350a0962ba77ffc68b10a045 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e831067d51b422e7350a0962ba77ffc68b10a045 Author: Konstantin Belousov (Sun 27 Sep 2026 23:16:33 BST) Committer: Konstantin Belousov (Sun 4 Oct 2026 01:33:40 BST) libthr: GC pshared locks not more than each 25msecs by default PR: 268532 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=268532 ) (cherry picked from commit 4472a048cf95c9c1593a8b04655a59096b44b0c9) M lib/libthr/thread/thr_init.c M lib/libthr/thread/thr_private.h M lib/libthr/thread/thr_pshared.c _____________________________________________________________________________________________________________ Commit: 0143078248bb4caf39f23c9075b2afbede52e70d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0143078248bb4caf39f23c9075b2afbede52e70d Author: Grzegorz Junka (Sun 27 Sep 2026 20:22:20 BST) Committer: Konstantin Belousov (Sun 4 Oct 2026 01:33:40 BST) linux(4): Fix signal mask restoration in epoll_pwait(2)/epoll_pwait2(2) PR: 298878 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298878 ) (cherry picked from commit 16a284b1cdfd45ba99c2723e7f88497e76b235ad) M sys/compat/linux/linux_event.c _____________________________________________________________________________________________________________ Commit: 40f4174d62aa4c89730ec7adff1245a5626acd88 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=40f4174d62aa4c89730ec7adff1245a5626acd88 Author: Faraz Vahedi (Tue 22 Sep 2026 20:04:32 BST) Committer: Faraz Vahedi (Sat 3 Oct 2026 16:20:57 BST) jail(8): Preserve const qualifier on strchr(3) results Reviewed by: fuz, dteske Approved by: fuz (mentor), dteske (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59876 (cherry picked from commit ab636e421d318a1175450d5652d8460dd2c48b76) M usr.sbin/jail/config.c _____________________________________________________________________________________________________________ Commit: ad60cb1085bc4074c33f52d40105e3e9c7381a9a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ad60cb1085bc4074c33f52d40105e3e9c7381a9a Author: Faraz Vahedi (Sat 19 Sep 2026 11:15:35 BST) Committer: Faraz Vahedi (Sat 3 Oct 2026 16:20:52 BST) pkg(7): Preserve const qualifier on strrchr(3) results Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59777 (cherry picked from commit 47f9e665078210cf15cc3914611dccabda6084a4) M usr.sbin/pkg/pkg.c _____________________________________________________________________________________________________________ Commit: 3b8ba87af29ef277c16003d1d1c299956e4e4bbc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3b8ba87af29ef277c16003d1d1c299956e4e4bbc Author: Faraz Vahedi (Sat 19 Sep 2026 11:15:10 BST) Committer: Faraz Vahedi (Sat 3 Oct 2026 16:20:46 BST) ls(1): Preserve const qualifier on strstr(3) result Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59774 (cherry picked from commit cc61cc7b638a6a1182c0dd0989a7b630759f408c) M bin/ls/print.c _____________________________________________________________________________________________________________ Commit: a8fcc589292003b85fb49dc991df9715d99879ca URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a8fcc589292003b85fb49dc991df9715d99879ca Author: Faraz Vahedi (Sat 19 Sep 2026 11:14:30 BST) Committer: Faraz Vahedi (Sat 3 Oct 2026 16:20:10 BST) ed(1): Preserve const qualifier on strchr(3) result Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59773 (cherry picked from commit 066fad8aefcb5bda77482c526757712ad0637aa9) M bin/ed/io.c _____________________________________________________________________________________________________________ Commit: 850a848197b2c34c9536070d0bbe238215bbeb1b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=850a848197b2c34c9536070d0bbe238215bbeb1b Author: Faraz Vahedi (Sat 19 Sep 2026 11:13:20 BST) Committer: Faraz Vahedi (Sat 3 Oct 2026 16:18:11 BST) dd(1): Preserve const qualifier on bsearch(3) results Reviewed by: fuz, dteske Approved by: fuz (mentor), dteske (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59754 (cherry picked from commit 225612c76d870aa6467853fbafcbe34e8296d0d9) M bin/dd/args.c _____________________________________________________________________________________________________________ Commit: 536b344c40e21229dbe6e14f0dd4c6a0ed66c3a0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=536b344c40e21229dbe6e14f0dd4c6a0ed66c3a0 Author: Faraz Vahedi (Tue 15 Sep 2026 17:14:13 BST) Committer: Faraz Vahedi (Sat 3 Oct 2026 16:18:05 BST) devmatch(8): Preserve const qualifier on strchr(3) and strstr(3) results Reviewed by: fuz, dteske Approved by: fuz (mentor), dteske (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59667 (cherry picked from commit 592ae60e2b2eff6c2ec467c34be9a457ce24b044) M sbin/devmatch/devmatch.c _____________________________________________________________________________________________________________ Commit: 9c184546d062a0cb6f70ddbb5f65f4adacaa8ad1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9c184546d062a0cb6f70ddbb5f65f4adacaa8ad1 Author: Faraz Vahedi (Tue 15 Sep 2026 17:12:14 BST) Committer: Faraz Vahedi (Sat 3 Oct 2026 16:17:57 BST) ps(1): Preserve const qualifier on strchr(3) result Reviewed by: fuz, dteske Approved by: fuz (mentor), dteske (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59666 (cherry picked from commit d10e39d489a63cc034a1250d33e39743058639c2) M bin/ps/ps.c _____________________________________________________________________________________________________________ Commit: 64df13dae7fc7477b7209869211d2def931c8be9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=64df13dae7fc7477b7209869211d2def931c8be9 Author: Faraz Vahedi (Thu 10 Sep 2026 12:08:00 BST) Committer: Faraz Vahedi (Sat 3 Oct 2026 16:17:09 BST) libjail: Preserve const qualifier on strchr(3) and strrchr(3) results Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59553 (cherry picked from commit c63b69f82a745c1b905c1050eeff9df96fe18f4c) M lib/libjail/jail.c _____________________________________________________________________________________________________________ Commit: 49276e4b3638d5b319d51bb00777446c9691c331 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=49276e4b3638d5b319d51bb00777446c9691c331 Author: Roman Bogorodskiy (Thu 27 Aug 2026 18:40:43 BST) Committer: Roman Bogorodskiy (Sat 3 Oct 2026 09:24:17 BST) bhyveload: do not hang on EOF from console input Currently, when bhyveload(8) fails to boot the guest, it drops into the loader prompt waiting for user input. This behaviour is inconvenient when using bhyveload(8) from scripts. Make it exit when it receives EOF from console input. PR: 286289 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=286289 ) Reviewed by: markj MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59226 (cherry picked from commit 8c20260bc55d7b4be0cbcf0a940505ae15ab41a9) M usr.sbin/bhyveload/bhyveload.c _____________________________________________________________________________________________________________ Commit: 961a842fdd3a2e0868444d689acbe7349a55ebfa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=961a842fdd3a2e0868444d689acbe7349a55ebfa Author: Philip Paeps (Wed 30 Sep 2026 03:47:45 BST) Committer: Philip Paeps (Sat 3 Oct 2026 05:28:02 BST) contrib/tzdata: import tzdata 2026e Changes: https://github.com/eggert/tz/blob/2026e/NEWS Briefly: Manitoba moves to permanent -05 on 2026-10-31. (cherry picked from commit f11af6535044c8266d52806d72b07e939f94049c) M contrib/tzdata/NEWS M contrib/tzdata/backzone M contrib/tzdata/europe M contrib/tzdata/northamerica M contrib/tzdata/theory.html M contrib/tzdata/version M contrib/tzdata/zone.tab M contrib/tzdata/zone1970.tab M contrib/tzdata/zonenow.tab _____________________________________________________________________________________________________________ Commit: 891bda143f6b326bbaa4ca32b79d75cbd41232d2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=891bda143f6b326bbaa4ca32b79d75cbd41232d2 Author: Pouria Mousavizadeh Tehrani (Fri 18 Sep 2026 11:09:43 BST) Committer: Pouria Mousavizadeh Tehrani (Fri 2 Oct 2026 18:21:58 BST) route/fib_algo: Fix nexthop index collision across families fib_algo indexes its idx->nhop array by the nexthop index with assumption of its uniqueness. Which is true except for IPv4 over IPv6 nexthops. Give each index space its own segment within the same array and offset the index by the segment base. Segments are created on demand and sized independently, so the rib's own family keeps base 0 and tables without cross-family nexthops index exactly as before. Reviewed by: melifaro Discussed with: markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D59552 (cherry picked from commit 63343822430453f4add20bcbfa134c99132361df) M sys/net/route/fib_algo.c M sys/net/route/nhgrp_ctl.c M sys/net/route/nhop.h _____________________________________________________________________________________________________________ Commit: f1f19d09d0628b38642e40542b5a914793cee63a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f1f19d09d0628b38642e40542b5a914793cee63a Author: Minsoo Choo (Sat 5 Sep 2026 02:02:07 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:32 BST) sched: rename sched_schedcpu() to sched_sysinit() sched_schedcpu() is called only during SYSINIT to start kthread that calls schedcpu() every second in 4BSD, but its name implies it's doing what 4BSD's schedcpu() does. Rename this function to sched_sysinit() to mark that schedulers can use it for its own SYSINIT routine. Note that their SYSINIT routine does not necessarily need to be similar to 4BSD's decay in schedcpu(). The scheduler.9 man page is planned to be rewritten from scratch, so no change to it for now. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59437 (cherry picked from commit 962125aef24b55b4bb8808dcab335abc4b3f0d4e) M sys/kern/sched_4bsd.c M sys/kern/sched_shim.c M sys/kern/sched_ule.c M sys/sys/sched.h _____________________________________________________________________________________________________________ Commit: b406f4ad382d213352caf469572c20fd6c899da7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b406f4ad382d213352caf469572c20fd6c899da7 Author: Minsoo Choo (Sun 6 Sep 2026 23:49:02 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:32 BST) sched: factor out hogticks calculation into sched_update_hogticks() Suggested by: olce Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59471 (cherry picked from commit 5a879394ba2eac14f65b466a46dae39326df00db) M sys/kern/sched_4bsd.c M sys/kern/sched_ule.c _____________________________________________________________________________________________________________ Commit: 3d1b8451da98a06e2034283cb2771c2ba9752f03 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3d1b8451da98a06e2034283cb2771c2ba9752f03 Author: Minsoo Choo (Tue 25 Aug 2026 04:24:27 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:32 BST) sched_ule: fix typo in comment Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59409 (cherry picked from commit 5803063625371dfbaf68e55b0d9e15021f103e28) M sys/kern/sched_ule.c _____________________________________________________________________________________________________________ Commit: bd7d81dedd0b8942239451c99bfbfc08cbc1beab URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bd7d81dedd0b8942239451c99bfbfc08cbc1beab Author: Minsoo Choo (Tue 25 Aug 2026 00:35:27 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:32 BST) sched_ule: fix invalid tdq_slice() and sched_slice_min sched_slice_min should always to be greater than zero. When modifying sched_slice through sysctl, if the new value is less than SCHED_SLICE_MIN_DIVISOR, sched_slice_min is computed to zero. Add imax(1, ...) to prevent this. tdq_slice() should not return a value less than sched_slice_min since that will cause integer underflow of ts2->ts_slice in sched_ule_fork_thread. SCHED_SLICE_MIN_DIVISOR is currently set to 6 so when load is 5 and sched_slice is 4, the two if conditions in tdq_slice() will pass and the function will return zero. Thus use imax() so tdq_slice returns sched_slice_min at minimum. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59408 (cherry picked from commit 477d2ea79252054596c73fa5f485bd224c028fd9) M sys/kern/sched_ule.c _____________________________________________________________________________________________________________ Commit: 3d898485e707ce72818490ee423748ac76df401b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3d898485e707ce72818490ee423748ac76df401b Author: Minsoo Choo (Mon 24 Aug 2026 03:25:38 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:31 BST) sched_ule: fix comment on ts_slice In ULE ts_slice stores the number of ticks of slice passed not remaining. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59407 (cherry picked from commit 872074c50e99ab8858c2defe255d716f8f75f15b) M sys/kern/sched_ule.c _____________________________________________________________________________________________________________ Commit: b74d31398a240c341cc52c41551d38ac5a541b20 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b74d31398a240c341cc52c41551d38ac5a541b20 Author: Minsoo Choo (Mon 24 Aug 2026 03:25:37 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:31 BST) sched_4bsd: fix vague comment The comment "was incremented in schedcpu()" doesn't give enough background for decrementing ts_slptime by 1 (thus ignoring decay_cpu() for 1 ts_slptime). More accurately, ts_slptime is decremented by 1 because decay_cpu() has already executed once in schedcpu() when ts_slptime was 1. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59406 (cherry picked from commit cd33abbce5a5c3b454f00ca3d0ecd71c2234106c) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: 78deebb555ac6fde300bb6867c0f102e992e8b42 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=78deebb555ac6fde300bb6867c0f102e992e8b42 Author: Minsoo Choo (Mon 24 Aug 2026 03:25:37 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:31 BST) sched_4bsd: remove obsolete comment 'awake' checks if a thread, not a process, is awake. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59404 (cherry picked from commit 6c0c77e190b27d768595ef5b38d798430fb03a8b) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: b47f52ca4197257dee5e174fcbf7c5e6da7dcddc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b47f52ca4197257dee5e174fcbf7c5e6da7dcddc Author: Minsoo Choo (Mon 24 Aug 2026 03:25:36 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:31 BST) sched_4bsd: move comment to correct location Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59403 (cherry picked from commit 039498c2735ee0697da24b9c60c9e67680f91f31) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: 48cef99607698b98d49722d62bb257ee575a6fab URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=48cef99607698b98d49722d62bb257ee575a6fab Author: Minsoo Choo (Mon 24 Aug 2026 03:25:36 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:31 BST) sched_4bsd: fix comment in maybe_preempt() The comment says the new thread's priority is not a realtime priority while the code states pri > PRI_MAX_ITHD which is interrupt priorities not realtime. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59402 (cherry picked from commit 351f6733180cebdc83585f9a00677f4998f6c6f1) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: a97fea97e35122e4dafc2342b77767a1584468bb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a97fea97e35122e4dafc2342b77767a1584468bb Author: Minsoo Choo (Mon 24 Aug 2026 03:25:35 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:30 BST) sched: fix kern.sched.{4bsd,ule}.slice Fix three problems with kern.sched.{4bsd,ule}.slice: * Guarantee minimum slice is 1. * Recalculate hogticks on sysctl write. * For ULE, recalculate sched_slice_min on sysctl write. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59401 (cherry picked from commit 179f5b2bfedccc762352f06057f4e389bfabb2ea) M sys/kern/sched_4bsd.c M sys/kern/sched_ule.c _____________________________________________________________________________________________________________ Commit: 99c0a5258540f4a4388c90a1dbe9491fa09b9e6b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=99c0a5258540f4a4388c90a1dbe9491fa09b9e6b Author: Minsoo Choo (Mon 24 Aug 2026 03:25:34 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:30 BST) sched_ule: fix typo goup to group Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59400 (cherry picked from commit f609ca733fee72894634f751d1fbc3db53d603dc) M sys/kern/sched_ule.c _____________________________________________________________________________________________________________ Commit: 7507347e15d29dabb769f1ec024f1eb7dcd4b376 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7507347e15d29dabb769f1ec024f1eb7dcd4b376 Author: Minsoo Choo (Mon 24 Aug 2026 03:25:34 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:30 BST) sched_ule: remove unused KTR_ULE Commit 62fa74d95a16 ("Add support for the new cpu...") removed all uses of KTR_ULE, leaving the macro unused. Reviewed by: olce Approved by: olce (mentor) Fixes: 62fa74d95a16 ("Add support for the new cpu...") MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59399 (cherry picked from commit 7997d2a18150a449b563c87490e8d440bb1023f3) M sys/kern/sched_ule.c _____________________________________________________________________________________________________________ Commit: d6cf09d417b2b49ad47c6b2eff890c1f2633fd85 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d6cf09d417b2b49ad47c6b2eff890c1f2633fd85 Author: Minsoo Choo (Mon 24 Aug 2026 03:25:33 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:30 BST) sched_4bsd: remove obsolete comment In old Unix, the whole process address space including scheduler-related data was paged out to disk. We now allocate thread-related data with UMA on wired memory which never page out. Thus this comment is now obsolete. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59398 (cherry picked from commit 46416a57eb7b6d74fda13cc6e40a43bdfa6b7da9) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: 27d07865c9f27e46621f22c4ffbfe198cdf7903f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=27d07865c9f27e46621f22c4ffbfe198cdf7903f Author: Minsoo Choo (Mon 24 Aug 2026 03:25:32 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:30 BST) sched_4bsd: update function name in comment In b43179fbe815 ("Create a new scheduler api..."), schedclock() was renamed to sched_clock() but the function name in the comment remained still. Update the comment to reflect up-to-date name for schedclock(). Reviewed by: olce Approved by: olce (mentor) Fixes: b43179fbe815 ("Create a new scheduler api...") MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59397 (cherry picked from commit 5d67118d2c7388bdc065e640719553ff4d9eea89) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: 8e83ca27529c190ab37fe4695c2aaebdc658c76c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8e83ca27529c190ab37fe4695c2aaebdc658c76c Author: Minsoo Choo (Mon 24 Aug 2026 03:25:32 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:29 BST) sched_4bsd: add static assertion for nice weight When NICE_WEIGHT * (PRIO_MAX - PRIO_MIN) exceeds the timeshare range, two CPU-bound threads with different nice values can have the same priority as their nice values are clamped to the timeshare range limit. Add static assertion on NICE_WEIGHT to ensure that there is always enough room for nice values in the both end of the timeshare priority range. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59396 (cherry picked from commit e90be6fdf08526624f407923d003b66efa23d304) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: 9314b1afd30221024ec90843d2fdd68a362cb3ae URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9314b1afd30221024ec90843d2fdd68a362cb3ae Author: Minsoo Choo (Mon 24 Aug 2026 03:25:31 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:29 BST) sched_4bsd: remove dumping from maybe_preempt() 'dumping' is true only when kernel is dumping after crash (see minidumpsys()) so KERNEL_PANICKED() will catch this. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59395 (cherry picked from commit 1dfefffcbdc652ee88a3baa284182f96e20faf17) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: d33c9cbc3e6e5c75ac7999b1ba14cf17bb19e052 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d33c9cbc3e6e5c75ac7999b1ba14cf17bb19e052 Author: Minsoo Choo (Mon 24 Aug 2026 03:25:30 BST) Committer: Minsoo Choo (Fri 2 Oct 2026 16:34:29 BST) sched_4bsd: remove kern.sched.4bsd.followon kern.sched.4bsd.followon was enabled only for KSE. It was never compiled since ad1e7d285ab1 and KSE was removed years ago. Now it's time to remove this tunable. Reviewed by: olce Approved by: olce (mentor) MFC after: 2 weeks Sponsored by: FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59394 (cherry picked from commit d29c9f5aca3463e3c7f2fa2263795a78c6430d2d) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: 70f6696f0f90b0de9dba554faafc50ec3444443d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=70f6696f0f90b0de9dba554faafc50ec3444443d Author: Yunheeee (Sat 26 Sep 2026 04:10:04 BST) Committer: Xin LI (Fri 2 Oct 2026 06:04:40 BST) MFC: fsck_msdosfs: fix head bitmap over-allocation on 32-bit platforms bitmap_ctor() computed the allocation size as roundup2(bits, LONG_BIT) / (LONG_BIT / 8) The dividend is a count of bits, so converting it to bytes requires dividing by 8 (bits per byte), not by LONG_BIT / 8 (bytes per long). The two divisors happen to coincide on LP64, but on ILP32 platforms the head bitmap was allocated at twice the required size; for a FAT32 file system with close to 2^28 clusters, that is 64 MiB instead of 32 MiB. The extra half of the allocation was never accessed, so there is no functional change other than the reduced memory footprint. Pull Request: https://github.com/freebsd/freebsd-src/pull/2440 (cherry picked from commit 269002da453895fc935101afefeb02d2c7d10360) M sbin/fsck_msdosfs/fat.c _____________________________________________________________________________________________________________ Commit: e04975952eae337c9f0dc26a945bafb3ac75c640 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e04975952eae337c9f0dc26a945bafb3ac75c640 Author: Konstantin Belousov (Tue 29 Sep 2026 20:58:40 BST) Committer: Konstantin Belousov (Fri 2 Oct 2026 01:29:13 BST) pdfork.2: downgrade sections inside description to subsections (cherry picked from commit 233b6efe5f2f2af799a854745e79cce35893c166) M lib/libsys/pdfork.2 _____________________________________________________________________________________________________________ Commit: a362cdbc40fc5f6a61e3ea6e70cc8ff3927a0c98 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a362cdbc40fc5f6a61e3ea6e70cc8ff3927a0c98 Author: Konstantin Belousov (Tue 29 Sep 2026 11:58:50 BST) Committer: Konstantin Belousov (Fri 2 Oct 2026 01:29:13 BST) amd64/mp_machdep.c: remove double 'for' in comment (cherry picked from commit cc467e45136d2f562f654ff6f4f9b91ee9767b0f) M sys/amd64/amd64/mp_machdep.c _____________________________________________________________________________________________________________ Commit: 0b988281ca3c7d874f880589788e136a8da33e7b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0b988281ca3c7d874f880589788e136a8da33e7b Author: Ryan Libby (Fri 10 Jul 2026 18:51:03 BST) Committer: Enji Cooper (Thu 1 Oct 2026 20:37:08 BST) fusefs: fix gcc build error with shadowed variable in tests Reported by: gcc -Werror=shadow Reviewed by: asomers, markj Fixes: ee1c3d38a26a ("fusefs: fix vnode locking violations during execve") Differential Revision: https://reviews.freebsd.org/D58130 (cherry picked from commit c503d23a6ccb8090edabc1c90981f9b8f202e093) M tests/sys/fs/fusefs/misc.cc _____________________________________________________________________________________________________________ Commit: c93b5126130ab82d3efff95008f12679d5500d30 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c93b5126130ab82d3efff95008f12679d5500d30 Author: Dimitry Andric (Thu 24 Sep 2026 13:50:47 BST) Committer: Dimitry Andric (Thu 1 Oct 2026 19:27:25 BST) llvm: remove Mips target support The Mips architecture has been removed from all supported branches now. MFC after: 1 week (cherry picked from commit b5d1e0c5a4929e2be3bc58aad8e5b707860ec0fd) M lib/clang/include/llvm/Config/AsmParsers.def M lib/clang/include/llvm/Config/AsmPrinters.def M lib/clang/include/llvm/Config/Disassemblers.def M lib/clang/include/llvm/Config/Targets.def M lib/clang/include/llvm/Config/Targets.h M lib/clang/libllvm/Makefile M lib/clang/llvm.build.mk M share/man/man5/src.conf.5 M share/mk/src.opts.mk D tools/build/options/WITHOUT_LLVM_TARGET_MIPS D tools/build/options/WITH_LLVM_TARGET_MIPS _____________________________________________________________________________________________________________ Commit: a5d112ba16b3f905cd0ab209d260652600e6e944 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a5d112ba16b3f905cd0ab209d260652600e6e944 Author: Mark Johnston (Thu 24 Sep 2026 17:14:34 BST) Committer: Mark Johnston (Thu 1 Oct 2026 14:42:48 BST) lockf: Do not block in vfs_busy() A race is possible otherwise: vfs_busy() may return after an unmounted filesystem has been removed from the global mount list. That is, vfs_busy() will block until vfs_mount_destroy() sets MNTK_REFEXPIRE, and at that point the mountpoint has been removed from the mountlist, so TAILQ_FOREACH can return an invalid value. Simply do not block if the mountpoint is being unmounted. Reviewed by: kib Fixes: eca39864f702 ("Add sysctl KERN_LOCKF") MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59982 (cherry picked from commit dd16a5f53b0b2e967d20d2900f18fc320997679b) M sys/kern/kern_lockf.c _____________________________________________________________________________________________________________ Commit: ce4ece145cec5f38ee0c91f05e82a414eb1aa1ba URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ce4ece145cec5f38ee0c91f05e82a414eb1aa1ba Author: Mark Johnston (Thu 24 Sep 2026 16:49:37 BST) Committer: Mark Johnston (Thu 1 Oct 2026 14:42:31 BST) vm_page: Fix the error path in vm_page_alloc_contig_domain() If we are inserting a run of pages into a VM object and fail at some point due to a memory allocation failure, we have to free all of the pages in the run. We do that by resetting some fields and calling vm_page_free_toq() on each page; this removes the page from the object and frees it back to the buddy allocator. If the page is supposed to be wired, we reset the reference count, but this was done incorrectly: the VPRC_OBJREF flag must be retained as the page still belongs to an object. Resetting it to zero will cause a panic in vm_page_free_prep(): vm_page_free_object_prep() will subtract VPRC_OBJREF from the refcount, causing underflow, and vm_page_free_prep() subsequently calls panic() if the refcount is non-zero. Reviewed by: alc, kib Fixes: fee2a2fa3983 ("Change synchonization rules for vm_page reference counting.") MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59908 (cherry picked from commit 742e58ddc989563f90a1d636cb29793641784ca1) M sys/vm/vm_page.c _____________________________________________________________________________________________________________ Commit: 6ff5cdcbead522cb9096d0bfed62e271cb3768d3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6ff5cdcbead522cb9096d0bfed62e271cb3768d3 Author: Mark Johnston (Wed 16 Sep 2026 13:13:25 BST) Committer: Mark Johnston (Thu 1 Oct 2026 14:42:29 BST) ppp: Fix address leaks Avoid printing timer addresses, so as to not divulge information about the address space layout. In ip.c, print the actual SPI instead of a pointer to the SPI in the header buffer. When debug logging is enabled, don't leak pointers when logging function arguments or return values. Reported by: Reo Shiseki MFC after: 2 weeks Sponsored by: The FreeBSD Foundation (cherry picked from commit c91777f23a3b13649cdf303515ee45a04c788af3) M usr.sbin/ppp/id.c M usr.sbin/ppp/ip.c M usr.sbin/ppp/radius.c M usr.sbin/ppp/timer.c M usr.sbin/ppp/tty.c _____________________________________________________________________________________________________________ Commit: adfcef9dfe2e68395512fba31741e989c2e4f6f3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=adfcef9dfe2e68395512fba31741e989c2e4f6f3 Author: Mark Johnston (Wed 23 Sep 2026 17:53:53 BST) Committer: Mark Johnston (Thu 1 Oct 2026 14:42:28 BST) posixshm: Fix a double unlock in shm_partial_page_invalidate() For some reason, shm_partial_page_invalidate() unlocks the object upon an error, but its callers don't expect this. Don't do any special error handling. Keep the subroutine anyway since the name is a bit clearer than vm_page_grab_zero_partial(). While here, normalize the object pointer used for locking in shm_deallocate(). Reviewed by: kib Fixes: 454bc887f250 ("uipc_shm: Implements fspacectl(2) support") MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59877 (cherry picked from commit ba974faaf30b74472acc4f0dc5853a22d43951f2) M sys/kern/uipc_shm.c _____________________________________________________________________________________________________________ Commit: 62dfa6c0842e8f7ca67ca377280e2b6793614b62 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=62dfa6c0842e8f7ca67ca377280e2b6793614b62 Author: Andrew Griffiths (Wed 16 Sep 2026 14:04:46 BST) Committer: Mark Johnston (Thu 1 Oct 2026 14:42:28 BST) mac_bsdextended: reject negative rule indices in sysctl_rule() The security.mac.bsdextended.rules. node handler takes N as `index = name[0]` (a signed int) and only checks `index >= MAC_BSDEXTENDED_MAXRULES`. A negative index is caught on the read branch, but the write-only add and delete branches proceed to `rules[index]` unconditionally. Reject `index < 0` alongside the existing upper-bound check. Submitted by calif.io for the OpenAI Patch The Planet program Signed-off-by: Andrew Griffiths Reviewed by: markj MFC after: 2 weeks (cherry picked from commit 5d0b87669a91244e330a35fc973e6c60f92f6d1f) M sys/security/mac_bsdextended/mac_bsdextended.c _____________________________________________________________________________________________________________ Commit: b69c0082426dc23553bff7dfc90b41e8a03cf6c8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b69c0082426dc23553bff7dfc90b41e8a03cf6c8 Author: Pouria Mousavizadeh Tehrani (Sat 26 Sep 2026 20:54:16 BST) Committer: Pouria Mousavizadeh Tehrani (Thu 1 Oct 2026 11:59:30 BST) nd6: Fix regeneration of temp addresses in detached state When an on-link prefix becomes detached, the kernel keeps generating new RFC 8981 temporary addresses for that prefix. Fix it by ignoring the detached addresses in regen_tmpaddr(). While here, change its return type to bool. PR: 298533 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298533 ) Discussed with: markj MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D60051 (cherry picked from commit 61f98a98250da7bd2c80c6d93d0032961d7f2fad) M sys/netinet6/nd6.c _____________________________________________________________________________________________________________ Commit: 2670aa4807f04c484c4f5449b6fa25d98c4b8961 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2670aa4807f04c484c4f5449b6fa25d98c4b8961 Author: Mateusz Piotrowski <0mp@FreeBSD.org> (Wed 23 Sep 2026 15:19:05 BST) Committer: Mateusz Piotrowski <0mp@FreeBSD.org> (Thu 1 Oct 2026 09:07:56 BST) sdiff.1: Document exit status and --help MFC after: 3 days Approved by: bnovkov (mentor) Sponsored by: fme AG Differential Revision: https://reviews.freebsd.org/D59927 (cherry picked from commit 14c7492637ec0644b5bb88da114e8cc76b9bf629) M usr.bin/sdiff/sdiff.1 M usr.bin/sdiff/sdiff.c _____________________________________________________________________________________________________________ Commit: a9103f8f07cbdd5c2f69475b053fd41b31b1425d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a9103f8f07cbdd5c2f69475b053fd41b31b1425d Author: Piotr Kubaj (Wed 23 Sep 2026 14:21:00 BST) Committer: Piotr Kubaj (Thu 1 Oct 2026 08:25:35 BST) llan: byte swap the receive queue entries The receive queue of a PAPR logical LAN is filled in by the hypervisor, so its fields are big endian, but llan_intr() read the offset and the length of each frame natively. On a little endian kernel the length of a 134 byte frame reads as 0x86000000, and ether_input() discards the mbuf because m_len is not even large enough for an ethernet header. No frame is ever received. Reproduced on a POWER9 pseries guest with a spapr-vlan interface. Before: llan0: discard frame w/o leading ethernet header (len -2046820352 pkt len -2046820352) llan0 1500 52:54:00:12:34:56 123 118 0 5838733312 7 0 that is 118 input errors out of 123 packets, dhclient(8) never completes and ping(8) loses every packet, although transmit works because the transmit path passes the lengths in hcall registers rather than through memory. Afterwards the interface gets a DHCP lease and ping reports no loss. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59926 Approved by: jhibbits (cherry picked from commit 6429199a21136cad3c82b43618a6ca2958b90bbf) M sys/powerpc/pseries/phyp_llan.c _____________________________________________________________________________________________________________ Commit: 16c0b57749250ada1fc4021edb9b0a2c28349ae1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=16c0b57749250ada1fc4021edb9b0a2c28349ae1 Author: Enji Cooper (Mon 7 Sep 2026 04:21:50 BST) Committer: Enji Cooper (Thu 1 Oct 2026 07:32:27 BST) contrib/lutok: remove autotools generated files These files provide no value in the FreeBSD tree proper and change frequently, depending on what machine I generate the release tarball on (and what versions of autotools are on the host). Nuke the autogenerated files to avoid bloating commit history/the tree. MFC after: 3 days Requested by: Benjamin Jacobs (cherry picked from commit cfe443e1e63dd588fba7eabec553ed5e1c408d1f) D contrib/lutok/Makefile.in D contrib/lutok/aclocal.m4 D contrib/lutok/admin/ar-lib D contrib/lutok/admin/compile D contrib/lutok/admin/config.guess D contrib/lutok/admin/config.sub D contrib/lutok/admin/depcomp D contrib/lutok/admin/install-sh D contrib/lutok/admin/ltmain.sh D contrib/lutok/admin/missing D contrib/lutok/configure D contrib/lutok/m4/libtool.m4 D contrib/lutok/m4/ltoptions.m4 D contrib/lutok/m4/ltversion.m4 D contrib/lutok/m4/lt~obsolete.m4 _____________________________________________________________________________________________________________ Commit: 6dcc931d2b004aac7e92246fb004eb0547343bed URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6dcc931d2b004aac7e92246fb004eb0547343bed Author: Enji Cooper (Mon 31 Aug 2026 17:29:06 BST) Committer: Enji Cooper (Thu 1 Oct 2026 07:32:15 BST) contrib/lutok: update from 0.4 to 0.6.2 More information about what's included in the new release can be found [here](https://github.com/freebsd/lutok/compare/lutok-0.4...lutok-0.6.2). MFC after: 1 week Merge commit '447d4fe61d8bf55ffa21698ecee0ac51010a9a0f' (cherry picked from commit 132f818ddbf457ee67d502cd89b5a18e0a34713d) D contrib/lutok/.gitignore D contrib/lutok/.travis.yml D contrib/lutok/INSTALL A contrib/lutok/INSTALL.md M contrib/lutok/Makefile.am A contrib/lutok/Makefile.in M contrib/lutok/NEWS R069 contrib/lutok/README contrib/lutok/README.md A contrib/lutok/aclocal.m4 D contrib/lutok/admin/.gitignore A contrib/lutok/admin/ar-lib D contrib/lutok/admin/clean-all.sh A contrib/lutok/admin/compile A contrib/lutok/admin/config.guess A contrib/lutok/admin/config.sub A contrib/lutok/admin/depcomp A contrib/lutok/admin/install-sh A contrib/lutok/admin/ltmain.sh A contrib/lutok/admin/missing D contrib/lutok/admin/travis-build.sh D contrib/lutok/admin/travis-install-deps.sh A contrib/lutok/api-docs/html/a00002.html A contrib/lutok/api-docs/html/a00002_source.html A contrib/lutok/api-docs/html/a00029.html A contrib/lutok/api-docs/html/a00029_source.html A contrib/lutok/api-docs/html/a00032.html A contrib/lutok/api-docs/html/a00032_source.html A contrib/lutok/api-docs/html/a00038.html A contrib/lutok/api-docs/html/a00038_source.html A contrib/lutok/api-docs/html/a00041.html A contrib/lutok/api-docs/html/a00041_source.html A contrib/lutok/api-docs/html/a00053.html A contrib/lutok/api-docs/html/a00053_source.html A contrib/lutok/api-docs/html/a00056.html A contrib/lutok/api-docs/html/a00056_source.html A contrib/lutok/api-docs/html/a00064.html A contrib/lutok/api-docs/html/a00065.html A contrib/lutok/api-docs/html/a00066.html A contrib/lutok/api-docs/html/a00067.html A contrib/lutok/api-docs/html/a00880.html A contrib/lutok/api-docs/html/a00883.html A contrib/lutok/api-docs/html/a00884.html A contrib/lutok/api-docs/html/a00887.html A contrib/lutok/api-docs/html/a00888.html A contrib/lutok/api-docs/html/a00891.html A contrib/lutok/api-docs/html/a00892.html A contrib/lutok/api-docs/html/a00895.html A contrib/lutok/api-docs/html/a00895.png A contrib/lutok/api-docs/html/a00896.html A contrib/lutok/api-docs/html/a00899.html A contrib/lutok/api-docs/html/a00899.png A contrib/lutok/api-docs/html/a00900.html A contrib/lutok/api-docs/html/a00903.html A contrib/lutok/api-docs/html/a00903.png A contrib/lutok/api-docs/html/a00904.html A contrib/lutok/api-docs/html/a00907.html A contrib/lutok/api-docs/html/a00908.html A contrib/lutok/api-docs/html/a00911.html A contrib/lutok/api-docs/html/a00912.html A contrib/lutok/api-docs/html/a00915.html A contrib/lutok/api-docs/html/a00916.html A contrib/lutok/api-docs/html/a00919.html A contrib/lutok/api-docs/html/a00920.html A contrib/lutok/api-docs/html/a00923.html A contrib/lutok/api-docs/html/annotated.html A contrib/lutok/api-docs/html/bc_s.png A contrib/lutok/api-docs/html/bc_sd.png A contrib/lutok/api-docs/html/bdwn.png A contrib/lutok/api-docs/html/classes.html A contrib/lutok/api-docs/html/closed.png A contrib/lutok/api-docs/html/doc.png A contrib/lutok/api-docs/html/docd.png A contrib/lutok/api-docs/html/doxygen.css A contrib/lutok/api-docs/html/doxygen.svg A contrib/lutok/api-docs/html/dynsections.js A contrib/lutok/api-docs/html/files.html A contrib/lutok/api-docs/html/folderclosed.png A contrib/lutok/api-docs/html/folderopen.png A contrib/lutok/api-docs/html/functions.html A contrib/lutok/api-docs/html/functions_func.html A contrib/lutok/api-docs/html/functions_vars.html A contrib/lutok/api-docs/html/globals.html A contrib/lutok/api-docs/html/globals_defs.html A contrib/lutok/api-docs/html/hierarchy.html A contrib/lutok/api-docs/html/index.html A contrib/lutok/api-docs/html/jquery.js A contrib/lutok/api-docs/html/menu.js A contrib/lutok/api-docs/html/menudata.js A contrib/lutok/api-docs/html/namespacemembers.html A contrib/lutok/api-docs/html/namespacemembers_func.html A contrib/lutok/api-docs/html/namespaces.html A contrib/lutok/api-docs/html/nav_f.png A contrib/lutok/api-docs/html/nav_fd.png A contrib/lutok/api-docs/html/nav_g.png A contrib/lutok/api-docs/html/nav_h.png A contrib/lutok/api-docs/html/nav_hd.png A contrib/lutok/api-docs/html/open.png A contrib/lutok/api-docs/html/search/all_0.js A contrib/lutok/api-docs/html/search/all_1.js A contrib/lutok/api-docs/html/search/all_10.js A contrib/lutok/api-docs/html/search/all_11.js A contrib/lutok/api-docs/html/search/all_12.js A contrib/lutok/api-docs/html/search/all_2.js A contrib/lutok/api-docs/html/search/all_3.js A contrib/lutok/api-docs/html/search/all_4.js A contrib/lutok/api-docs/html/search/all_5.js A contrib/lutok/api-docs/html/search/all_6.js A contrib/lutok/api-docs/html/search/all_7.js A contrib/lutok/api-docs/html/search/all_8.js A contrib/lutok/api-docs/html/search/all_9.js A contrib/lutok/api-docs/html/search/all_a.js A contrib/lutok/api-docs/html/search/all_b.js A contrib/lutok/api-docs/html/search/all_c.js A contrib/lutok/api-docs/html/search/all_d.js A contrib/lutok/api-docs/html/search/all_e.js A contrib/lutok/api-docs/html/search/all_f.js A contrib/lutok/api-docs/html/search/classes_0.js A contrib/lutok/api-docs/html/search/classes_1.js A contrib/lutok/api-docs/html/search/classes_2.js A contrib/lutok/api-docs/html/search/classes_3.js A contrib/lutok/api-docs/html/search/classes_4.js A contrib/lutok/api-docs/html/search/classes_5.js A contrib/lutok/api-docs/html/search/close.svg A contrib/lutok/api-docs/html/search/defines_0.js A contrib/lutok/api-docs/html/search/files_0.js A contrib/lutok/api-docs/html/search/files_1.js A contrib/lutok/api-docs/html/search/files_2.js A contrib/lutok/api-docs/html/search/files_3.js A contrib/lutok/api-docs/html/search/files_4.js A contrib/lutok/api-docs/html/search/files_5.js A contrib/lutok/api-docs/html/search/functions_0.js A contrib/lutok/api-docs/html/search/functions_1.js A contrib/lutok/api-docs/html/search/functions_10.js A contrib/lutok/api-docs/html/search/functions_11.js A contrib/lutok/api-docs/html/search/functions_2.js A contrib/lutok/api-docs/html/search/functions_3.js A contrib/lutok/api-docs/html/search/functions_4.js A contrib/lutok/api-docs/html/search/functions_5.js A contrib/lutok/api-docs/html/search/functions_6.js A contrib/lutok/api-docs/html/search/functions_7.js A contrib/lutok/api-docs/html/search/functions_8.js A contrib/lutok/api-docs/html/search/functions_9.js A contrib/lutok/api-docs/html/search/functions_a.js A contrib/lutok/api-docs/html/search/functions_b.js A contrib/lutok/api-docs/html/search/functions_c.js A contrib/lutok/api-docs/html/search/functions_d.js A contrib/lutok/api-docs/html/search/functions_e.js A contrib/lutok/api-docs/html/search/functions_f.js A contrib/lutok/api-docs/html/search/mag.svg A contrib/lutok/api-docs/html/search/mag_d.svg A contrib/lutok/api-docs/html/search/mag_sel.svg A contrib/lutok/api-docs/html/search/mag_seld.svg A contrib/lutok/api-docs/html/search/namespaces_0.js A contrib/lutok/api-docs/html/search/search.css A contrib/lutok/api-docs/html/search/search.js A contrib/lutok/api-docs/html/search/searchdata.js A contrib/lutok/api-docs/html/search/typedefs_0.js A contrib/lutok/api-docs/html/search/variables_0.js A contrib/lutok/api-docs/html/search/variables_1.js A contrib/lutok/api-docs/html/search/variables_2.js A contrib/lutok/api-docs/html/search/variables_3.js A contrib/lutok/api-docs/html/search/variables_4.js A contrib/lutok/api-docs/html/splitbar.png A contrib/lutok/api-docs/html/splitbard.png A contrib/lutok/api-docs/html/sync_off.png A contrib/lutok/api-docs/html/sync_on.png A contrib/lutok/api-docs/html/tab_a.png A contrib/lutok/api-docs/html/tab_ad.png A contrib/lutok/api-docs/html/tab_b.png A contrib/lutok/api-docs/html/tab_bd.png A contrib/lutok/api-docs/html/tab_h.png A contrib/lutok/api-docs/html/tab_hd.png A contrib/lutok/api-docs/html/tab_s.png A contrib/lutok/api-docs/html/tab_sd.png A contrib/lutok/api-docs/html/tabs.css A contrib/lutok/config.h.in A contrib/lutok/configure M contrib/lutok/configure.ac M contrib/lutok/debug.hpp M contrib/lutok/examples_test.sh D contrib/lutok/m4/.gitignore A contrib/lutok/m4/ac_cxx_compile_stdcxx.m4 A contrib/lutok/m4/atf-c++.m4 A contrib/lutok/m4/atf-common.m4 A contrib/lutok/m4/atf-sh.m4 D contrib/lutok/m4/compiler-features.m4 A contrib/lutok/m4/libtool.m4 A contrib/lutok/m4/ltoptions.m4 A contrib/lutok/m4/ltsugar.m4 A contrib/lutok/m4/ltversion.m4 A contrib/lutok/m4/lt~obsolete.m4 M contrib/lutok/m4/lua.m4 M contrib/lutok/stack_cleaner.hpp M contrib/lutok/state.cpp M contrib/lutok/state.hpp _____________________________________________________________________________________________________________ Commit: a3190104fa5cfab6a9a05735342c164492bbdc69 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a3190104fa5cfab6a9a05735342c164492bbdc69 Author: Enji Cooper (Wed 30 Sep 2026 00:06:45 BST) Committer: Enji Cooper (Thu 1 Oct 2026 07:13:09 BST) crypto/openssl: update generated files to match 3.5.9 release content A new manpage has been added and some source files have been refactored slightly, but by and large this is just a standard "version bump" update (3.5.8 -> 3.5.9). MFC after: 1 day MFC with: b3a31d78 (cherry picked from commit be0569f12f48fe414467cf9cba8627e439ca1cd4) M crypto/openssl/exporters/libcrypto.pc M crypto/openssl/exporters/libssl.pc M crypto/openssl/exporters/openssl.pc M crypto/openssl/include/internal/param_names.h M crypto/openssl/include/openssl/core_names.h M crypto/openssl/include/openssl/opensslv.h M secure/lib/libcrypto/Makefile M secure/lib/libcrypto/man/man3/ADMISSIONS.3 M secure/lib/libcrypto/man/man3/ASN1_EXTERN_FUNCS.3 M secure/lib/libcrypto/man/man3/ASN1_INTEGER_get_int64.3 M secure/lib/libcrypto/man/man3/ASN1_INTEGER_new.3 M secure/lib/libcrypto/man/man3/ASN1_ITEM_lookup.3 M secure/lib/libcrypto/man/man3/ASN1_OBJECT_new.3 M secure/lib/libcrypto/man/man3/ASN1_STRING_TABLE_add.3 M secure/lib/libcrypto/man/man3/ASN1_STRING_length.3 M secure/lib/libcrypto/man/man3/ASN1_STRING_new.3 M secure/lib/libcrypto/man/man3/ASN1_STRING_print_ex.3 M secure/lib/libcrypto/man/man3/ASN1_TIME_set.3 M secure/lib/libcrypto/man/man3/ASN1_TYPE_get.3 M secure/lib/libcrypto/man/man3/ASN1_aux_cb.3 M secure/lib/libcrypto/man/man3/ASN1_generate_nconf.3 M secure/lib/libcrypto/man/man3/ASN1_item_d2i_bio.3 M secure/lib/libcrypto/man/man3/ASN1_item_new.3 M secure/lib/libcrypto/man/man3/ASN1_item_sign.3 M secure/lib/libcrypto/man/man3/ASYNC_WAIT_CTX_new.3 M secure/lib/libcrypto/man/man3/ASYNC_start_job.3 M secure/lib/libcrypto/man/man3/BF_encrypt.3 M secure/lib/libcrypto/man/man3/BIO_ADDR.3 M secure/lib/libcrypto/man/man3/BIO_ADDRINFO.3 M secure/lib/libcrypto/man/man3/BIO_connect.3 M secure/lib/libcrypto/man/man3/BIO_ctrl.3 M secure/lib/libcrypto/man/man3/BIO_f_base64.3 M secure/lib/libcrypto/man/man3/BIO_f_buffer.3 M secure/lib/libcrypto/man/man3/BIO_f_cipher.3 M secure/lib/libcrypto/man/man3/BIO_f_md.3 M secure/lib/libcrypto/man/man3/BIO_f_null.3 M secure/lib/libcrypto/man/man3/BIO_f_prefix.3 M secure/lib/libcrypto/man/man3/BIO_f_readbuffer.3 M secure/lib/libcrypto/man/man3/BIO_f_ssl.3 M secure/lib/libcrypto/man/man3/BIO_find_type.3 M secure/lib/libcrypto/man/man3/BIO_get_data.3 M secure/lib/libcrypto/man/man3/BIO_get_ex_new_index.3 M secure/lib/libcrypto/man/man3/BIO_get_rpoll_descriptor.3 M secure/lib/libcrypto/man/man3/BIO_meth_new.3 M secure/lib/libcrypto/man/man3/BIO_new.3 M secure/lib/libcrypto/man/man3/BIO_new_CMS.3 M secure/lib/libcrypto/man/man3/BIO_parse_hostserv.3 M secure/lib/libcrypto/man/man3/BIO_printf.3 M secure/lib/libcrypto/man/man3/BIO_push.3 M secure/lib/libcrypto/man/man3/BIO_read.3 M secure/lib/libcrypto/man/man3/BIO_s_accept.3 M secure/lib/libcrypto/man/man3/BIO_s_bio.3 M secure/lib/libcrypto/man/man3/BIO_s_connect.3 M secure/lib/libcrypto/man/man3/BIO_s_core.3 M secure/lib/libcrypto/man/man3/BIO_s_datagram.3 M secure/lib/libcrypto/man/man3/BIO_s_dgram_pair.3 M secure/lib/libcrypto/man/man3/BIO_s_fd.3 M secure/lib/libcrypto/man/man3/BIO_s_file.3 M secure/lib/libcrypto/man/man3/BIO_s_mem.3 M secure/lib/libcrypto/man/man3/BIO_s_null.3 M secure/lib/libcrypto/man/man3/BIO_s_socket.3 M secure/lib/libcrypto/man/man3/BIO_sendmmsg.3 M secure/lib/libcrypto/man/man3/BIO_set_callback.3 M secure/lib/libcrypto/man/man3/BIO_set_flags.3 M secure/lib/libcrypto/man/man3/BIO_should_retry.3 M secure/lib/libcrypto/man/man3/BIO_socket_wait.3 M secure/lib/libcrypto/man/man3/BN_BLINDING_new.3 M secure/lib/libcrypto/man/man3/BN_CTX_new.3 M secure/lib/libcrypto/man/man3/BN_CTX_start.3 M secure/lib/libcrypto/man/man3/BN_add.3 M secure/lib/libcrypto/man/man3/BN_add_word.3 M secure/lib/libcrypto/man/man3/BN_bn2bin.3 M secure/lib/libcrypto/man/man3/BN_cmp.3 M secure/lib/libcrypto/man/man3/BN_copy.3 M secure/lib/libcrypto/man/man3/BN_generate_prime.3 M secure/lib/libcrypto/man/man3/BN_mod_exp_mont.3 M secure/lib/libcrypto/man/man3/BN_mod_inverse.3 M secure/lib/libcrypto/man/man3/BN_mod_mul_montgomery.3 M secure/lib/libcrypto/man/man3/BN_mod_mul_reciprocal.3 M secure/lib/libcrypto/man/man3/BN_new.3 M secure/lib/libcrypto/man/man3/BN_num_bytes.3 M secure/lib/libcrypto/man/man3/BN_rand.3 M secure/lib/libcrypto/man/man3/BN_security_bits.3 M secure/lib/libcrypto/man/man3/BN_set_bit.3 M secure/lib/libcrypto/man/man3/BN_swap.3 M secure/lib/libcrypto/man/man3/BN_zero.3 M secure/lib/libcrypto/man/man3/BUF_MEM_new.3 M secure/lib/libcrypto/man/man3/CMAC_CTX.3 M secure/lib/libcrypto/man/man3/CMS_EncryptedData_decrypt.3 M secure/lib/libcrypto/man/man3/CMS_EncryptedData_encrypt.3 M secure/lib/libcrypto/man/man3/CMS_EncryptedData_set1_key.3 M secure/lib/libcrypto/man/man3/CMS_EnvelopedData_create.3 M secure/lib/libcrypto/man/man3/CMS_add0_cert.3 M secure/lib/libcrypto/man/man3/CMS_add1_recipient_cert.3 M secure/lib/libcrypto/man/man3/CMS_add1_signer.3 M secure/lib/libcrypto/man/man3/CMS_compress.3 M secure/lib/libcrypto/man/man3/CMS_data_create.3 M secure/lib/libcrypto/man/man3/CMS_decrypt.3 M secure/lib/libcrypto/man/man3/CMS_digest_create.3 M secure/lib/libcrypto/man/man3/CMS_encrypt.3 M secure/lib/libcrypto/man/man3/CMS_final.3 M secure/lib/libcrypto/man/man3/CMS_get0_RecipientInfos.3 M secure/lib/libcrypto/man/man3/CMS_get0_SignerInfos.3 M secure/lib/libcrypto/man/man3/CMS_get0_type.3 M secure/lib/libcrypto/man/man3/CMS_get1_ReceiptRequest.3 M secure/lib/libcrypto/man/man3/CMS_sign.3 M secure/lib/libcrypto/man/man3/CMS_sign_receipt.3 M secure/lib/libcrypto/man/man3/CMS_signed_get_attr.3 M secure/lib/libcrypto/man/man3/CMS_uncompress.3 M secure/lib/libcrypto/man/man3/CMS_verify.3 M secure/lib/libcrypto/man/man3/CMS_verify_receipt.3 M secure/lib/libcrypto/man/man3/COMP_CTX_new.3 M secure/lib/libcrypto/man/man3/CONF_modules_free.3 M secure/lib/libcrypto/man/man3/CONF_modules_load_file.3 M secure/lib/libcrypto/man/man3/CRYPTO_THREAD_run_once.3 M secure/lib/libcrypto/man/man3/CRYPTO_get_ex_new_index.3 M secure/lib/libcrypto/man/man3/CRYPTO_memcmp.3 M secure/lib/libcrypto/man/man3/CTLOG_STORE_get0_log_by_id.3 M secure/lib/libcrypto/man/man3/CTLOG_STORE_new.3 M secure/lib/libcrypto/man/man3/CTLOG_new.3 M secure/lib/libcrypto/man/man3/CT_POLICY_EVAL_CTX_new.3 M secure/lib/libcrypto/man/man3/DEFINE_STACK_OF.3 M secure/lib/libcrypto/man/man3/DES_random_key.3 M secure/lib/libcrypto/man/man3/DH_generate_key.3 M secure/lib/libcrypto/man/man3/DH_generate_parameters.3 M secure/lib/libcrypto/man/man3/DH_get0_pqg.3 M secure/lib/libcrypto/man/man3/DH_get_1024_160.3 M secure/lib/libcrypto/man/man3/DH_meth_new.3 M secure/lib/libcrypto/man/man3/DH_new.3 M secure/lib/libcrypto/man/man3/DH_new_by_nid.3 M secure/lib/libcrypto/man/man3/DH_set_method.3 M secure/lib/libcrypto/man/man3/DH_size.3 M secure/lib/libcrypto/man/man3/DSA_SIG_new.3 M secure/lib/libcrypto/man/man3/DSA_do_sign.3 M secure/lib/libcrypto/man/man3/DSA_dup_DH.3 M secure/lib/libcrypto/man/man3/DSA_generate_key.3 M secure/lib/libcrypto/man/man3/DSA_generate_parameters.3 M secure/lib/libcrypto/man/man3/DSA_get0_pqg.3 M secure/lib/libcrypto/man/man3/DSA_meth_new.3 M secure/lib/libcrypto/man/man3/DSA_new.3 M secure/lib/libcrypto/man/man3/DSA_set_method.3 M secure/lib/libcrypto/man/man3/DSA_sign.3 M secure/lib/libcrypto/man/man3/DSA_size.3 M secure/lib/libcrypto/man/man3/DTLS_get_data_mtu.3 M secure/lib/libcrypto/man/man3/DTLS_set_timer_cb.3 M secure/lib/libcrypto/man/man3/DTLSv1_get_timeout.3 M secure/lib/libcrypto/man/man3/DTLSv1_handle_timeout.3 M secure/lib/libcrypto/man/man3/DTLSv1_listen.3 M secure/lib/libcrypto/man/man3/ECDSA_SIG_new.3 M secure/lib/libcrypto/man/man3/ECDSA_sign.3 M secure/lib/libcrypto/man/man3/ECPKParameters_print.3 M secure/lib/libcrypto/man/man3/EC_GFp_simple_method.3 M secure/lib/libcrypto/man/man3/EC_GROUP_copy.3 M secure/lib/libcrypto/man/man3/EC_GROUP_new.3 M secure/lib/libcrypto/man/man3/EC_KEY_get_enc_flags.3 M secure/lib/libcrypto/man/man3/EC_KEY_new.3 M secure/lib/libcrypto/man/man3/EC_POINT_add.3 M secure/lib/libcrypto/man/man3/EC_POINT_new.3 M secure/lib/libcrypto/man/man3/ENGINE_add.3 M secure/lib/libcrypto/man/man3/ERR_GET_LIB.3 M secure/lib/libcrypto/man/man3/ERR_clear_error.3 M secure/lib/libcrypto/man/man3/ERR_error_string.3 M secure/lib/libcrypto/man/man3/ERR_get_error.3 M secure/lib/libcrypto/man/man3/ERR_load_crypto_strings.3 M secure/lib/libcrypto/man/man3/ERR_load_strings.3 M secure/lib/libcrypto/man/man3/ERR_new.3 M secure/lib/libcrypto/man/man3/ERR_print_errors.3 M secure/lib/libcrypto/man/man3/ERR_put_error.3 M secure/lib/libcrypto/man/man3/ERR_remove_state.3 M secure/lib/libcrypto/man/man3/ERR_set_mark.3 M secure/lib/libcrypto/man/man3/EVP_ASYM_CIPHER_free.3 M secure/lib/libcrypto/man/man3/EVP_BytesToKey.3 M secure/lib/libcrypto/man/man3/EVP_CIPHER_CTX_get_app_data.3 M secure/lib/libcrypto/man/man3/EVP_CIPHER_CTX_get_cipher_data.3 M secure/lib/libcrypto/man/man3/EVP_CIPHER_CTX_get_original_iv.3 M secure/lib/libcrypto/man/man3/EVP_CIPHER_meth_new.3 M secure/lib/libcrypto/man/man3/EVP_DigestInit.3 M secure/lib/libcrypto/man/man3/EVP_DigestSignInit.3 M secure/lib/libcrypto/man/man3/EVP_DigestVerifyInit.3 M secure/lib/libcrypto/man/man3/EVP_EncodeInit.3 M secure/lib/libcrypto/man/man3/EVP_EncryptInit.3 M secure/lib/libcrypto/man/man3/EVP_KDF.3 M secure/lib/libcrypto/man/man3/EVP_KEM_free.3 M secure/lib/libcrypto/man/man3/EVP_KEYEXCH_free.3 M secure/lib/libcrypto/man/man3/EVP_KEYMGMT.3 M secure/lib/libcrypto/man/man3/EVP_MAC.3 M secure/lib/libcrypto/man/man3/EVP_MD_meth_new.3 M secure/lib/libcrypto/man/man3/EVP_OpenInit.3 M secure/lib/libcrypto/man/man3/EVP_PBE_CipherInit.3 M secure/lib/libcrypto/man/man3/EVP_PKEY2PKCS8.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_ASN1_METHOD.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_ctrl.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_get0_libctx.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_get0_pkey.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_get_algor.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_new.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set1_pbe_pass.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_hkdf_md.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_params.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_scrypt_N.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_tls1_prf_md.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_asn1_get_count.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_check.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_copy_parameters.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_decapsulate.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_decrypt.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_derive.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_digestsign_supports_digest.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_encapsulate.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_encrypt.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_fromdata.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_attr.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_default_digest_nid.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_field_type.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_group_name.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_size.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_gettable_params.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_is_a.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_keygen.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_meth_get_count.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_meth_new.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_new.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_print_private.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_set1_RSA.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_set1_encoded_public_key.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_set_type.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_settable_params.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_sign.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_todata.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_verify.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_verify_recover.3 M secure/lib/libcrypto/man/man3/EVP_RAND.3 M secure/lib/libcrypto/man/man3/EVP_SIGNATURE.3 M secure/lib/libcrypto/man/man3/EVP_SKEY.3 M secure/lib/libcrypto/man/man3/EVP_SKEYMGMT.3 M secure/lib/libcrypto/man/man3/EVP_SealInit.3 M secure/lib/libcrypto/man/man3/EVP_SignInit.3 M secure/lib/libcrypto/man/man3/EVP_VerifyInit.3 M secure/lib/libcrypto/man/man3/EVP_aes_128_gcm.3 M secure/lib/libcrypto/man/man3/EVP_aria_128_gcm.3 M secure/lib/libcrypto/man/man3/EVP_bf_cbc.3 M secure/lib/libcrypto/man/man3/EVP_blake2b512.3 M secure/lib/libcrypto/man/man3/EVP_camellia_128_ecb.3 M secure/lib/libcrypto/man/man3/EVP_cast5_cbc.3 M secure/lib/libcrypto/man/man3/EVP_chacha20.3 M secure/lib/libcrypto/man/man3/EVP_des_cbc.3 M secure/lib/libcrypto/man/man3/EVP_desx_cbc.3 M secure/lib/libcrypto/man/man3/EVP_idea_cbc.3 M secure/lib/libcrypto/man/man3/EVP_md2.3 M secure/lib/libcrypto/man/man3/EVP_md4.3 M secure/lib/libcrypto/man/man3/EVP_md5.3 M secure/lib/libcrypto/man/man3/EVP_mdc2.3 M secure/lib/libcrypto/man/man3/EVP_rc2_cbc.3 M secure/lib/libcrypto/man/man3/EVP_rc4.3 M secure/lib/libcrypto/man/man3/EVP_rc5_32_12_16_cbc.3 M secure/lib/libcrypto/man/man3/EVP_ripemd160.3 M secure/lib/libcrypto/man/man3/EVP_seed_cbc.3 M secure/lib/libcrypto/man/man3/EVP_set_default_properties.3 M secure/lib/libcrypto/man/man3/EVP_sha1.3 M secure/lib/libcrypto/man/man3/EVP_sha224.3 M secure/lib/libcrypto/man/man3/EVP_sha3_224.3 M secure/lib/libcrypto/man/man3/EVP_sm3.3 M secure/lib/libcrypto/man/man3/EVP_sm4_cbc.3 M secure/lib/libcrypto/man/man3/EVP_whirlpool.3 M secure/lib/libcrypto/man/man3/GENERAL_NAME.3 M secure/lib/libcrypto/man/man3/HMAC.3 M secure/lib/libcrypto/man/man3/MD5.3 M secure/lib/libcrypto/man/man3/MDC2_Init.3 M secure/lib/libcrypto/man/man3/Makefile M secure/lib/libcrypto/man/man3/NAME_CONSTRAINTS_check.3 M secure/lib/libcrypto/man/man3/NCONF_new_ex.3 M secure/lib/libcrypto/man/man3/OBJ_nid2obj.3 M secure/lib/libcrypto/man/man3/OCSP_REQUEST_new.3 M secure/lib/libcrypto/man/man3/OCSP_cert_to_id.3 M secure/lib/libcrypto/man/man3/OCSP_request_add1_nonce.3 M secure/lib/libcrypto/man/man3/OCSP_resp_find_status.3 M secure/lib/libcrypto/man/man3/OCSP_response_status.3 M secure/lib/libcrypto/man/man3/OCSP_sendreq_new.3 M secure/lib/libcrypto/man/man3/OPENSSL_Applink.3 M secure/lib/libcrypto/man/man3/OPENSSL_FILE.3 M secure/lib/libcrypto/man/man3/OPENSSL_LH_COMPFUNC.3 M secure/lib/libcrypto/man/man3/OPENSSL_LH_stats.3 M secure/lib/libcrypto/man/man3/OPENSSL_armcap.3 M secure/lib/libcrypto/man/man3/OPENSSL_config.3 M secure/lib/libcrypto/man/man3/OPENSSL_fork_prepare.3 M secure/lib/libcrypto/man/man3/OPENSSL_gmtime.3 M secure/lib/libcrypto/man/man3/OPENSSL_hexchar2int.3 M secure/lib/libcrypto/man/man3/OPENSSL_ia32cap.3 M secure/lib/libcrypto/man/man3/OPENSSL_init_crypto.3 M secure/lib/libcrypto/man/man3/OPENSSL_init_ssl.3 M secure/lib/libcrypto/man/man3/OPENSSL_instrument_bus.3 M secure/lib/libcrypto/man/man3/OPENSSL_load_builtin_modules.3 M secure/lib/libcrypto/man/man3/OPENSSL_load_u16_le.3 M secure/lib/libcrypto/man/man3/OPENSSL_malloc.3 M secure/lib/libcrypto/man/man3/OPENSSL_ppccap.3 M secure/lib/libcrypto/man/man3/OPENSSL_riscvcap.3 M secure/lib/libcrypto/man/man3/OPENSSL_s390xcap.3 M secure/lib/libcrypto/man/man3/OPENSSL_secure_malloc.3 M secure/lib/libcrypto/man/man3/OPENSSL_strcasecmp.3 M secure/lib/libcrypto/man/man3/OSSL_ALGORITHM.3 M secure/lib/libcrypto/man/man3/OSSL_CALLBACK.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_ATAV_set0.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_CTX_new.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_HDR_get0_transactionID.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_ITAV_new_caCerts.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_ITAV_set0.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_MSG_get0_header.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_MSG_http_perform.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_SRV_CTX_new.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_STATUSINFO_new.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_exec_certreq.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_log_open.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_validate_msg.3 M secure/lib/libcrypto/man/man3/OSSL_CORE_MAKE_FUNC.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_MSG_get0_tmpl.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_MSG_set0_validity.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_pbmp_new.3 M secure/lib/libcrypto/man/man3/OSSL_DECODER.3 M secure/lib/libcrypto/man/man3/OSSL_DECODER_CTX.3 M secure/lib/libcrypto/man/man3/OSSL_DECODER_CTX_new_for_pkey.3 M secure/lib/libcrypto/man/man3/OSSL_DECODER_from_bio.3 M secure/lib/libcrypto/man/man3/OSSL_DISPATCH.3 M secure/lib/libcrypto/man/man3/OSSL_ENCODER.3 M secure/lib/libcrypto/man/man3/OSSL_ENCODER_CTX.3 M secure/lib/libcrypto/man/man3/OSSL_ENCODER_CTX_new_for_pkey.3 M secure/lib/libcrypto/man/man3/OSSL_ENCODER_to_bio.3 M secure/lib/libcrypto/man/man3/OSSL_ERR_STATE_save.3 M secure/lib/libcrypto/man/man3/OSSL_ESS_check_signing_certs.3 M secure/lib/libcrypto/man/man3/OSSL_GENERAL_NAMES_print.3 M secure/lib/libcrypto/man/man3/OSSL_HPKE_CTX_new.3 M secure/lib/libcrypto/man/man3/OSSL_HTTP_REQ_CTX.3 M secure/lib/libcrypto/man/man3/OSSL_HTTP_parse_url.3 M secure/lib/libcrypto/man/man3/OSSL_HTTP_transfer.3 M secure/lib/libcrypto/man/man3/OSSL_IETF_ATTR_SYNTAX.3 M secure/lib/libcrypto/man/man3/OSSL_IETF_ATTR_SYNTAX_print.3 M secure/lib/libcrypto/man/man3/OSSL_INDICATOR_set_callback.3 M secure/lib/libcrypto/man/man3/OSSL_ITEM.3 M secure/lib/libcrypto/man/man3/OSSL_LIB_CTX.3 M secure/lib/libcrypto/man/man3/OSSL_LIB_CTX_set_conf_diagnostics.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_BLD.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_allocate_from_text.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_dup.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_int.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_print_to_bio.3 M secure/lib/libcrypto/man/man3/OSSL_PROVIDER.3 M secure/lib/libcrypto/man/man3/OSSL_QUIC_client_method.3 M secure/lib/libcrypto/man/man3/OSSL_SELF_TEST_new.3 M secure/lib/libcrypto/man/man3/OSSL_SELF_TEST_set_callback.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_INFO.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_LOADER.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_SEARCH.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_attach.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_expect.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_open.3 M secure/lib/libcrypto/man/man3/OSSL_sleep.3 M secure/lib/libcrypto/man/man3/OSSL_trace_enabled.3 M secure/lib/libcrypto/man/man3/OSSL_trace_get_category_num.3 M secure/lib/libcrypto/man/man3/OSSL_trace_set_channel.3 M secure/lib/libcrypto/man/man3/OpenSSL_add_all_algorithms.3 M secure/lib/libcrypto/man/man3/OpenSSL_version.3 M secure/lib/libcrypto/man/man3/PBMAC1_get1_pbkdf2_param.3 M secure/lib/libcrypto/man/man3/PEM_X509_INFO_read_bio_ex.3 M secure/lib/libcrypto/man/man3/PEM_bytes_read_bio.3 M secure/lib/libcrypto/man/man3/PEM_read.3 M secure/lib/libcrypto/man/man3/PEM_read_CMS.3 M secure/lib/libcrypto/man/man3/PEM_read_bio_PrivateKey.3 M secure/lib/libcrypto/man/man3/PEM_read_bio_ex.3 M secure/lib/libcrypto/man/man3/PEM_write_bio_CMS_stream.3 M secure/lib/libcrypto/man/man3/PEM_write_bio_PKCS7_stream.3 M secure/lib/libcrypto/man/man3/PKCS12_PBE_keyivgen.3 M secure/lib/libcrypto/man/man3/PKCS12_SAFEBAG_create_cert.3 M secure/lib/libcrypto/man/man3/PKCS12_SAFEBAG_get0_attrs.3 M secure/lib/libcrypto/man/man3/PKCS12_SAFEBAG_get1_cert.3 M secure/lib/libcrypto/man/man3/PKCS12_SAFEBAG_set0_attrs.3 M secure/lib/libcrypto/man/man3/PKCS12_add1_attr_by_NID.3 M secure/lib/libcrypto/man/man3/PKCS12_add_CSPName_asc.3 M secure/lib/libcrypto/man/man3/PKCS12_add_cert.3 M secure/lib/libcrypto/man/man3/PKCS12_add_friendlyname_asc.3 M secure/lib/libcrypto/man/man3/PKCS12_add_localkeyid.3 M secure/lib/libcrypto/man/man3/PKCS12_add_safe.3 M secure/lib/libcrypto/man/man3/PKCS12_create.3 M secure/lib/libcrypto/man/man3/PKCS12_decrypt_skey.3 M secure/lib/libcrypto/man/man3/PKCS12_gen_mac.3 M secure/lib/libcrypto/man/man3/PKCS12_get_friendlyname.3 M secure/lib/libcrypto/man/man3/PKCS12_init.3 M secure/lib/libcrypto/man/man3/PKCS12_item_decrypt_d2i.3 M secure/lib/libcrypto/man/man3/PKCS12_key_gen_utf8_ex.3 M secure/lib/libcrypto/man/man3/PKCS12_newpass.3 M secure/lib/libcrypto/man/man3/PKCS12_pack_p7encdata.3 M secure/lib/libcrypto/man/man3/PKCS12_parse.3 M secure/lib/libcrypto/man/man3/PKCS5_PBE_keyivgen.3 M secure/lib/libcrypto/man/man3/PKCS5_PBKDF2_HMAC.3 M secure/lib/libcrypto/man/man3/PKCS7_decrypt.3 M secure/lib/libcrypto/man/man3/PKCS7_encrypt.3 M secure/lib/libcrypto/man/man3/PKCS7_get_octet_string.3 M secure/lib/libcrypto/man/man3/PKCS7_sign.3 M secure/lib/libcrypto/man/man3/PKCS7_sign_add_signer.3 M secure/lib/libcrypto/man/man3/PKCS7_type_is_other.3 M secure/lib/libcrypto/man/man3/PKCS7_verify.3 M secure/lib/libcrypto/man/man3/PKCS8_encrypt.3 M secure/lib/libcrypto/man/man3/PKCS8_pkey_add1_attr.3 M secure/lib/libcrypto/man/man3/RAND_add.3 M secure/lib/libcrypto/man/man3/RAND_bytes.3 M secure/lib/libcrypto/man/man3/RAND_cleanup.3 M secure/lib/libcrypto/man/man3/RAND_egd.3 M secure/lib/libcrypto/man/man3/RAND_get0_primary.3 M secure/lib/libcrypto/man/man3/RAND_load_file.3 M secure/lib/libcrypto/man/man3/RAND_set_DRBG_type.3 M secure/lib/libcrypto/man/man3/RAND_set_rand_method.3 M secure/lib/libcrypto/man/man3/RC4_set_key.3 M secure/lib/libcrypto/man/man3/RIPEMD160_Init.3 M secure/lib/libcrypto/man/man3/RSA_blinding_on.3 M secure/lib/libcrypto/man/man3/RSA_check_key.3 M secure/lib/libcrypto/man/man3/RSA_generate_key.3 M secure/lib/libcrypto/man/man3/RSA_get0_key.3 M secure/lib/libcrypto/man/man3/RSA_meth_new.3 M secure/lib/libcrypto/man/man3/RSA_new.3 M secure/lib/libcrypto/man/man3/RSA_padding_add_PKCS1_type_1.3 M secure/lib/libcrypto/man/man3/RSA_print.3 M secure/lib/libcrypto/man/man3/RSA_private_encrypt.3 M secure/lib/libcrypto/man/man3/RSA_public_encrypt.3 M secure/lib/libcrypto/man/man3/RSA_set_method.3 M secure/lib/libcrypto/man/man3/RSA_sign.3 M secure/lib/libcrypto/man/man3/RSA_sign_ASN1_OCTET_STRING.3 M secure/lib/libcrypto/man/man3/RSA_size.3 M secure/lib/libcrypto/man/man3/SCT_new.3 M secure/lib/libcrypto/man/man3/SCT_print.3 M secure/lib/libcrypto/man/man3/SCT_validate.3 M secure/lib/libcrypto/man/man3/SHA256_Init.3 M secure/lib/libcrypto/man/man3/SMIME_read_ASN1.3 M secure/lib/libcrypto/man/man3/SMIME_read_CMS.3 M secure/lib/libcrypto/man/man3/SMIME_read_PKCS7.3 M secure/lib/libcrypto/man/man3/SMIME_write_ASN1.3 M secure/lib/libcrypto/man/man3/SMIME_write_CMS.3 M secure/lib/libcrypto/man/man3/SMIME_write_PKCS7.3 M secure/lib/libcrypto/man/man3/SRP_Calc_B.3 M secure/lib/libcrypto/man/man3/SRP_VBASE_new.3 M secure/lib/libcrypto/man/man3/SRP_create_verifier.3 M secure/lib/libcrypto/man/man3/SRP_user_pwd_new.3 M secure/lib/libcrypto/man/man3/SSL_CIPHER_get_name.3 M secure/lib/libcrypto/man/man3/SSL_COMP_add_compression_method.3 M secure/lib/libcrypto/man/man3/SSL_CONF_CTX_new.3 M secure/lib/libcrypto/man/man3/SSL_CONF_CTX_set1_prefix.3 M secure/lib/libcrypto/man/man3/SSL_CONF_CTX_set_flags.3 M secure/lib/libcrypto/man/man3/SSL_CONF_CTX_set_ssl_ctx.3 M secure/lib/libcrypto/man/man3/SSL_CONF_cmd.3 M secure/lib/libcrypto/man/man3/SSL_CONF_cmd_argv.3 M secure/lib/libcrypto/man/man3/SSL_CTX_add1_chain_cert.3 M secure/lib/libcrypto/man/man3/SSL_CTX_add_extra_chain_cert.3 M secure/lib/libcrypto/man/man3/SSL_CTX_add_session.3 M secure/lib/libcrypto/man/man3/SSL_CTX_config.3 M secure/lib/libcrypto/man/man3/SSL_CTX_ctrl.3 M secure/lib/libcrypto/man/man3/SSL_CTX_dane_enable.3 M secure/lib/libcrypto/man/man3/SSL_CTX_flush_sessions.3 M secure/lib/libcrypto/man/man3/SSL_CTX_free.3 M secure/lib/libcrypto/man/man3/SSL_CTX_get0_param.3 M secure/lib/libcrypto/man/man3/SSL_CTX_get_verify_mode.3 M secure/lib/libcrypto/man/man3/SSL_CTX_has_client_custom_ext.3 M secure/lib/libcrypto/man/man3/SSL_CTX_load_verify_locations.3 M secure/lib/libcrypto/man/man3/SSL_CTX_new.3 M secure/lib/libcrypto/man/man3/SSL_CTX_sess_number.3 M secure/lib/libcrypto/man/man3/SSL_CTX_sess_set_cache_size.3 M secure/lib/libcrypto/man/man3/SSL_CTX_sess_set_get_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_sessions.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set0_CA_list.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set1_cert_comp_preference.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set1_curves.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set1_sigalgs.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set1_verify_cert_store.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_alpn_select_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_cert_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_cert_store.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_cert_verify_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_cipher_list.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_client_cert_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_client_hello_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_ct_validation_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_ctlog_list_file.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_default_passwd_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_domain_flags.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_generate_session_id.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_info_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_keylog_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_max_cert_list.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_min_proto_version.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_mode.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_msg_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_new_pending_conn_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_num_tickets.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_options.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_psk_client_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_quiet_shutdown.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_read_ahead.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_record_padding_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_security_level.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_session_cache_mode.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_session_id_context.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_session_ticket_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_split_send_fragment.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_srp_password.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_ssl_version.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_stateless_cookie_generate_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_timeout.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_servername_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_status_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_ticket_key_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_use_srtp.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tmp_dh_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tmp_ecdh.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_verify.3 M secure/lib/libcrypto/man/man3/SSL_CTX_use_certificate.3 M secure/lib/libcrypto/man/man3/SSL_CTX_use_psk_identity_hint.3 M secure/lib/libcrypto/man/man3/SSL_CTX_use_serverinfo.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_free.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get0_cipher.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get0_hostname.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get0_id_context.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get0_peer.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get_compress_id.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get_protocol_version.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get_time.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_has_ticket.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_is_resumable.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_print.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_set1_id.3 M secure/lib/libcrypto/man/man3/SSL_accept.3 M secure/lib/libcrypto/man/man3/SSL_accept_stream.3 M secure/lib/libcrypto/man/man3/SSL_alert_type_string.3 M secure/lib/libcrypto/man/man3/SSL_alloc_buffers.3 M secure/lib/libcrypto/man/man3/SSL_check_chain.3 M secure/lib/libcrypto/man/man3/SSL_clear.3 M secure/lib/libcrypto/man/man3/SSL_connect.3 M secure/lib/libcrypto/man/man3/SSL_do_handshake.3 M secure/lib/libcrypto/man/man3/SSL_export_keying_material.3 M secure/lib/libcrypto/man/man3/SSL_extension_supported.3 M secure/lib/libcrypto/man/man3/SSL_free.3 M secure/lib/libcrypto/man/man3/SSL_get0_connection.3 M secure/lib/libcrypto/man/man3/SSL_get0_group_name.3 M secure/lib/libcrypto/man/man3/SSL_get0_peer_rpk.3 M secure/lib/libcrypto/man/man3/SSL_get0_peer_scts.3 M secure/lib/libcrypto/man/man3/SSL_get1_builtin_sigalgs.3 M secure/lib/libcrypto/man/man3/SSL_get_SSL_CTX.3 M secure/lib/libcrypto/man/man3/SSL_get_all_async_fds.3 M secure/lib/libcrypto/man/man3/SSL_get_certificate.3 M secure/lib/libcrypto/man/man3/SSL_get_ciphers.3 M secure/lib/libcrypto/man/man3/SSL_get_client_random.3 M secure/lib/libcrypto/man/man3/SSL_get_conn_close_info.3 M secure/lib/libcrypto/man/man3/SSL_get_current_cipher.3 M secure/lib/libcrypto/man/man3/SSL_get_default_timeout.3 M secure/lib/libcrypto/man/man3/SSL_get_error.3 M secure/lib/libcrypto/man/man3/SSL_get_event_timeout.3 M secure/lib/libcrypto/man/man3/SSL_get_extms_support.3 M secure/lib/libcrypto/man/man3/SSL_get_fd.3 M secure/lib/libcrypto/man/man3/SSL_get_handshake_rtt.3 M secure/lib/libcrypto/man/man3/SSL_get_peer_cert_chain.3 M secure/lib/libcrypto/man/man3/SSL_get_peer_certificate.3 M secure/lib/libcrypto/man/man3/SSL_get_peer_signature_nid.3 M secure/lib/libcrypto/man/man3/SSL_get_peer_tmp_key.3 M secure/lib/libcrypto/man/man3/SSL_get_psk_identity.3 M secure/lib/libcrypto/man/man3/SSL_get_rbio.3 M secure/lib/libcrypto/man/man3/SSL_get_rpoll_descriptor.3 M secure/lib/libcrypto/man/man3/SSL_get_session.3 M secure/lib/libcrypto/man/man3/SSL_get_shared_sigalgs.3 M secure/lib/libcrypto/man/man3/SSL_get_stream_id.3 M secure/lib/libcrypto/man/man3/SSL_get_stream_read_state.3 M secure/lib/libcrypto/man/man3/SSL_get_value_uint.3 M secure/lib/libcrypto/man/man3/SSL_get_verify_result.3 M secure/lib/libcrypto/man/man3/SSL_get_version.3 M secure/lib/libcrypto/man/man3/SSL_group_to_name.3 M secure/lib/libcrypto/man/man3/SSL_handle_events.3 M secure/lib/libcrypto/man/man3/SSL_in_init.3 M secure/lib/libcrypto/man/man3/SSL_inject_net_dgram.3 M secure/lib/libcrypto/man/man3/SSL_key_update.3 M secure/lib/libcrypto/man/man3/SSL_library_init.3 M secure/lib/libcrypto/man/man3/SSL_load_client_CA_file.3 M secure/lib/libcrypto/man/man3/SSL_new.3 M secure/lib/libcrypto/man/man3/SSL_new_domain.3 M secure/lib/libcrypto/man/man3/SSL_new_listener.3 M secure/lib/libcrypto/man/man3/SSL_new_stream.3 M secure/lib/libcrypto/man/man3/SSL_pending.3 M secure/lib/libcrypto/man/man3/SSL_poll.3 M secure/lib/libcrypto/man/man3/SSL_read.3 M secure/lib/libcrypto/man/man3/SSL_read_early_data.3 M secure/lib/libcrypto/man/man3/SSL_rstate_string.3 M secure/lib/libcrypto/man/man3/SSL_session_reused.3 M secure/lib/libcrypto/man/man3/SSL_set1_host.3 M secure/lib/libcrypto/man/man3/SSL_set1_initial_peer_addr.3 M secure/lib/libcrypto/man/man3/SSL_set1_server_cert_type.3 M secure/lib/libcrypto/man/man3/SSL_set_async_callback.3 M secure/lib/libcrypto/man/man3/SSL_set_bio.3 M secure/lib/libcrypto/man/man3/SSL_set_blocking_mode.3 M secure/lib/libcrypto/man/man3/SSL_set_connect_state.3 M secure/lib/libcrypto/man/man3/SSL_set_default_stream_mode.3 M secure/lib/libcrypto/man/man3/SSL_set_fd.3 M secure/lib/libcrypto/man/man3/SSL_set_incoming_stream_policy.3 M secure/lib/libcrypto/man/man3/SSL_set_quic_tls_cbs.3 M secure/lib/libcrypto/man/man3/SSL_set_retry_verify.3 M secure/lib/libcrypto/man/man3/SSL_set_session.3 M secure/lib/libcrypto/man/man3/SSL_set_session_secret_cb.3 M secure/lib/libcrypto/man/man3/SSL_set_shutdown.3 M secure/lib/libcrypto/man/man3/SSL_set_verify_result.3 M secure/lib/libcrypto/man/man3/SSL_shutdown.3 M secure/lib/libcrypto/man/man3/SSL_state_string.3 M secure/lib/libcrypto/man/man3/SSL_stream_conclude.3 M secure/lib/libcrypto/man/man3/SSL_stream_reset.3 M secure/lib/libcrypto/man/man3/SSL_want.3 M secure/lib/libcrypto/man/man3/SSL_write.3 M secure/lib/libcrypto/man/man3/TS_RESP_CTX_new.3 M secure/lib/libcrypto/man/man3/TS_VERIFY_CTX.3 M secure/lib/libcrypto/man/man3/UI_STRING.3 M secure/lib/libcrypto/man/man3/UI_UTIL_read_pw.3 M secure/lib/libcrypto/man/man3/UI_create_method.3 M secure/lib/libcrypto/man/man3/UI_new.3 A secure/lib/libcrypto/man/man3/X509V3_EXT_nconf_nid.3 M secure/lib/libcrypto/man/man3/X509V3_EXT_print.3 M secure/lib/libcrypto/man/man3/X509V3_get_d2i.3 M secure/lib/libcrypto/man/man3/X509V3_set_ctx.3 M secure/lib/libcrypto/man/man3/X509_ACERT_add1_attr.3 M secure/lib/libcrypto/man/man3/X509_ACERT_add_attr_nconf.3 M secure/lib/libcrypto/man/man3/X509_ACERT_get0_holder_baseCertId.3 M secure/lib/libcrypto/man/man3/X509_ACERT_get_attr.3 M secure/lib/libcrypto/man/man3/X509_ACERT_print_ex.3 M secure/lib/libcrypto/man/man3/X509_ALGOR_dup.3 M secure/lib/libcrypto/man/man3/X509_ATTRIBUTE.3 M secure/lib/libcrypto/man/man3/X509_CRL_get0_by_serial.3 M secure/lib/libcrypto/man/man3/X509_EXTENSION_set_object.3 M secure/lib/libcrypto/man/man3/X509_LOOKUP.3 M secure/lib/libcrypto/man/man3/X509_LOOKUP_hash_dir.3 M secure/lib/libcrypto/man/man3/X509_LOOKUP_meth_new.3 M secure/lib/libcrypto/man/man3/X509_NAME_ENTRY_get_object.3 M secure/lib/libcrypto/man/man3/X509_NAME_add_entry_by_txt.3 M secure/lib/libcrypto/man/man3/X509_NAME_get0_der.3 M secure/lib/libcrypto/man/man3/X509_NAME_get_index_by_NID.3 M secure/lib/libcrypto/man/man3/X509_NAME_print_ex.3 M secure/lib/libcrypto/man/man3/X509_PUBKEY_new.3 M secure/lib/libcrypto/man/man3/X509_REQ_get_attr.3 M secure/lib/libcrypto/man/man3/X509_REQ_get_extensions.3 M secure/lib/libcrypto/man/man3/X509_SIG_get0.3 M secure/lib/libcrypto/man/man3/X509_STORE_CTX_get_by_subject.3 M secure/lib/libcrypto/man/man3/X509_STORE_CTX_get_error.3 M secure/lib/libcrypto/man/man3/X509_STORE_CTX_new.3 M secure/lib/libcrypto/man/man3/X509_STORE_CTX_set_verify_cb.3 M secure/lib/libcrypto/man/man3/X509_STORE_add_cert.3 M secure/lib/libcrypto/man/man3/X509_STORE_get0_param.3 M secure/lib/libcrypto/man/man3/X509_STORE_new.3 M secure/lib/libcrypto/man/man3/X509_STORE_set_verify_cb_func.3 M secure/lib/libcrypto/man/man3/X509_VERIFY_PARAM_set_flags.3 M secure/lib/libcrypto/man/man3/X509_add_cert.3 M secure/lib/libcrypto/man/man3/X509_check_ca.3 M secure/lib/libcrypto/man/man3/X509_check_host.3 M secure/lib/libcrypto/man/man3/X509_check_issued.3 M secure/lib/libcrypto/man/man3/X509_check_private_key.3 M secure/lib/libcrypto/man/man3/X509_check_purpose.3 M secure/lib/libcrypto/man/man3/X509_cmp.3 M secure/lib/libcrypto/man/man3/X509_cmp_time.3 M secure/lib/libcrypto/man/man3/X509_digest.3 M secure/lib/libcrypto/man/man3/X509_dup.3 M secure/lib/libcrypto/man/man3/X509_get0_distinguishing_id.3 M secure/lib/libcrypto/man/man3/X509_get0_notBefore.3 M secure/lib/libcrypto/man/man3/X509_get0_signature.3 M secure/lib/libcrypto/man/man3/X509_get0_uids.3 M secure/lib/libcrypto/man/man3/X509_get_default_cert_file.3 M secure/lib/libcrypto/man/man3/X509_get_extension_flags.3 M secure/lib/libcrypto/man/man3/X509_get_pubkey.3 M secure/lib/libcrypto/man/man3/X509_get_serialNumber.3 M secure/lib/libcrypto/man/man3/X509_get_subject_name.3 M secure/lib/libcrypto/man/man3/X509_get_version.3 M secure/lib/libcrypto/man/man3/X509_load_http.3 M secure/lib/libcrypto/man/man3/X509_new.3 M secure/lib/libcrypto/man/man3/X509_sign.3 M secure/lib/libcrypto/man/man3/X509_verify.3 M secure/lib/libcrypto/man/man3/X509_verify_cert.3 M secure/lib/libcrypto/man/man3/X509v3_get_ext_by_NID.3 M secure/lib/libcrypto/man/man3/b2i_PVK_bio_ex.3 M secure/lib/libcrypto/man/man3/d2i_PKCS8PrivateKey_bio.3 M secure/lib/libcrypto/man/man3/d2i_PrivateKey.3 M secure/lib/libcrypto/man/man3/d2i_RSAPrivateKey.3 M secure/lib/libcrypto/man/man3/d2i_SSL_SESSION.3 M secure/lib/libcrypto/man/man3/d2i_X509.3 M secure/lib/libcrypto/man/man3/i2d_CMS_bio_stream.3 M secure/lib/libcrypto/man/man3/i2d_PKCS7_bio_stream.3 M secure/lib/libcrypto/man/man3/i2d_re_X509_tbs.3 M secure/lib/libcrypto/man/man3/o2i_SCT_LIST.3 M secure/lib/libcrypto/man/man3/s2i_ASN1_IA5STRING.3 M secure/lib/libcrypto/man/man5/config.5 M secure/lib/libcrypto/man/man5/fips_config.5 M secure/lib/libcrypto/man/man5/x509v3_config.5 M secure/lib/libcrypto/man/man7/EVP_ASYM_CIPHER-RSA.7 M secure/lib/libcrypto/man/man7/EVP_ASYM_CIPHER-SM2.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-AES.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-ARIA.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-BLOWFISH.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-CAMELLIA.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-CAST.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-CHACHA.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-DES.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-IDEA.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-NULL.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-RC2.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-RC4.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-RC5.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-SEED.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-SM4.7 M secure/lib/libcrypto/man/man7/EVP_KDF-ARGON2.7 M secure/lib/libcrypto/man/man7/EVP_KDF-HKDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-HMAC-DRBG.7 M secure/lib/libcrypto/man/man7/EVP_KDF-KB.7 M secure/lib/libcrypto/man/man7/EVP_KDF-KRB5KDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-PBKDF1.7 M secure/lib/libcrypto/man/man7/EVP_KDF-PBKDF2.7 M secure/lib/libcrypto/man/man7/EVP_KDF-PKCS12KDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-PVKKDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-SCRYPT.7 M secure/lib/libcrypto/man/man7/EVP_KDF-SS.7 M secure/lib/libcrypto/man/man7/EVP_KDF-SSHKDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-TLS13_KDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-TLS1_PRF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-X942-ASN1.7 M secure/lib/libcrypto/man/man7/EVP_KDF-X942-CONCAT.7 M secure/lib/libcrypto/man/man7/EVP_KDF-X963.7 M secure/lib/libcrypto/man/man7/EVP_KEM-EC.7 M secure/lib/libcrypto/man/man7/EVP_KEM-ML-KEM.7 M secure/lib/libcrypto/man/man7/EVP_KEM-RSA.7 M secure/lib/libcrypto/man/man7/EVP_KEM-X25519.7 M secure/lib/libcrypto/man/man7/EVP_KEYEXCH-DH.7 M secure/lib/libcrypto/man/man7/EVP_KEYEXCH-ECDH.7 M secure/lib/libcrypto/man/man7/EVP_KEYEXCH-X25519.7 M secure/lib/libcrypto/man/man7/EVP_MAC-BLAKE2.7 M secure/lib/libcrypto/man/man7/EVP_MAC-CMAC.7 M secure/lib/libcrypto/man/man7/EVP_MAC-GMAC.7 M secure/lib/libcrypto/man/man7/EVP_MAC-HMAC.7 M secure/lib/libcrypto/man/man7/EVP_MAC-KMAC.7 M secure/lib/libcrypto/man/man7/EVP_MAC-Poly1305.7 M secure/lib/libcrypto/man/man7/EVP_MAC-Siphash.7 M secure/lib/libcrypto/man/man7/EVP_MD-BLAKE2.7 M secure/lib/libcrypto/man/man7/EVP_MD-KECCAK.7 M secure/lib/libcrypto/man/man7/EVP_MD-MD2.7 M secure/lib/libcrypto/man/man7/EVP_MD-MD4.7 M secure/lib/libcrypto/man/man7/EVP_MD-MD5-SHA1.7 M secure/lib/libcrypto/man/man7/EVP_MD-MD5.7 M secure/lib/libcrypto/man/man7/EVP_MD-MDC2.7 M secure/lib/libcrypto/man/man7/EVP_MD-NULL.7 M secure/lib/libcrypto/man/man7/EVP_MD-RIPEMD160.7 M secure/lib/libcrypto/man/man7/EVP_MD-SHA1.7 M secure/lib/libcrypto/man/man7/EVP_MD-SHA2.7 M secure/lib/libcrypto/man/man7/EVP_MD-SHA3.7 M secure/lib/libcrypto/man/man7/EVP_MD-SHAKE.7 M secure/lib/libcrypto/man/man7/EVP_MD-SM3.7 M secure/lib/libcrypto/man/man7/EVP_MD-WHIRLPOOL.7 M secure/lib/libcrypto/man/man7/EVP_MD-common.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-DH.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-DSA.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-EC.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-FFC.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-HMAC.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-ML-DSA.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-ML-KEM.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-RSA.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-SLH-DSA.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-SM2.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-X25519.7 M secure/lib/libcrypto/man/man7/EVP_RAND-CRNG-TEST.7 M secure/lib/libcrypto/man/man7/EVP_RAND-CTR-DRBG.7 M secure/lib/libcrypto/man/man7/EVP_RAND-HASH-DRBG.7 M secure/lib/libcrypto/man/man7/EVP_RAND-HMAC-DRBG.7 M secure/lib/libcrypto/man/man7/EVP_RAND-JITTER.7 M secure/lib/libcrypto/man/man7/EVP_RAND-SEED-SRC.7 M secure/lib/libcrypto/man/man7/EVP_RAND-TEST-RAND.7 M secure/lib/libcrypto/man/man7/EVP_RAND.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-DSA.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-ECDSA.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-ED25519.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-HMAC.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-ML-DSA.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-SLH-DSA.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-FIPS.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-base.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-default.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-legacy.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-null.7 M secure/lib/libcrypto/man/man7/OSSL_STORE-winstore.7 M secure/lib/libcrypto/man/man7/RAND.7 M secure/lib/libcrypto/man/man7/RSA-PSS.7 M secure/lib/libcrypto/man/man7/X25519.7 M secure/lib/libcrypto/man/man7/bio.7 M secure/lib/libcrypto/man/man7/ct.7 M secure/lib/libcrypto/man/man7/des_modes.7 M secure/lib/libcrypto/man/man7/evp.7 M secure/lib/libcrypto/man/man7/fips_module.7 M secure/lib/libcrypto/man/man7/life_cycle-cipher.7 M secure/lib/libcrypto/man/man7/life_cycle-digest.7 M secure/lib/libcrypto/man/man7/life_cycle-kdf.7 M secure/lib/libcrypto/man/man7/life_cycle-mac.7 M secure/lib/libcrypto/man/man7/life_cycle-pkey.7 M secure/lib/libcrypto/man/man7/life_cycle-rand.7 M secure/lib/libcrypto/man/man7/openssl-core.h.7 M secure/lib/libcrypto/man/man7/openssl-core_dispatch.h.7 M secure/lib/libcrypto/man/man7/openssl-core_names.h.7 M secure/lib/libcrypto/man/man7/openssl-env.7 M secure/lib/libcrypto/man/man7/openssl-glossary.7 M secure/lib/libcrypto/man/man7/openssl-qlog.7 M secure/lib/libcrypto/man/man7/openssl-quic-concurrency.7 M secure/lib/libcrypto/man/man7/openssl-quic.7 M secure/lib/libcrypto/man/man7/openssl-threads.7 M secure/lib/libcrypto/man/man7/openssl_user_macros.7 M secure/lib/libcrypto/man/man7/ossl-guide-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-libcrypto-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-libraries-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-libssl-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-migration.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-client-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-client-non-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-multi-stream.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-server-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-server-non-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-tls-client-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-tls-client-non-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-tls-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-tls-server-block.7 M secure/lib/libcrypto/man/man7/ossl_store-file.7 M secure/lib/libcrypto/man/man7/ossl_store.7 M secure/lib/libcrypto/man/man7/passphrase-encoding.7 M secure/lib/libcrypto/man/man7/property.7 M secure/lib/libcrypto/man/man7/provider-asym_cipher.7 M secure/lib/libcrypto/man/man7/provider-base.7 M secure/lib/libcrypto/man/man7/provider-cipher.7 M secure/lib/libcrypto/man/man7/provider-decoder.7 M secure/lib/libcrypto/man/man7/provider-digest.7 M secure/lib/libcrypto/man/man7/provider-encoder.7 M secure/lib/libcrypto/man/man7/provider-kdf.7 M secure/lib/libcrypto/man/man7/provider-kem.7 M secure/lib/libcrypto/man/man7/provider-keyexch.7 M secure/lib/libcrypto/man/man7/provider-keymgmt.7 M secure/lib/libcrypto/man/man7/provider-mac.7 M secure/lib/libcrypto/man/man7/provider-object.7 M secure/lib/libcrypto/man/man7/provider-rand.7 M secure/lib/libcrypto/man/man7/provider-signature.7 M secure/lib/libcrypto/man/man7/provider-skeymgmt.7 M secure/lib/libcrypto/man/man7/provider-storemgmt.7 M secure/lib/libcrypto/man/man7/provider.7 M secure/lib/libcrypto/man/man7/proxy-certificates.7 M secure/lib/libcrypto/man/man7/x509.7 M secure/lib/libssl/Makefile M secure/usr.bin/openssl/man/CA.pl.1 M secure/usr.bin/openssl/man/openssl-asn1parse.1 M secure/usr.bin/openssl/man/openssl-ca.1 M secure/usr.bin/openssl/man/openssl-ciphers.1 M secure/usr.bin/openssl/man/openssl-cmds.1 M secure/usr.bin/openssl/man/openssl-cmp.1 M secure/usr.bin/openssl/man/openssl-cms.1 M secure/usr.bin/openssl/man/openssl-crl.1 M secure/usr.bin/openssl/man/openssl-crl2pkcs7.1 M secure/usr.bin/openssl/man/openssl-dgst.1 M secure/usr.bin/openssl/man/openssl-dhparam.1 M secure/usr.bin/openssl/man/openssl-dsa.1 M secure/usr.bin/openssl/man/openssl-dsaparam.1 M secure/usr.bin/openssl/man/openssl-ec.1 M secure/usr.bin/openssl/man/openssl-ecparam.1 M secure/usr.bin/openssl/man/openssl-enc.1 M secure/usr.bin/openssl/man/openssl-engine.1 M secure/usr.bin/openssl/man/openssl-errstr.1 M secure/usr.bin/openssl/man/openssl-fipsinstall.1 M secure/usr.bin/openssl/man/openssl-format-options.1 M secure/usr.bin/openssl/man/openssl-gendsa.1 M secure/usr.bin/openssl/man/openssl-genpkey.1 M secure/usr.bin/openssl/man/openssl-genrsa.1 M secure/usr.bin/openssl/man/openssl-info.1 M secure/usr.bin/openssl/man/openssl-kdf.1 M secure/usr.bin/openssl/man/openssl-list.1 M secure/usr.bin/openssl/man/openssl-mac.1 M secure/usr.bin/openssl/man/openssl-namedisplay-options.1 M secure/usr.bin/openssl/man/openssl-nseq.1 M secure/usr.bin/openssl/man/openssl-ocsp.1 M secure/usr.bin/openssl/man/openssl-passphrase-options.1 M secure/usr.bin/openssl/man/openssl-passwd.1 M secure/usr.bin/openssl/man/openssl-pkcs12.1 M secure/usr.bin/openssl/man/openssl-pkcs7.1 M secure/usr.bin/openssl/man/openssl-pkcs8.1 M secure/usr.bin/openssl/man/openssl-pkey.1 M secure/usr.bin/openssl/man/openssl-pkeyparam.1 M secure/usr.bin/openssl/man/openssl-pkeyutl.1 M secure/usr.bin/openssl/man/openssl-prime.1 M secure/usr.bin/openssl/man/openssl-rand.1 M secure/usr.bin/openssl/man/openssl-rehash.1 M secure/usr.bin/openssl/man/openssl-req.1 M secure/usr.bin/openssl/man/openssl-rsa.1 M secure/usr.bin/openssl/man/openssl-rsautl.1 M secure/usr.bin/openssl/man/openssl-s_client.1 M secure/usr.bin/openssl/man/openssl-s_server.1 M secure/usr.bin/openssl/man/openssl-s_time.1 M secure/usr.bin/openssl/man/openssl-sess_id.1 M secure/usr.bin/openssl/man/openssl-skeyutl.1 M secure/usr.bin/openssl/man/openssl-smime.1 M secure/usr.bin/openssl/man/openssl-speed.1 M secure/usr.bin/openssl/man/openssl-spkac.1 M secure/usr.bin/openssl/man/openssl-srp.1 M secure/usr.bin/openssl/man/openssl-storeutl.1 M secure/usr.bin/openssl/man/openssl-ts.1 M secure/usr.bin/openssl/man/openssl-verification-options.1 M secure/usr.bin/openssl/man/openssl-verify.1 M secure/usr.bin/openssl/man/openssl-version.1 M secure/usr.bin/openssl/man/openssl-x509.1 M secure/usr.bin/openssl/man/openssl.1 M secure/usr.bin/openssl/man/tsget.1 _____________________________________________________________________________________________________________ Commit: b97734d7f6d4983e54653ebca189be2fe69c8f38 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b97734d7f6d4983e54653ebca189be2fe69c8f38 Author: Enji Cooper (Wed 30 Sep 2026 18:10:27 BST) Committer: Enji Cooper (Thu 1 Oct 2026 07:13:08 BST) crypto/openssl: update to 3.5.9 This is a security fix release addressing CVE High issues. Users are strongly encouraged to update to this version. See the release notes for the release for more details on what is being fixed. MFC after: 1 day Merge commit 'af5a659dc1cd2b0a6994f2cee1956d0bf50bb1a2' (cherry picked from commit f9bc005b8ef3b507a5ecbc2d7fe4411ef70eff38) M crypto/openssl/CHANGES.md M crypto/openssl/Configurations/10-main.conf M crypto/openssl/NEWS.md M crypto/openssl/VERSION.dat M crypto/openssl/apps/ocsp.c M crypto/openssl/crypto/asn1/a_dup.c M crypto/openssl/crypto/bio/bio_addr.c M crypto/openssl/crypto/bn/bn_intern.c M crypto/openssl/crypto/build.info M crypto/openssl/crypto/cmp/cmp_client.c M crypto/openssl/crypto/cmp/cmp_server.c M crypto/openssl/crypto/comp/c_brotli.c M crypto/openssl/crypto/comp/c_zlib.c M crypto/openssl/crypto/comp/c_zstd.c M crypto/openssl/crypto/dso/dso_win32.c M crypto/openssl/crypto/ec/ec_mult.c M crypto/openssl/crypto/ec/ecp_sm2p256.c M crypto/openssl/crypto/err/err.c M crypto/openssl/crypto/evp/bio_enc.c M crypto/openssl/crypto/evp/evp_lib.c M crypto/openssl/crypto/http/http_client.c M crypto/openssl/crypto/init.c M crypto/openssl/crypto/modes/siv128.c M crypto/openssl/crypto/ocsp/ocsp_cl.c M crypto/openssl/crypto/property/property.c M crypto/openssl/crypto/provider_core.c A crypto/openssl/crypto/rbtree/build.info A crypto/openssl/crypto/rbtree/rbtree.c M crypto/openssl/crypto/sm2/sm2_sign.c M crypto/openssl/crypto/x509/v3_conf.c M crypto/openssl/crypto/x509/v3_crld.c M crypto/openssl/crypto/x509/v3_purp.c M crypto/openssl/crypto/x509/x509_vfy.c M crypto/openssl/doc/build.info M crypto/openssl/doc/designs/ML-KEM.md M crypto/openssl/doc/designs/fips_indicator.md M crypto/openssl/doc/designs/quic-design/glossary.md M crypto/openssl/doc/designs/quic-design/quic-ackm.md M crypto/openssl/doc/designs/quic-design/quic-api.md M crypto/openssl/doc/internal/man3/OPTIONS.pod M crypto/openssl/doc/internal/man7/VERSION.pod A crypto/openssl/doc/internal/man7/ossl_rbtree.pod M crypto/openssl/doc/man1/openssl-pkcs12.pod.in M crypto/openssl/doc/man3/DTLSv1_get_timeout.pod M crypto/openssl/doc/man3/EVP_EncryptInit.pod M crypto/openssl/doc/man3/EVP_PKEY_keygen.pod M crypto/openssl/doc/man3/OPENSSL_ppccap.pod M crypto/openssl/doc/man3/OSSL_CMP_SRV_CTX_new.pod M crypto/openssl/doc/man3/OSSL_CMP_exec_certreq.pod M crypto/openssl/doc/man3/OSSL_HTTP_transfer.pod M crypto/openssl/doc/man3/RAND_bytes.pod M crypto/openssl/doc/man3/SSL_CTX_set_security_level.pod M crypto/openssl/doc/man3/SSL_CTX_set_tmp_dh_callback.pod M crypto/openssl/doc/man3/SSL_in_init.pod M crypto/openssl/doc/man3/SSL_poll.pod A crypto/openssl/doc/man3/X509V3_EXT_nconf_nid.pod M crypto/openssl/doc/man3/X509_NAME_ENTRY_get_object.pod M crypto/openssl/doc/man7/EVP_CIPHER-AES.pod M crypto/openssl/doc/man7/EVP_KEM-ML-KEM.pod M crypto/openssl/doc/man7/EVP_MAC-CMAC.pod M crypto/openssl/doc/man7/EVP_MAC-GMAC.pod M crypto/openssl/doc/man7/EVP_MAC-HMAC.pod M crypto/openssl/doc/man7/EVP_MAC-Poly1305.pod M crypto/openssl/doc/man7/EVP_MD-common.pod M crypto/openssl/doc/man7/EVP_PKEY-DH.pod M crypto/openssl/doc/man7/EVP_PKEY-HMAC.pod M crypto/openssl/doc/man7/EVP_PKEY-ML-DSA.pod M crypto/openssl/doc/man7/EVP_PKEY-ML-KEM.pod M crypto/openssl/doc/man7/EVP_PKEY-RSA.pod M crypto/openssl/doc/man7/EVP_PKEY-SLH-DSA.pod M crypto/openssl/doc/man7/EVP_RAND-CRNG-TEST.pod M crypto/openssl/doc/man7/EVP_RAND-CTR-DRBG.pod M crypto/openssl/doc/man7/EVP_RAND-JITTER.pod M crypto/openssl/doc/man7/EVP_SIGNATURE-ED25519.pod M crypto/openssl/doc/man7/EVP_SIGNATURE-HMAC.pod M crypto/openssl/doc/man7/EVP_SIGNATURE-ML-DSA.pod M crypto/openssl/doc/man7/EVP_SIGNATURE-SLH-DSA.pod M crypto/openssl/doc/man7/OSSL_PROVIDER-FIPS.pod M crypto/openssl/doc/man7/fips_module.pod M crypto/openssl/doc/man7/openssl-quic.pod M crypto/openssl/doc/man7/ossl-guide-tls-client-block.pod M crypto/openssl/doc/man7/provider-digest.pod M crypto/openssl/exporters/cmake/OpenSSLConfig.cmake.in M crypto/openssl/include/crypto/bn.h M crypto/openssl/include/crypto/sparse_array.h M crypto/openssl/include/crypto/x509.h M crypto/openssl/include/internal/list.h A crypto/openssl/include/internal/ossl_rbtree.h M crypto/openssl/include/internal/priority_queue.h M crypto/openssl/include/internal/quic_predef.h D crypto/openssl/include/internal/quic_sf_list.h M crypto/openssl/include/internal/quic_stream.h M crypto/openssl/include/internal/quic_stream_map.h A crypto/openssl/include/internal/quic_strm_reas.h M crypto/openssl/include/internal/refcount.h M crypto/openssl/providers/common/capabilities.c M crypto/openssl/providers/fips-sources.checksums M crypto/openssl/providers/fips.checksum M crypto/openssl/providers/fips.module.sources M crypto/openssl/providers/fips/fipsindicator.c M crypto/openssl/providers/fips/include/fips/fipsindicator.h M crypto/openssl/providers/implementations/ciphers/build.info M crypto/openssl/providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.c M crypto/openssl/providers/implementations/ciphers/ciphercommon.c M crypto/openssl/providers/implementations/ciphers/ciphercommon_ccm.c M crypto/openssl/providers/implementations/ciphers/ciphercommon_gcm.c M crypto/openssl/providers/implementations/digests/build.info M crypto/openssl/providers/implementations/digests/digestcommon.c M crypto/openssl/providers/implementations/digests/sha3_prov.c M crypto/openssl/providers/implementations/include/prov/ciphercommon.h M crypto/openssl/providers/implementations/include/prov/digestcommon.h M crypto/openssl/providers/implementations/kdfs/krb5kdf.c M crypto/openssl/providers/implementations/kdfs/x942kdf.c M crypto/openssl/providers/implementations/kem/ml_kem_kem.c M crypto/openssl/providers/implementations/kem/mlx_kem.c M crypto/openssl/providers/implementations/keymgmt/dh_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/ecx_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/mac_legacy_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/ml_dsa_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/ml_kem_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/mlx_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/rsa_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/slh_dsa_kmgmt.c M crypto/openssl/providers/implementations/macs/gmac_prov.c M crypto/openssl/providers/implementations/rands/seed_src_jitter.c M crypto/openssl/providers/implementations/signature/ecdsa_sig.c M crypto/openssl/providers/implementations/signature/eddsa_sig.c M crypto/openssl/providers/implementations/signature/mac_legacy_sig.c M crypto/openssl/providers/implementations/signature/ml_dsa_sig.c M crypto/openssl/providers/implementations/signature/rsa_sig.c M crypto/openssl/providers/implementations/signature/slh_dsa_sig.c M crypto/openssl/providers/implementations/storemgmt/file_store.c M crypto/openssl/providers/implementations/storemgmt/winstore_store.c M crypto/openssl/providers/legacyprov.c M crypto/openssl/ssl/build.info M crypto/openssl/ssl/d1_lib.c M crypto/openssl/ssl/quic/build.info M crypto/openssl/ssl/quic/quic_channel.c M crypto/openssl/ssl/quic/quic_channel_local.h M crypto/openssl/ssl/quic/quic_engine.c M crypto/openssl/ssl/quic/quic_fc.c M crypto/openssl/ssl/quic/quic_fifd.c M crypto/openssl/ssl/quic/quic_port.c M crypto/openssl/ssl/quic/quic_rcidm.c M crypto/openssl/ssl/quic/quic_reactor_wait_ctx.c M crypto/openssl/ssl/quic/quic_record_rx.c A crypto/openssl/ssl/quic/quic_record_rx_local.h M crypto/openssl/ssl/quic/quic_rstream.c M crypto/openssl/ssl/quic/quic_rx_depack.c D crypto/openssl/ssl/quic/quic_sf_list.c M crypto/openssl/ssl/quic/quic_srtm.c M crypto/openssl/ssl/quic/quic_stream_map.c A crypto/openssl/ssl/quic/quic_strm_reas.c M crypto/openssl/ssl/record/methods/tls1_meth.c M crypto/openssl/ssl/ssl_lib.c M crypto/openssl/ssl/statem/statem_clnt.c M crypto/openssl/test/acvp_test.c M crypto/openssl/test/asn1_internal_test.c M crypto/openssl/test/bio_enc_test.c M crypto/openssl/test/build.info M crypto/openssl/test/cmp_client_test.c M crypto/openssl/test/cmp_extracerts_dos_test.c M crypto/openssl/test/cmp_hdr_test.c M crypto/openssl/test/cmp_vfy_test.c M crypto/openssl/test/cmsapitest.c M crypto/openssl/test/dtlstest.c M crypto/openssl/test/evp_extra_test.c M crypto/openssl/test/evp_test.c M crypto/openssl/test/http_test.c M crypto/openssl/test/lhash_test.c M crypto/openssl/test/ocspapitest.c A crypto/openssl/test/ossl_rbtree_test.c M crypto/openssl/test/provider_status_test.c M crypto/openssl/test/quic_cc_test.c M crypto/openssl/test/quic_fc_test.c M crypto/openssl/test/quic_multistream_test.c M crypto/openssl/test/quic_stream_test.c M crypto/openssl/test/quic_tserver_test.c M crypto/openssl/test/quic_txp_test.c M crypto/openssl/test/quicapitest.c M crypto/openssl/test/radix/quic_ops.c M crypto/openssl/test/radix/quic_tests.c M crypto/openssl/test/rand_test.c D crypto/openssl/test/recipes/00-prep_fipsmodule_cnf.t D crypto/openssl/test/recipes/01-test_abort.t D crypto/openssl/test/recipes/01-test_fipsmodule_cnf.t D crypto/openssl/test/recipes/01-test_sanity.t D crypto/openssl/test/recipes/01-test_symbol_presence.t D crypto/openssl/test/recipes/01-test_test.t D crypto/openssl/test/recipes/02-test_byteorder.t D crypto/openssl/test/recipes/02-test_errstr.t D crypto/openssl/test/recipes/02-test_internal_context.t D crypto/openssl/test/recipes/02-test_internal_ctype.t D crypto/openssl/test/recipes/02-test_internal_exts.t D crypto/openssl/test/recipes/02-test_internal_keymgmt.t D crypto/openssl/test/recipes/02-test_internal_provider.t D crypto/openssl/test/recipes/02-test_lhash.t D crypto/openssl/test/recipes/02-test_list.t D crypto/openssl/test/recipes/02-test_localetest.t D crypto/openssl/test/recipes/02-test_ordinals.t D crypto/openssl/test/recipes/02-test_priority_queue.t D crypto/openssl/test/recipes/02-test_sparse_array.t D crypto/openssl/test/recipes/02-test_stack.t D crypto/openssl/test/recipes/02-test_strtoul.t D crypto/openssl/test/recipes/02-test_time.t D crypto/openssl/test/recipes/02-test_windows_registry.t D crypto/openssl/test/recipes/03-test_evp_extra_ml_kem.t D crypto/openssl/test/recipes/03-test_exdata.t D crypto/openssl/test/recipes/03-test_fipsinstall.t D crypto/openssl/test/recipes/03-test_internal_asn1.t D crypto/openssl/test/recipes/03-test_internal_asn1_dsa.t D crypto/openssl/test/recipes/03-test_internal_bn.t D crypto/openssl/test/recipes/03-test_internal_chacha.t D crypto/openssl/test/recipes/03-test_internal_curve448.t D crypto/openssl/test/recipes/03-test_internal_ec.t D crypto/openssl/test/recipes/03-test_internal_ffc.t D crypto/openssl/test/recipes/03-test_internal_mdc2.t D crypto/openssl/test/recipes/03-test_internal_ml_kem.t D crypto/openssl/test/recipes/03-test_internal_modes.t D crypto/openssl/test/recipes/03-test_internal_namemap.t D crypto/openssl/test/recipes/03-test_internal_poly1305.t D crypto/openssl/test/recipes/03-test_internal_rsa_sp800_56b.t D crypto/openssl/test/recipes/03-test_internal_siphash.t D crypto/openssl/test/recipes/03-test_internal_sm2.t D crypto/openssl/test/recipes/03-test_internal_sm3.t D crypto/openssl/test/recipes/03-test_internal_sm4.t D crypto/openssl/test/recipes/03-test_internal_ssl_cert_table.t D crypto/openssl/test/recipes/03-test_internal_x509.t D crypto/openssl/test/recipes/03-test_params_api.t D crypto/openssl/test/recipes/03-test_property.t D crypto/openssl/test/recipes/03-test_ui.t D crypto/openssl/test/recipes/04-test_asn1_decode.t D crypto/openssl/test/recipes/04-test_asn1_encode.t D crypto/openssl/test/recipes/04-test_asn1_parse.t D crypto/openssl/test/recipes/04-test_asn1_stable_parse.t D crypto/openssl/test/recipes/04-test_asn1_stable_parse_data/asn1_stable_parse.cnf D crypto/openssl/test/recipes/04-test_asn1_string_table.t D crypto/openssl/test/recipes/04-test_bio_callback.t D crypto/openssl/test/recipes/04-test_bio_core.t D crypto/openssl/test/recipes/04-test_bio_dgram.t D crypto/openssl/test/recipes/04-test_bio_tfo.t D crypto/openssl/test/recipes/04-test_bioprint.t D crypto/openssl/test/recipes/04-test_conf.t D crypto/openssl/test/recipes/04-test_conf_data/dollarid_off.cnf D crypto/openssl/test/recipes/04-test_conf_data/dollarid_off.txt D crypto/openssl/test/recipes/04-test_conf_data/dollarid_on.cnf D crypto/openssl/test/recipes/04-test_conf_data/dollarid_on.txt D crypto/openssl/test/recipes/04-test_conf_data/oversized_line.cnf D crypto/openssl/test/recipes/04-test_conf_data/oversized_line.txt D crypto/openssl/test/recipes/04-test_encoder_decoder.t D crypto/openssl/test/recipes/04-test_encoder_decoder_legacy.t D crypto/openssl/test/recipes/04-test_err.t D crypto/openssl/test/recipes/04-test_hexstring.t D crypto/openssl/test/recipes/04-test_membio.t D crypto/openssl/test/recipes/04-test_nodefltctx.t D crypto/openssl/test/recipes/04-test_param_build.t D crypto/openssl/test/recipes/04-test_params.t D crypto/openssl/test/recipes/04-test_params_conversion.t D crypto/openssl/test/recipes/04-test_params_conversion_data/native_types.txt D crypto/openssl/test/recipes/04-test_pem_read_depr.t D crypto/openssl/test/recipes/04-test_pem_read_depr_data/dhparams.pem D crypto/openssl/test/recipes/04-test_pem_read_depr_data/dsaparams.pem D crypto/openssl/test/recipes/04-test_pem_read_depr_data/dsaprivatekey.pem D crypto/openssl/test/recipes/04-test_pem_read_depr_data/dsapublickey.pem D crypto/openssl/test/recipes/04-test_pem_read_depr_data/rsaprivatekey.pem D crypto/openssl/test/recipes/04-test_pem_read_depr_data/rsapublickey.pem D crypto/openssl/test/recipes/04-test_pem_read_depr_data/x942params.pem D crypto/openssl/test/recipes/04-test_pem_reading.t D crypto/openssl/test/recipes/04-test_pem_reading_data/NOTES.txt D crypto/openssl/test/recipes/04-test_pem_reading_data/beermug.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-1023line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-1024line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-1025line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-254-chars-at-the-end.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-254-chars-in-the-middle.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-255line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-256line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-257line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-blankline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-bom.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-comment.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-earlypad.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-extrapad.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-infixwhitespace.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-junk.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-leadingwhitespace.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-longline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-misalignedpad.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-onecolumn.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-oneline-multiple-of-254.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-oneline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-shortandlongline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-shortline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-threecolumn.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert-trailingwhitespace.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/cert.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/csr.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-1023line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-1024line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-1025line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-255line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-256line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-257line.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-blankline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-comment.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-corruptedheader.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-corruptiv.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-earlypad.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-extrapad.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-infixwhitespace.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-junk.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-leadingwhitespace.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-longline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-misalignedpad.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-onecolumn.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-oneline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-onelineheader.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-shortandlongline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-shortline.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-threecolumn.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa-trailingwhitespace.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsa.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/dsaparam.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/key.pem D crypto/openssl/test/recipes/04-test_pem_reading_data/wellknown D crypto/openssl/test/recipes/04-test_provfetch.t D crypto/openssl/test/recipes/04-test_provider.t D crypto/openssl/test/recipes/04-test_provider_default_search_path.t D crypto/openssl/test/recipes/04-test_provider_fallback.t D crypto/openssl/test/recipes/04-test_provider_pkey.t D crypto/openssl/test/recipes/04-test_punycode.t D crypto/openssl/test/recipes/04-test_upcalls.t D crypto/openssl/test/recipes/05-test_bf.t D crypto/openssl/test/recipes/05-test_cast.t D crypto/openssl/test/recipes/05-test_cmac.t D crypto/openssl/test/recipes/05-test_des.t D crypto/openssl/test/recipes/05-test_hmac.t D crypto/openssl/test/recipes/05-test_idea.t D crypto/openssl/test/recipes/05-test_pbe.t D crypto/openssl/test/recipes/05-test_rand.t D crypto/openssl/test/recipes/05-test_rc2.t D crypto/openssl/test/recipes/05-test_rc4.t D crypto/openssl/test/recipes/05-test_rc5.t D crypto/openssl/test/recipes/06-test_algorithmid.t D crypto/openssl/test/recipes/06-test_rdcpu_sanity.t D crypto/openssl/test/recipes/07-test_bio_comp.t D crypto/openssl/test/recipes/10-test_bn.t D crypto/openssl/test/recipes/10-test_bn_data/bnexp.txt D crypto/openssl/test/recipes/10-test_bn_data/bngcd.txt D crypto/openssl/test/recipes/10-test_bn_data/bnmod.txt D crypto/openssl/test/recipes/10-test_bn_data/bnmul.txt D crypto/openssl/test/recipes/10-test_bn_data/bnshift.txt D crypto/openssl/test/recipes/10-test_bn_data/bnsum.txt D crypto/openssl/test/recipes/10-test_exp.t D crypto/openssl/test/recipes/15-test_dh.t D crypto/openssl/test/recipes/15-test_dsa.t D crypto/openssl/test/recipes/15-test_dsaparam.t D crypto/openssl/test/recipes/15-test_dsaparam_data/invalid/p10240_q256_too_big.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/invalid/p2048_q256_bad_q.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/invalid/p768_q160_too_small.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1862_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p1024_q160_t1864_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p1024_q224_t1862_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p1024_q256_t1862_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q160_t1862_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1862_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q224_t1864_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1862_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p2048_q256_t1864_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p3072_q160_t1862_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p3072_q224_t1862_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1862.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1862_gind1.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1864.pem D crypto/openssl/test/recipes/15-test_dsaparam_data/valid/p3072_q256_t1864_gind1.pem D crypto/openssl/test/recipes/15-test_ec.t D crypto/openssl/test/recipes/15-test_ecdsa.t D crypto/openssl/test/recipes/15-test_ecparam.t D crypto/openssl/test/recipes/15-test_ecparam_data/invalid/c2pnb208w1-reducible.pem D crypto/openssl/test/recipes/15-test_ecparam_data/invalid/nistp256-nonprime.pem D crypto/openssl/test/recipes/15-test_ecparam_data/invalid/nistp256-offcurve.pem D crypto/openssl/test/recipes/15-test_ecparam_data/invalid/nistp256-wrongorder.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/c2pnb163v1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/c2pnb208w1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/secp160k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/secp192k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/secp224k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/secp256k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/secp521r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect113r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect113r2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect163k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect163r2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect193r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect193r2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect233k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect233r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect239k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect283k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect283r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect409k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect409r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect571k1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/sect571r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/wap-wsg-idm-ecid-wtls1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/wap-wsg-idm-ecid-wtls10-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/wap-wsg-idm-ecid-wtls11-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/wap-wsg-idm-ecid-wtls3-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/wap-wsg-idm-ecid-wtls4-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/wap-wsg-idm-ecid-wtls5-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/wap-wsg-idm-ecid-wtls8-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/noncanon/wap-wsg-idm-ecid-wtls9-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb163v1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb163v2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb163v2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb163v3-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb163v3-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb176v1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb176v1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb208w1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb272w1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb272w1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb304w1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb304w1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb368w1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2pnb368w1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb191v1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb191v1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb191v2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb191v2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb191v3-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb191v3-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb239v1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb239v1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb239v2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb239v2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb239v3-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb239v3-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb359v1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb359v1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb431r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/c2tnb431r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime192v1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime192v1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime192v2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime192v2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime192v3-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime192v3-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime239v1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime239v1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime239v2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime239v2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime239v3-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime239v3-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime256v1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/prime256v1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp112r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp112r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp112r2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp112r2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp128r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp128r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp128r2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp128r2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp160k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp160r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp160r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp160r2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp160r2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp192k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp224k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp224r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp224r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp256k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp384r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp384r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/secp521r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect113r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect113r2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect131r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect131r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect131r2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect131r2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect163k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect163r1-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect163r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect163r2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect193r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect193r2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect233k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect233r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect239k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect283k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect283r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect409k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect409r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect571k1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sect571r1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sm2-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/sm2-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls1-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls10-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls11-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls12-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls12-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls3-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls4-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls5-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls6-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls6-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls7-explicit.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls7-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls8-named.pem D crypto/openssl/test/recipes/15-test_ecparam_data/valid/wap-wsg-idm-ecid-wtls9-named.pem D crypto/openssl/test/recipes/15-test_gendh.t D crypto/openssl/test/recipes/15-test_gendhparam.t D crypto/openssl/test/recipes/15-test_gendsa.t D crypto/openssl/test/recipes/15-test_genec.t D crypto/openssl/test/recipes/15-test_genpkey.t D crypto/openssl/test/recipes/15-test_genrsa.t D crypto/openssl/test/recipes/15-test_gensm2.t D crypto/openssl/test/recipes/15-test_ml_dsa_codecs.t D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/ml-dsa.cnf D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-44-bare-priv.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-44-bare-seed.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-44-oqskeypair.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-44-priv-only.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-44-priv.txt D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-44-seed-only.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-44-seed-priv.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-44-seed.txt D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-65-bare-priv.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-65-bare-seed.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-65-oqskeypair.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-65-priv-only.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-65-priv.txt D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-65-seed-only.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-65-seed-priv.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-65-seed.txt D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-87-bare-priv.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-87-bare-seed.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-87-oqskeypair.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-87-priv-only.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-87-priv.txt D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-87-seed-only.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-87-seed-priv.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/prv-87-seed.txt D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/pub-44.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/pub-44.txt D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/pub-65.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/pub-65.txt D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/pub-87.pem D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/pub-87.txt D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/sig-44.dat D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/sig-65.dat D crypto/openssl/test/recipes/15-test_ml_dsa_codecs_data/sig-87.dat D crypto/openssl/test/recipes/15-test_ml_kem_codecs.t D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/ct-1024.dat D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/ct-512.dat D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/ct-768.dat D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/ml-kem.cnf D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-1024-bare-priv.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-1024-bare-seed.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-1024-oqskeypair.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-1024-priv-only.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-1024-priv.txt D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-1024-seed-only.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-1024-seed-priv.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-1024-seed.txt D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-512-bare-priv.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-512-bare-seed.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-512-oqskeypair.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-512-priv-only.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-512-priv.txt D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-512-seed-only.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-512-seed-priv.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-512-seed.txt D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-768-bare-priv.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-768-bare-seed.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-768-oqskeypair.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-768-priv-only.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-768-priv.txt D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-768-seed-only.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-768-seed-priv.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/prv-768-seed.txt D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/pub-1024.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/pub-512.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/pub-768.pem D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/ss-1024.dat D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/ss-512.dat D crypto/openssl/test/recipes/15-test_ml_kem_codecs_data/ss-768.dat D crypto/openssl/test/recipes/15-test_mp_rsa.t D crypto/openssl/test/recipes/15-test_mp_rsa_data/plain_text D crypto/openssl/test/recipes/15-test_mp_rsa_data/rsamplcm.pem D crypto/openssl/test/recipes/15-test_out_option.t D crypto/openssl/test/recipes/15-test_pkey.t D crypto/openssl/test/recipes/15-test_rsa.t D crypto/openssl/test/recipes/15-test_rsaoaep.t D crypto/openssl/test/recipes/15-test_rsaoaep_data/plain_text D crypto/openssl/test/recipes/15-test_rsapss.t D crypto/openssl/test/recipes/15-test_rsapss_data/negativesaltlen.pem D crypto/openssl/test/recipes/15-test_rsax931.t D crypto/openssl/test/recipes/15-test_sha.t D crypto/openssl/test/recipes/20-test_app.t D crypto/openssl/test/recipes/20-test_app_s_client.t D crypto/openssl/test/recipes/20-test_cli_fips.t D crypto/openssl/test/recipes/20-test_cli_list.t D crypto/openssl/test/recipes/20-test_dgst.t D crypto/openssl/test/recipes/20-test_dhparam.t D crypto/openssl/test/recipes/20-test_dhparam_check.t D crypto/openssl/test/recipes/20-test_dhparam_check_data/invalid/dh_p1024_t1862_pkcs3.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/invalid/dh_p2048_t1862_pkcs3.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/invalid/dh_p2048_t1864_pkcs3.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/invalid/dh_p3072_t1862_pkcs3.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dh_5114_1.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dh_5114_2.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dh_5114_3.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dh_ffdhe2048.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_5114_2.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_ffdhe2048.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p1024_q160_t1862.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p1024_q160_t1864.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p1024_q224_t1862.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p1024_q256_t1862.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p2048_q160_t1862.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p2048_q224_t1862.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p2048_q224_t1864.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p2048_q256_t1862.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p2048_q256_t1864.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p3072_q160_t1862.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p3072_q224_t1862.pem D crypto/openssl/test/recipes/20-test_dhparam_check_data/valid/dhx_p3072_q256_t1862.pem D crypto/openssl/test/recipes/20-test_dhparam_data/pkcs3-2-1024.der D crypto/openssl/test/recipes/20-test_dhparam_data/pkcs3-2-1024.pem D crypto/openssl/test/recipes/20-test_dhparam_data/pkcs3-2-2048.der D crypto/openssl/test/recipes/20-test_dhparam_data/pkcs3-2-2048.pem D crypto/openssl/test/recipes/20-test_dhparam_data/pkcs3-5-1024.der D crypto/openssl/test/recipes/20-test_dhparam_data/pkcs3-5-1024.pem D crypto/openssl/test/recipes/20-test_dhparam_data/x942-0-1024.der D crypto/openssl/test/recipes/20-test_dhparam_data/x942-0-1024.pem D crypto/openssl/test/recipes/20-test_enc.t D crypto/openssl/test/recipes/20-test_enc_more.t D crypto/openssl/test/recipes/20-test_kdf.t D crypto/openssl/test/recipes/20-test_legacy_okay.t D crypto/openssl/test/recipes/20-test_mac.t D crypto/openssl/test/recipes/20-test_nocache.t D crypto/openssl/test/recipes/20-test_passwd.t D crypto/openssl/test/recipes/20-test_pkeyutl.t D crypto/openssl/test/recipes/20-test_rand_config.t D crypto/openssl/test/recipes/20-test_speed.t D crypto/openssl/test/recipes/20-test_spkac.t D crypto/openssl/test/recipes/25-test_crl.t D crypto/openssl/test/recipes/25-test_d2i.t D crypto/openssl/test/recipes/25-test_eai_data.t D crypto/openssl/test/recipes/25-test_eai_data/ascii_chain.pem D crypto/openssl/test/recipes/25-test_eai_data/ascii_leaf.pem D crypto/openssl/test/recipes/25-test_eai_data/kdc-cert.pem D crypto/openssl/test/recipes/25-test_eai_data/kdc-root-cert.pem D crypto/openssl/test/recipes/25-test_eai_data/kdc.sh D crypto/openssl/test/recipes/25-test_eai_data/san.ascii D crypto/openssl/test/recipes/25-test_eai_data/san.utf8 D crypto/openssl/test/recipes/25-test_eai_data/utf8_chain.pem D crypto/openssl/test/recipes/25-test_eai_data/utf8_leaf.pem D crypto/openssl/test/recipes/25-test_pkcs7.t D crypto/openssl/test/recipes/25-test_pkcs7_data/grfc.out D crypto/openssl/test/recipes/25-test_pkcs7_data/malformed.pkcs7 D crypto/openssl/test/recipes/25-test_pkcs8.t D crypto/openssl/test/recipes/25-test_req.t D crypto/openssl/test/recipes/25-test_rusext.t D crypto/openssl/test/recipes/25-test_rusext_data/grfc.msb D crypto/openssl/test/recipes/25-test_rusext_data/grfc.utf8 D crypto/openssl/test/recipes/25-test_sid.t D crypto/openssl/test/recipes/25-test_verify.t D crypto/openssl/test/recipes/25-test_verify_store.t D crypto/openssl/test/recipes/25-test_x509.t D crypto/openssl/test/recipes/30-test_acvp.t D crypto/openssl/test/recipes/30-test_aesgcm.t D crypto/openssl/test/recipes/30-test_afalg.t D crypto/openssl/test/recipes/30-test_defltfips.t D crypto/openssl/test/recipes/30-test_defltfips/fipsmodule.cnf D crypto/openssl/test/recipes/30-test_engine.t D crypto/openssl/test/recipes/30-test_evp.t D crypto/openssl/test/recipes/30-test_evp_byname.t D crypto/openssl/test/recipes/30-test_evp_data/evpciph_aes_ccm_cavs.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_aes_common.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_aes_cts.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_aes_gcm_siv.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_aes_ocb.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_aes_siv.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_aes_stitched.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_aes_wrap.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_aria.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_bf.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_camellia.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_camellia_cts.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_cast5.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_chacha.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_des.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_des3_common.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_idea.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_rc2.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_rc4.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_rc4_stitched.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_rc5.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_seed.txt D crypto/openssl/test/recipes/30-test_evp_data/evpciph_sm4.txt D crypto/openssl/test/recipes/30-test_evp_data/evpencod.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_argon2.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_hkdf.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_hmac_drbg.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_kbkdf_counter.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_kbkdf_kmac.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_krb5.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_pbkdf1.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_pbkdf2.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_pvkkdf.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_scrypt.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_ss.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_ssh.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_tls11_prf.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_tls12_prf.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_tls13_kdf.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_x942.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_x942_des.txt D crypto/openssl/test/recipes/30-test_evp_data/evpkdf_x963.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmac_blake.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmac_cmac_des.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmac_common.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmac_poly1305.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmac_siphash.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmac_sm3.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmd_blake.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmd_md.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmd_mdc2.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmd_ripemd.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmd_sha.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmd_sm3.txt D crypto/openssl/test/recipes/30-test_evp_data/evpmd_whirlpool.txt D crypto/openssl/test/recipes/30-test_evp_data/evppbe_pbkdf2.txt D crypto/openssl/test/recipes/30-test_evp_data/evppbe_pkcs12.txt D crypto/openssl/test/recipes/30-test_evp_data/evppbe_scrypt.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_brainpool.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_dh.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_dsa.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_dsa_rfc6979.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_dsa_sigalg.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ecc.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ecdh.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ecdsa.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ecdsa_rfc6979.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ecdsa_sigalg.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ecx.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ecx_kem.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ecx_sigalg.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ffdhe.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_kas.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_kdf_hkdf.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_kdf_scrypt.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_kdf_tls1_prf.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_mismatch.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_mismatch_ecx.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_dsa_44_wycheproof_sign.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_dsa_44_wycheproof_verify.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_dsa_65_wycheproof_sign.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_dsa_65_wycheproof_verify.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_dsa_87_wycheproof_sign.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_dsa_87_wycheproof_verify.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_dsa_keygen.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_dsa_siggen.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_dsa_sigver.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_1024_decap.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_1024_encap.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_1024_keygen.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_512_decap.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_512_encap.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_512_keygen.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_768_decap.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_768_encap.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_768_keygen.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_encap_decap.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_ml_kem_keygen.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_rsa.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_rsa_common.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_rsa_kem.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_rsa_sigalg.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_slh_dsa_keygen.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_slh_dsa_siggen.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_slh_dsa_sigver.txt D crypto/openssl/test/recipes/30-test_evp_data/evppkey_sm2.txt D crypto/openssl/test/recipes/30-test_evp_extra.t D crypto/openssl/test/recipes/30-test_evp_fetch_prov.t D crypto/openssl/test/recipes/30-test_evp_kdf.t D crypto/openssl/test/recipes/30-test_evp_libctx.t D crypto/openssl/test/recipes/30-test_evp_pkey_dhkem.t D crypto/openssl/test/recipes/30-test_evp_pkey_dparam.t D crypto/openssl/test/recipes/30-test_evp_pkey_provided.t D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DH.priv.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DH.priv.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DH.priv.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DH.pub.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DH.pub.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DH.pub.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DSA.priv.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DSA.priv.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DSA.priv.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DSA.pub.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DSA.pub.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/DSA.pub.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/EC.priv.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/EC.priv.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/EC.priv.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/EC.pub.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/EC.pub.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/EC.pub.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED25519.priv.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED25519.priv.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED25519.priv.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED25519.pub.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED25519.pub.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED25519.pub.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED448.priv.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED448.priv.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED448.priv.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED448.pub.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED448.pub.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/ED448.pub.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/RSA.priv.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/RSA.priv.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/RSA.priv.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/RSA.pub.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/RSA.pub.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/RSA.pub.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X25519.priv.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X25519.priv.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X25519.priv.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X25519.pub.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X25519.pub.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X25519.pub.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X448.priv.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X448.priv.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X448.priv.txt D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X448.pub.der D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X448.pub.pem D crypto/openssl/test/recipes/30-test_evp_pkey_provided/X448.pub.txt D crypto/openssl/test/recipes/30-test_evp_skey.t D crypto/openssl/test/recipes/30-test_evp_xof.t D crypto/openssl/test/recipes/30-test_hpke.t D crypto/openssl/test/recipes/30-test_ml_dsa.t D crypto/openssl/test/recipes/30-test_pairwise_fail.t D crypto/openssl/test/recipes/30-test_pairwise_fail_data/dsaparam.pem D crypto/openssl/test/recipes/30-test_pbelu.t D crypto/openssl/test/recipes/30-test_pkey_meth.t D crypto/openssl/test/recipes/30-test_pkey_meth_kdf.t D crypto/openssl/test/recipes/30-test_prov_config.t D crypto/openssl/test/recipes/30-test_provider_status.t D crypto/openssl/test/recipes/30-test_slh_dsa.t D crypto/openssl/test/recipes/40-test_rehash.t D crypto/openssl/test/recipes/60-test_x509_acert.t D crypto/openssl/test/recipes/60-test_x509_check_cert_pkey.t D crypto/openssl/test/recipes/60-test_x509_dup_cert.t D crypto/openssl/test/recipes/60-test_x509_load_cert_file.t D crypto/openssl/test/recipes/60-test_x509_req.t D crypto/openssl/test/recipes/60-test_x509_store.t D crypto/openssl/test/recipes/60-test_x509_time.t D crypto/openssl/test/recipes/61-test_bio_addr.t D crypto/openssl/test/recipes/61-test_bio_meth.t D crypto/openssl/test/recipes/61-test_bio_prefix.t D crypto/openssl/test/recipes/61-test_bio_prefix_data/args1.pl D crypto/openssl/test/recipes/61-test_bio_prefix_data/args2.pl D crypto/openssl/test/recipes/61-test_bio_prefix_data/in1.txt D crypto/openssl/test/recipes/61-test_bio_prefix_data/in2.txt D crypto/openssl/test/recipes/61-test_bio_prefix_data/out1.txt D crypto/openssl/test/recipes/61-test_bio_prefix_data/out2.txt D crypto/openssl/test/recipes/61-test_bio_pw_callback.t D crypto/openssl/test/recipes/61-test_bio_pw_callback_data/private_key.pem D crypto/openssl/test/recipes/61-test_bio_readbuffer.t D crypto/openssl/test/recipes/65-test_cmp_asn.t D crypto/openssl/test/recipes/65-test_cmp_client.t D crypto/openssl/test/recipes/65-test_cmp_client_data/client.crt D crypto/openssl/test/recipes/65-test_cmp_client_data/client.csr D crypto/openssl/test/recipes/65-test_cmp_client_data/client.key D crypto/openssl/test/recipes/65-test_cmp_client_data/server.crt D crypto/openssl/test/recipes/65-test_cmp_client_data/server.key D crypto/openssl/test/recipes/65-test_cmp_ctx.t D crypto/openssl/test/recipes/65-test_cmp_hdr.t D crypto/openssl/test/recipes/65-test_cmp_msg.t D crypto/openssl/test/recipes/65-test_cmp_msg_data/new.key D crypto/openssl/test/recipes/65-test_cmp_msg_data/pkcs10.der D crypto/openssl/test/recipes/65-test_cmp_msg_data/server.crt D crypto/openssl/test/recipes/65-test_cmp_protect.t D crypto/openssl/test/recipes/65-test_cmp_protect_data/EndEntity1.crt D crypto/openssl/test/recipes/65-test_cmp_protect_data/EndEntity2.crt D crypto/openssl/test/recipes/65-test_cmp_protect_data/GENM_protected_Ed.der D crypto/openssl/test/recipes/65-test_cmp_protect_data/IP_PBM.der D crypto/openssl/test/recipes/65-test_cmp_protect_data/IP_PBM.txt D crypto/openssl/test/recipes/65-test_cmp_protect_data/IR_protected.der D crypto/openssl/test/recipes/65-test_cmp_protect_data/IR_unprotected.der D crypto/openssl/test/recipes/65-test_cmp_protect_data/Intermediate_CA.crt D crypto/openssl/test/recipes/65-test_cmp_protect_data/Root_CA.crt D crypto/openssl/test/recipes/65-test_cmp_protect_data/prot_Ed.pem D crypto/openssl/test/recipes/65-test_cmp_protect_data/prot_RSA.pem D crypto/openssl/test/recipes/65-test_cmp_protect_data/server.crt D crypto/openssl/test/recipes/65-test_cmp_protect_data/server.pem D crypto/openssl/test/recipes/65-test_cmp_server.t D crypto/openssl/test/recipes/65-test_cmp_server_data/CR_protected_PBM_1234.der D crypto/openssl/test/recipes/65-test_cmp_status.t D crypto/openssl/test/recipes/65-test_cmp_vfy.t D crypto/openssl/test/recipes/65-test_cmp_vfy_data/EndEntity1.crt D crypto/openssl/test/recipes/65-test_cmp_vfy_data/EndEntity2.crt D crypto/openssl/test/recipes/65-test_cmp_vfy_data/IP_waitingStatus_PBM.der D crypto/openssl/test/recipes/65-test_cmp_vfy_data/IP_waitingStatus_PBM.txt D crypto/openssl/test/recipes/65-test_cmp_vfy_data/IR_protected.der D crypto/openssl/test/recipes/65-test_cmp_vfy_data/IR_protected_0_extraCerts.der D crypto/openssl/test/recipes/65-test_cmp_vfy_data/IR_protected_2_extraCerts.der D crypto/openssl/test/recipes/65-test_cmp_vfy_data/IR_rmprotection.der D crypto/openssl/test/recipes/65-test_cmp_vfy_data/IR_unprotected.der D crypto/openssl/test/recipes/65-test_cmp_vfy_data/Intermediate_CA.crt D crypto/openssl/test/recipes/65-test_cmp_vfy_data/Root_CA.crt D crypto/openssl/test/recipes/65-test_cmp_vfy_data/chain.txt D crypto/openssl/test/recipes/65-test_cmp_vfy_data/client.crt D crypto/openssl/test/recipes/65-test_cmp_vfy_data/insta.cert.pem D crypto/openssl/test/recipes/65-test_cmp_vfy_data/insta.priv.pem D crypto/openssl/test/recipes/65-test_cmp_vfy_data/insta_ca.cert.pem D crypto/openssl/test/recipes/65-test_cmp_vfy_data/server.crt D crypto/openssl/test/recipes/65-test_cmp_vfy_data/server.key D crypto/openssl/test/recipes/66-test_ossl_store.t D crypto/openssl/test/recipes/66-test_ossl_store_data/DH-params.pem D crypto/openssl/test/recipes/66-test_ossl_store_data/DHX-params.pem D crypto/openssl/test/recipes/66-test_ossl_store_data/DSA-params.pem D crypto/openssl/test/recipes/70-test_asyncio.t D crypto/openssl/test/recipes/70-test_bad_dtls.t D crypto/openssl/test/recipes/70-test_certtypeext.t D crypto/openssl/test/recipes/70-test_clienthello.t D crypto/openssl/test/recipes/70-test_comp.t D crypto/openssl/test/recipes/70-test_key_share.t D crypto/openssl/test/recipes/70-test_npn.t D crypto/openssl/test/recipes/70-test_packet.t D crypto/openssl/test/recipes/70-test_quic_cfq.t D crypto/openssl/test/recipes/70-test_quic_fc.t D crypto/openssl/test/recipes/70-test_quic_fifd.t D crypto/openssl/test/recipes/70-test_quic_lcidm.t D crypto/openssl/test/recipes/70-test_quic_multistream.t D crypto/openssl/test/recipes/70-test_quic_multistream_data/verify-qlog.py D crypto/openssl/test/recipes/70-test_quic_qlog.t D crypto/openssl/test/recipes/70-test_quic_radix.t D crypto/openssl/test/recipes/70-test_quic_rcidm.t D crypto/openssl/test/recipes/70-test_quic_record.t D crypto/openssl/test/recipes/70-test_quic_srtm.t D crypto/openssl/test/recipes/70-test_quic_stream.t D crypto/openssl/test/recipes/70-test_quic_tserver.t D crypto/openssl/test/recipes/70-test_quic_txp.t D crypto/openssl/test/recipes/70-test_quic_txpim.t D crypto/openssl/test/recipes/70-test_quic_wire.t D crypto/openssl/test/recipes/70-test_recordlen.t D crypto/openssl/test/recipes/70-test_renegotiation.t D crypto/openssl/test/recipes/70-test_rio_poll_builder.t D crypto/openssl/test/recipes/70-test_servername.t D crypto/openssl/test/recipes/70-test_sslcbcpadding.t D crypto/openssl/test/recipes/70-test_sslcertstatus.t D crypto/openssl/test/recipes/70-test_sslextension.t D crypto/openssl/test/recipes/70-test_sslkeylogfile.t D crypto/openssl/test/recipes/70-test_sslmessages.t D crypto/openssl/test/recipes/70-test_sslrecords.t D crypto/openssl/test/recipes/70-test_sslsessiontick.t D crypto/openssl/test/recipes/70-test_sslsigalgs.t D crypto/openssl/test/recipes/70-test_sslsignature.t D crypto/openssl/test/recipes/70-test_sslskewith0p.t D crypto/openssl/test/recipes/70-test_sslversions.t D crypto/openssl/test/recipes/70-test_sslvertol.t D crypto/openssl/test/recipes/70-test_tls13alerts.t D crypto/openssl/test/recipes/70-test_tls13certcomp.t D crypto/openssl/test/recipes/70-test_tls13cookie.t D crypto/openssl/test/recipes/70-test_tls13downgrade.t D crypto/openssl/test/recipes/70-test_tls13groupselection.t D crypto/openssl/test/recipes/70-test_tls13hrr.t D crypto/openssl/test/recipes/70-test_tls13kexmodes.t D crypto/openssl/test/recipes/70-test_tls13messages.t D crypto/openssl/test/recipes/70-test_tls13psk.t D crypto/openssl/test/recipes/70-test_tls13ticket.t D crypto/openssl/test/recipes/70-test_tlsextms.t D crypto/openssl/test/recipes/70-test_verify_extra.t D crypto/openssl/test/recipes/70-test_wpacket.t D crypto/openssl/test/recipes/71-test_ssl_ctx.t D crypto/openssl/test/recipes/75-test_json_enc.t D crypto/openssl/test/recipes/75-test_quic_ackm.t D crypto/openssl/test/recipes/75-test_quic_cc.t D crypto/openssl/test/recipes/75-test_quic_srt_gen.t D crypto/openssl/test/recipes/75-test_quicapi.t D crypto/openssl/test/recipes/75-test_quicapi_data/ssltraceref-zlib.txt D crypto/openssl/test/recipes/75-test_quicapi_data/ssltraceref.txt D crypto/openssl/test/recipes/79-test_http.t D crypto/openssl/test/recipes/80-test_ca.t D crypto/openssl/test/recipes/80-test_ca_data/revoked.key D crypto/openssl/test/recipes/80-test_ca_internals.t D crypto/openssl/test/recipes/80-test_ca_internals_data/index.txt D crypto/openssl/test/recipes/80-test_cipherbytes.t D crypto/openssl/test/recipes/80-test_cipherlist.t D crypto/openssl/test/recipes/80-test_ciphername.t D crypto/openssl/test/recipes/80-test_cmp_http.t D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/12345.txt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/big_issuing.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/big_root.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/big_server.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/big_trusted.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/csr.pem D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/empty.txt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/issuing.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/issuing_expired.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/new.RSA2048.key D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/new.key D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/newWithNew.pem D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/newWithOld.pem D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/new_pass_12345.key D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/new_pub.key D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/newcrl.pem D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/oldWithNew.pem D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/oldWithOld.pem D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/oldcrl.pem D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/random.bin D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/root.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/root_expired.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/server.cnf D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/server.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/server.key D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/signer.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/signer.key D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/signer.p12 D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/signer_issuing.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/signer_only.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/signer_root.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/test.cnf D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/trusted.crt D crypto/openssl/test/recipes/80-test_cmp_http_data/Mock/wrong_csr.pem D crypto/openssl/test/recipes/80-test_cmp_http_data/test_commands.csv D crypto/openssl/test/recipes/80-test_cmp_http_data/test_connection.csv D crypto/openssl/test/recipes/80-test_cmp_http_data/test_credentials.csv D crypto/openssl/test/recipes/80-test_cmp_http_data/test_enrollment.csv D crypto/openssl/test/recipes/80-test_cmp_http_data/test_verification.csv D crypto/openssl/test/recipes/80-test_cms.t D crypto/openssl/test/recipes/80-test_cms_data/authenticated_attrs.pem D crypto/openssl/test/recipes/80-test_cms_data/authenveloped_attrs.pem D crypto/openssl/test/recipes/80-test_cms_data/bad_authenveloped_attrs.pem D crypto/openssl/test/recipes/80-test_cms_data/bad_signtime_attr.cms D crypto/openssl/test/recipes/80-test_cms_data/ciphertext_from_1_1_1.cms D crypto/openssl/test/recipes/80-test_cms_data/ct_multiple_attr.cms D crypto/openssl/test/recipes/80-test_cms_data/dh-cert.pem D crypto/openssl/test/recipes/80-test_cms_data/dh-key.pem D crypto/openssl/test/recipes/80-test_cms_data/dh-malformed.der D crypto/openssl/test/recipes/80-test_cms_data/ecdh-cert.pem D crypto/openssl/test/recipes/80-test_cms_data/ecdh-key.pem D crypto/openssl/test/recipes/80-test_cms_data/ecdh-malformed.der D crypto/openssl/test/recipes/80-test_cms_data/no_ct_attr.cms D crypto/openssl/test/recipes/80-test_cms_data/no_md_attr.cms D crypto/openssl/test/recipes/80-test_cms_data/pkcs7-md4-encrypted.pem D crypto/openssl/test/recipes/80-test_cms_data/pkcs7-md4.pem D crypto/openssl/test/recipes/80-test_cms_data/rsa-malformed.der D crypto/openssl/test/recipes/80-test_cmsapi.t D crypto/openssl/test/recipes/80-test_cmsapi_data/cms_pwri_kek_oob.der D crypto/openssl/test/recipes/80-test_cmsapi_data/encDataWithTooLongIV.pem D crypto/openssl/test/recipes/80-test_cmsapi_data/encryptedData.der D crypto/openssl/test/recipes/80-test_ct.t D crypto/openssl/test/recipes/80-test_dane.t D crypto/openssl/test/recipes/80-test_dtls.t D crypto/openssl/test/recipes/80-test_dtls_mtu.t D crypto/openssl/test/recipes/80-test_dtlsv1listen.t D crypto/openssl/test/recipes/80-test_ocsp.t D crypto/openssl/test/recipes/80-test_ocsp_data/cert.pem D crypto/openssl/test/recipes/80-test_ocsp_data/key.pem D crypto/openssl/test/recipes/80-test_pkcs12.t D crypto/openssl/test/recipes/80-test_pkcs12_data/bad1.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/bad2.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/bad3.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/nomac_parse.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.bad-iter.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.bad-key-len.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.bad-len.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.bad-salt-type.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.bad-salt.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.good-shorter-key-len.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.good.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.negative-len.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.no-len.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.no-salt.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.very-big-len.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_256_256.zero-len.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_512_256.good.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_512_512.good.p12 D crypto/openssl/test/recipes/80-test_pkcs12_data/pbmac1_sha1_hmac_and_prf.p12 D crypto/openssl/test/recipes/80-test_policy_tree.t D crypto/openssl/test/recipes/80-test_policy_tree_data/large_leaf.pem D crypto/openssl/test/recipes/80-test_policy_tree_data/large_policy_tree.pem D crypto/openssl/test/recipes/80-test_policy_tree_data/small_leaf.pem D crypto/openssl/test/recipes/80-test_policy_tree_data/small_policy_tree.pem D crypto/openssl/test/recipes/80-test_ssl_new.t D crypto/openssl/test/recipes/80-test_ssl_old.t D crypto/openssl/test/recipes/80-test_ssl_old_data/dsa2048.pem D crypto/openssl/test/recipes/80-test_ssl_test_ctx.t D crypto/openssl/test/recipes/80-test_sslcorrupt.t D crypto/openssl/test/recipes/80-test_tsa.t D crypto/openssl/test/recipes/80-test_tsa_data/all-zero.tsq D crypto/openssl/test/recipes/80-test_tsa_data/comodo-aaa.pem D crypto/openssl/test/recipes/80-test_tsa_data/sectigo-all-zero.tsr D crypto/openssl/test/recipes/80-test_tsa_data/sectigo-signer.pem D crypto/openssl/test/recipes/80-test_tsa_data/sectigo-time-stamping-ca.pem D crypto/openssl/test/recipes/80-test_tsa_data/user-trust-ca-aaa.pem D crypto/openssl/test/recipes/80-test_tsa_data/user-trust-ca.pem D crypto/openssl/test/recipes/80-test_x509aux.t D crypto/openssl/test/recipes/81-test_cmp_cli.t D crypto/openssl/test/recipes/82-test_ocsp_cert_chain.t D crypto/openssl/test/recipes/82-test_tfo_cli.t D crypto/openssl/test/recipes/90-test_asn1_time.t D crypto/openssl/test/recipes/90-test_async.t D crypto/openssl/test/recipes/90-test_bio_base64.t D crypto/openssl/test/recipes/90-test_bio_enc.t D crypto/openssl/test/recipes/90-test_bio_memleak.t D crypto/openssl/test/recipes/90-test_cert_comp.t D crypto/openssl/test/recipes/90-test_constant_time.t D crypto/openssl/test/recipes/90-test_fatalerr.t D crypto/openssl/test/recipes/90-test_fipsload.t D crypto/openssl/test/recipes/90-test_gmdiff.t D crypto/openssl/test/recipes/90-test_gost_data/server-cert2001.pem D crypto/openssl/test/recipes/90-test_gost_data/server-cert2012.pem D crypto/openssl/test/recipes/90-test_gost_data/server-key2001.pem D crypto/openssl/test/recipes/90-test_gost_data/server-key2012.pem D crypto/openssl/test/recipes/90-test_ige.t D crypto/openssl/test/recipes/90-test_includes.t D crypto/openssl/test/recipes/90-test_includes_data/conf-includes-prov/inc-default.cnf D crypto/openssl/test/recipes/90-test_includes_data/conf-includes-prov/inc-legacy.cnf D crypto/openssl/test/recipes/90-test_includes_data/conf-includes/includes1.cnf D crypto/openssl/test/recipes/90-test_includes_data/conf-includes/includes2.cnf D crypto/openssl/test/recipes/90-test_includes_data/incdir.cnf D crypto/openssl/test/recipes/90-test_includes_data/includes-broken.cnf D crypto/openssl/test/recipes/90-test_includes_data/includes-eq-ws.cnf D crypto/openssl/test/recipes/90-test_includes_data/includes-eq.cnf D crypto/openssl/test/recipes/90-test_includes_data/includes-file.cnf D crypto/openssl/test/recipes/90-test_includes_data/includes-prov-dir.cnf D crypto/openssl/test/recipes/90-test_includes_data/includes.cnf D crypto/openssl/test/recipes/90-test_includes_data/vms-includes-file.cnf D crypto/openssl/test/recipes/90-test_includes_data/vms-includes.cnf D crypto/openssl/test/recipes/90-test_memleak.t D crypto/openssl/test/recipes/90-test_overhead.t D crypto/openssl/test/recipes/90-test_quicfaults.t D crypto/openssl/test/recipes/90-test_rpk.t D crypto/openssl/test/recipes/90-test_secmem.t D crypto/openssl/test/recipes/90-test_shlibload.t D crypto/openssl/test/recipes/90-test_srp.t D crypto/openssl/test/recipes/90-test_sslapi.t D crypto/openssl/test/recipes/90-test_sslapi_data/dhparams.pem D crypto/openssl/test/recipes/90-test_sslapi_data/passwd.txt D crypto/openssl/test/recipes/90-test_sslapi_data/ssltraceref-zlib.txt D crypto/openssl/test/recipes/90-test_sslapi_data/ssltraceref.txt D crypto/openssl/test/recipes/90-test_sslbuffers.t D crypto/openssl/test/recipes/90-test_store.t D crypto/openssl/test/recipes/90-test_store_cases.t D crypto/openssl/test/recipes/90-test_store_cases_data/garbage-pkcs12.p12 D crypto/openssl/test/recipes/90-test_store_cases_data/test-BER.p12 D crypto/openssl/test/recipes/90-test_store_data/dsaparam.pem D crypto/openssl/test/recipes/90-test_store_data/rsa-key-2432.pem D crypto/openssl/test/recipes/90-test_store_data/testrsa.msb D crypto/openssl/test/recipes/90-test_store_data/testrsa.pvk D crypto/openssl/test/recipes/90-test_sysdefault.t D crypto/openssl/test/recipes/90-test_sysdefault_data/sysdefault-bad.cnf D crypto/openssl/test/recipes/90-test_sysdefault_data/sysdefault-ignore.cnf D crypto/openssl/test/recipes/90-test_sysdefault_data/sysdefault.cnf D crypto/openssl/test/recipes/90-test_threads.t D crypto/openssl/test/recipes/90-test_threads_data/rsakey.pem D crypto/openssl/test/recipes/90-test_threads_data/store/8489a545.0 D crypto/openssl/test/recipes/90-test_time_offset.t D crypto/openssl/test/recipes/90-test_tls13ccs.t D crypto/openssl/test/recipes/90-test_tls13encryption.t D crypto/openssl/test/recipes/90-test_tls13secrets.t D crypto/openssl/test/recipes/90-test_trace_api.t D crypto/openssl/test/recipes/90-test_v3name.t D crypto/openssl/test/recipes/91-test_pkey_check.t D crypto/openssl/test/recipes/91-test_pkey_check_data/dhpkey.pem D crypto/openssl/test/recipes/91-test_pkey_check_data/dsapub.pem D crypto/openssl/test/recipes/91-test_pkey_check_data/dsapub_noparam.der D crypto/openssl/test/recipes/91-test_pkey_check_data/ec_p256_bad_0.pem D crypto/openssl/test/recipes/91-test_pkey_check_data/ec_p256_bad_1.pem D crypto/openssl/test/recipes/91-test_pkey_check_data/rsapub_17k.pem D crypto/openssl/test/recipes/91-test_pkey_check_data/sm2_bad_0.pem D crypto/openssl/test/recipes/91-test_pkey_check_data/sm2_bad_1.pem D crypto/openssl/test/recipes/91-test_pkey_check_data/sm2_bad_neg1.pem D crypto/openssl/test/recipes/95-test_external_cf_quiche.t D crypto/openssl/test/recipes/95-test_external_cf_quiche_data/quiche-build.sh D crypto/openssl/test/recipes/95-test_external_cf_quiche_data/quiche-server.sh D crypto/openssl/test/recipes/95-test_external_gost_engine.t D crypto/openssl/test/recipes/95-test_external_gost_engine_data/gost_engine.sh D crypto/openssl/test/recipes/95-test_external_krb5.t D crypto/openssl/test/recipes/95-test_external_krb5_data/krb5.sh D crypto/openssl/test/recipes/95-test_external_oqsprovider.t D crypto/openssl/test/recipes/95-test_external_oqsprovider_data/oqsprovider-ca.sh D crypto/openssl/test/recipes/95-test_external_oqsprovider_data/oqsprovider.sh D crypto/openssl/test/recipes/95-test_external_pkcs11_provider.t D crypto/openssl/test/recipes/95-test_external_pkcs11_provider_data/pkcs11-provider.sh D crypto/openssl/test/recipes/95-test_external_pyca.t D crypto/openssl/test/recipes/95-test_external_pyca_data/cryptography.sh D crypto/openssl/test/recipes/95-test_external_tlsfuzzer.t D crypto/openssl/test/recipes/95-test_external_tlsfuzzer_data/cert.json.in D crypto/openssl/test/recipes/95-test_external_tlsfuzzer_data/tls-fuzzer-cert.sh D crypto/openssl/test/recipes/95-test_external_tlsfuzzer_data/tlsfuzzer.sh D crypto/openssl/test/recipes/99-test_ecstress.t D crypto/openssl/test/recipes/99-test_fuzz_acert.t D crypto/openssl/test/recipes/99-test_fuzz_asn1.t D crypto/openssl/test/recipes/99-test_fuzz_asn1parse.t D crypto/openssl/test/recipes/99-test_fuzz_bignum.t D crypto/openssl/test/recipes/99-test_fuzz_bndiv.t D crypto/openssl/test/recipes/99-test_fuzz_client.t D crypto/openssl/test/recipes/99-test_fuzz_cmp.t D crypto/openssl/test/recipes/99-test_fuzz_cms.t D crypto/openssl/test/recipes/99-test_fuzz_conf.t D crypto/openssl/test/recipes/99-test_fuzz_crl.t D crypto/openssl/test/recipes/99-test_fuzz_ct.t D crypto/openssl/test/recipes/99-test_fuzz_decoder.t D crypto/openssl/test/recipes/99-test_fuzz_dtlsclient.t D crypto/openssl/test/recipes/99-test_fuzz_dtlsserver.t D crypto/openssl/test/recipes/99-test_fuzz_hashtable.t D crypto/openssl/test/recipes/99-test_fuzz_ml-dsa.t D crypto/openssl/test/recipes/99-test_fuzz_ml-kem.t D crypto/openssl/test/recipes/99-test_fuzz_pem.t D crypto/openssl/test/recipes/99-test_fuzz_provider.t D crypto/openssl/test/recipes/99-test_fuzz_punycode.t D crypto/openssl/test/recipes/99-test_fuzz_quic_client.t D crypto/openssl/test/recipes/99-test_fuzz_quic_lcidm.t D crypto/openssl/test/recipes/99-test_fuzz_quic_rcidm.t D crypto/openssl/test/recipes/99-test_fuzz_quic_server.t D crypto/openssl/test/recipes/99-test_fuzz_quic_srtm.t D crypto/openssl/test/recipes/99-test_fuzz_server.t D crypto/openssl/test/recipes/99-test_fuzz_sl-dsa.t D crypto/openssl/test/recipes/99-test_fuzz_smime.t D crypto/openssl/test/recipes/99-test_fuzz_v3name.t D crypto/openssl/test/recipes/99-test_fuzz_x509.t D crypto/openssl/test/recipes/fuzz.pl D crypto/openssl/test/recipes/ocsp-response.der D crypto/openssl/test/recipes/tconversion.pl M crypto/openssl/test/recordlentest.c M crypto/openssl/test/sparse_array_test.c M crypto/openssl/test/sslapitest.c M crypto/openssl/test/x509_req_test.c M crypto/openssl/util/missingcrypto-internal.txt M crypto/openssl/util/missingcrypto.txt M crypto/openssl/util/perl/OpenSSL/Test.pm M crypto/openssl/util/perl/OpenSSL/paramnames.pm _____________________________________________________________________________________________________________ Commit: 98329e26a7f15d0e0b0da0eb47f9106dd4aa2352 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=98329e26a7f15d0e0b0da0eb47f9106dd4aa2352 Author: Enji Cooper (Sun 6 Sep 2026 23:22:50 BST) Committer: Enji Cooper (Thu 1 Oct 2026 07:10:14 BST) asmc.4: clean up/modernize manpage - sysutils/ataidle is no more: it was superseded by camcontrol(8). - Sort the models table alphabetically. - Use the SPDX License ID instead of the longhand licensing tort in the manpage header. - Note that the driver has been heavily modified in 15.1 and later to support additional platforms and functionality. - Trim down SYNOPSIS. MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D59470 (cherry picked from commit 7a039603a49db09fa574b4365ba36c92b7658868) M share/man/man4/asmc.4 _____________________________________________________________________________________________________________ Commit: a30ea6460ac63110312030db5f0a372eeb4507b6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a30ea6460ac63110312030db5f0a372eeb4507b6 Author: Konstantin Belousov (Tue 22 Sep 2026 17:30:11 BST) Committer: Konstantin Belousov (Wed 30 Sep 2026 22:37:19 BST) VFS: style (cherry picked from commit e40c72c823c6502906d4024933f0c119b5ca17cf) M sys/fs/nullfs/null_vfsops.c M sys/kern/vfs_cache.c M sys/kern/vfs_mount.c M sys/kern/vfs_subr.c _____________________________________________________________________________________________________________ Commit: 592ed51533a2e333efbe48277af9b6530de139d6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=592ed51533a2e333efbe48277af9b6530de139d6 Author: Konstantin Belousov (Sun 20 Sep 2026 04:22:39 BST) Committer: Konstantin Belousov (Wed 30 Sep 2026 22:37:19 BST) VFS: require locked vnode for fsync() (cherry picked from commit 30ad8440b46838b050360ed87e6165a067f1cf8a) M sys/kern/vfs_subr.c M sys/kern/vnode_if.src _____________________________________________________________________________________________________________ Commit: c363f72719373c5dfd304929967112a036c89ba4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c363f72719373c5dfd304929967112a036c89ba4 Author: Konstantin Belousov (Sun 20 Sep 2026 11:27:07 BST) Committer: Konstantin Belousov (Wed 30 Sep 2026 22:37:19 BST) filesystems: use g_vfs_close_unlocked(9) (cherry picked from commit 53edaad235c86e4426e97d63be48f0160bcc5267) M sys/fs/cd9660/cd9660_vfsops.c M sys/fs/ext2fs/ext2_vfsops.c M sys/fs/msdosfs/msdosfs_vfsops.c M sys/fs/udf/udf_vfsops.c M sys/ufs/ffs/ffs_vfsops.c _____________________________________________________________________________________________________________ Commit: 430287781dea25174e34fc9834143e7e2d30c4c3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=430287781dea25174e34fc9834143e7e2d30c4c3 Author: Konstantin Belousov (Sun 20 Sep 2026 11:27:07 BST) Committer: Konstantin Belousov (Wed 30 Sep 2026 22:37:18 BST) g_vfs_close_unlocked(9): wrapper around g_vfs_close(9) (cherry picked from commit 87962e08fa18797103c96c17fd8c88ada056e0c0) M sys/geom/geom_vfs.c M sys/geom/geom_vfs.h _____________________________________________________________________________________________________________ Commit: 63b3fdee04163d2b95203e262f7a994d57cff0a2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=63b3fdee04163d2b95203e262f7a994d57cff0a2 Author: Alexander Leidinger (Tue 25 Aug 2026 19:55:26 BST) Committer: Alexander Leidinger (Wed 30 Sep 2026 18:06:49 BST) hwpmc tests: the sampling log file Nine ATF cases covering PMC_OP_CONFIGURELOG and the descriptor-less log operations: which descriptors are accepted, when a log is required in the first place, and what the log operations do without one. MFC after: 1 month MFC to: stable/15 MFC to: stable/14 Assisted-by: Claude Code (Opus 5) (cherry picked from commit 8f0789bee7abb2fdb2ff6d625f254533a138e6e8) M tests/sys/pmc/Makefile A tests/sys/pmc/pmc_log_test.c _____________________________________________________________________________________________________________ Commit: 913328f5c7843e47635ef53604de088fa58ec955 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=913328f5c7843e47635ef53604de088fa58ec955 Author: Alexander Leidinger (Tue 25 Aug 2026 19:55:25 BST) Committer: Alexander Leidinger (Wed 30 Sep 2026 18:06:49 BST) hwpmc: add credential-transition exec tests (keep and drop) The companion to pmc_exec_test.c, which covers only the drop side of a credential-changing exec. Three cases cover what the drop must not overreach into: an exec that changes no credentials keeps the PMC, a set-id exec whose credential change the kernel suppresses for a traced target keeps it too, and a set-id fexecve(2) drops it. They exercise the permission logic FreeBSD-SA-26:56.hwpmc reworked, not the defect it fixed. All three pass on a debug (INVARIANTS+WITNESS) kernel. The two keep-cases were each observed to fail on a kernel mutated to detach unconditionally. MFC after: 1 month MFC to: stable/15 MFC to: stable/14 Assisted-by: Claude Code (Opus 4.8) (cherry picked from commit bea7b932b9eeaff39393347e0600b982fd859a92) M tests/sys/pmc/Makefile A tests/sys/pmc/pmc_credexec_test.c _____________________________________________________________________________________________________________ Commit: 7fc003779456c0af02910d7941e943772f7f0e57 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7fc003779456c0af02910d7941e943772f7f0e57 Author: Alexander Leidinger (Tue 25 Aug 2026 19:55:24 BST) Committer: Alexander Leidinger (Wed 30 Sep 2026 18:06:48 BST) hwpmc tests: process-attachment lifecycle and ownership cases Seven ATF cases covering process-attachment teardown orderings: a target that exits before it is detached, the owner that exits before its target (hwpmc's other unlink path), releasing a still-running attached PMC, row exhaustion with out-of-order release, and PMC_F_DESCENDANTS inheritance including a fork storm. All pass on a debug (INVARIANTS+WITNESS) and a KASAN kernel. MFC after: 1 month MFC to: stable/15 MFC to: stable/14 Assisted-by: Claude Code (Opus 5) (cherry picked from commit d00da14532bc4408f3e66535c88276d00905af7c) M tests/sys/pmc/Makefile A tests/sys/pmc/pmc_lifecycle_test.c _____________________________________________________________________________________________________________ Commit: 24b4ea09496d715c6848925d0bf097893844465f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=24b4ea09496d715c6848925d0bf097893844465f Author: Alexander Leidinger (Tue 25 Aug 2026 19:55:23 BST) Committer: Alexander Leidinger (Wed 30 Sep 2026 18:06:47 BST) hwpmc: add tests for handle validation and the privilege boundaries A pmc_id_t is a packed integer that the driver hands to userland and accepts back on eleven operations, and nothing tested what happens when one comes back forged, stale, or belonging to another process. Neither was there a test that an unprivileged caller is refused the operations that need a privilege. The cases use a SOFT-class PMC wherever the counter itself does not matter, so they run on a machine with no PMU. MFC after: 1 month MFC to: stable/15 MFC to: stable/14 Assisted-by: Claude Code (Opus 5) (cherry picked from commit 17fca802ded118102d04a7a0bbc0c076de18c4d8) M tests/sys/pmc/Makefile A tests/sys/pmc/pmc_api_test.c _____________________________________________________________________________________________________________ Commit: 8ba25f084d0470a655b1ddf07e489ebb8c9b15cc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8ba25f084d0470a655b1ddf07e489ebb8c9b15cc Author: Alexander Leidinger (Tue 25 Aug 2026 19:55:22 BST) Committer: Alexander Leidinger (Wed 30 Sep 2026 18:06:47 BST) hwpmc: add regression tests for a credential-changing exec This tests what FreeBSD-SA-26:56.hwpmc fixed. exec_setgid_drops_pmc asserts the kernel takes a process-mode PMC away when its target execs a set-gid program its owner is not entitled to trace. exec_setuid_no_double_unlink lets the target exec a set-uid program; the teardown must unlink the process descriptor exactly once, and completing at all is the assertion. Both need an unprivileged owner and must not drop privileges themselves, since p_candebug() would then refuse the target to its own owner; they ask for require.user instead. MFC after: 1 month MFC to: stable/15 MFC to: stable/14 Assisted-by: Claude Code (Opus 5) (cherry picked from commit 068957e040f40eb7f484b2530481f3eae02f9d44) M tests/sys/pmc/Makefile A tests/sys/pmc/pmc_exec_test.c _____________________________________________________________________________________________________________ Commit: 299197df10be4449ae97fb7082e6d2e92c197d53 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=299197df10be4449ae97fb7082e6d2e92c197d53 Author: Alexander Leidinger (Wed 26 Aug 2026 14:26:36 BST) Committer: Alexander Leidinger (Wed 30 Sep 2026 18:06:37 BST) hwpmc tests: sort the list of test programs MFC after: 1 month MFC to: stable/15 MFC to: stable/14 (cherry picked from commit df537ff1520d82410328ebd6de529929dae620a6) M tests/sys/pmc/Makefile _____________________________________________________________________________________________________________ Commit: cb826c230d1b5abb684d8d00c96b8a6efcd56171 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cb826c230d1b5abb684d8d00c96b8a6efcd56171 Author: Piotr Kubaj (Wed 30 Sep 2026 14:09:28 BST) Committer: Piotr Kubaj (Wed 30 Sep 2026 14:09:28 BST) powerpc/radix: fix build void* casting is still necessary on stable/1{4,5} due to it being removed only in fe3e92e6868dce2ed94c98428b8df1f27ed3ef63. Fixes: 107212618921 Approved by: jhibbits M sys/powerpc/aim/mmu_radix.c _____________________________________________________________________________________________________________ Commit: 092ac40a65d199dbf718a1cc51769527c27a6c9c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=092ac40a65d199dbf718a1cc51769527c27a6c9c Author: Sumit Saxena (Mon 15 Jun 2026 15:30:26 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:32 BST) if_bnxt: add few source files to version control Commits- f85e66e655c9 ("if_bnxt/bnxt_re: add support for driver snapdump") and 03839879a2dd ("if_bnxt: Add Firmware crashdump collection support") missed to add few files under version control, those files are added now: sys/dev/bnxt/bnxt_en/bnxt_log.c sys/dev/bnxt/bnxt_en/bnxt_log.h sys/dev/bnxt/bnxt_en/bnxt_log_data.c sys/dev/bnxt/bnxt_en/bnxt_log_data.h sys/dev/bnxt/bnxt_en/bnxt_coredump.c sys/dev/bnxt/bnxt_en/bnxt_coredump.h bnxt_coredump.c entry is added in sys/conf/files as well. Fixes: f85e66e655c9 ("if_bnxt/bnxt_re: add support for driver snapdump") Fixes: 03839879a2dd ("if_bnxt: Add Firmware crashdump collection support") (cherry picked from commit 9931dc5bf3831146c08a381c42ecbfcedb8ac7f1) M sys/conf/files A sys/dev/bnxt/bnxt_en/bnxt_coredump.c A sys/dev/bnxt/bnxt_en/bnxt_coredump.h A sys/dev/bnxt/bnxt_en/bnxt_log.c A sys/dev/bnxt/bnxt_en/bnxt_log.h A sys/dev/bnxt/bnxt_en/bnxt_log_data.c A sys/dev/bnxt/bnxt_en/bnxt_log_data.h _____________________________________________________________________________________________________________ Commit: 0f7f6c5217c004b62f9c1819bb94906a066530e4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0f7f6c5217c004b62f9c1819bb94906a066530e4 Author: Sumit Saxena (Mon 15 Jun 2026 13:22:25 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:32 BST) if_bnxt: add bnxt logger module files to sys/conf/files for built-in kernel builds The bnxt snapdump and coredump support patches added bnxt_log/{_data}.c. and listed it in sys/modules/bnxt/bnxt_en/Makefile, but missed to add these files in sys/conf/files. Fix up the issue by adding bnxt_log/{_data}.c in sys/conf/files. Fixes: f85e66e655c9 ("if_bnxt/bnxt_re: add support for driver snapdump") (cherry picked from commit 03676cafa882c471a29436aae76c8751d451dd07) M sys/conf/files _____________________________________________________________________________________________________________ Commit: 79266f8d86bfe50a5ce16f6610b2d02db2f9a5bd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=79266f8d86bfe50a5ce16f6610b2d02db2f9a5bd Author: Sreekanth Reddy (Mon 15 Jun 2026 10:49:40 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:32 BST) if_bnxt: Add support for HWRM passthrough with multiple DMA buffers Added support for HWRM passthrough commands with multiple DMA buffers. Also, changed the mgmt_lock to sleepable exclusive lock. MFC after: 2 weeks Reviewed by: gallatin, ssaxena Differential Revision: https://reviews.freebsd.org/D56686 (cherry picked from commit 9d87ca8b9f60bdec0bbc1733920df250a08beb0c) M sys/dev/bnxt/bnxt_en/bnxt.h M sys/dev/bnxt/bnxt_en/bnxt_mgmt.c _____________________________________________________________________________________________________________ Commit: 924dc9443f6be4939131a7b12dce95e081c411ed URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=924dc9443f6be4939131a7b12dce95e081c411ed Author: Sreekanth Reddy (Mon 15 Jun 2026 10:48:34 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:31 BST) if_bnxt: Fix the Unknown command 0x80000000 ioctl command error With the latest niccli version, user will observe below Unknown command command error when try to list the devices. if_bnxt: Unknown command 0x80000000 Here, niccli is issuing command opcode as 0x80000000 but driver is expecting 0x20000000 command opcode. So, replaced _IOW(0,0,0) with the _IOC(IOC_IN,0,0,0). Fixes: d53d7b4 ("bnxt: Fix up ioctl opcodes to support IOC_VOID along with IOC_IN") MFC after: 2 weeks Reviewed by: gallatin, ssaxena Differential Revision: https://reviews.freebsd.org/D56685 (cherry picked from commit 3987058a3a943c461c27dbebf10dad555b1bb2fa) M sys/dev/bnxt/bnxt_en/bnxt_mgmt.h _____________________________________________________________________________________________________________ Commit: d759300b093782dc7477a0e1d6a5237efa095bd6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d759300b093782dc7477a0e1d6a5237efa095bd6 Author: Sreekanth Reddy (Mon 15 Jun 2026 10:46:51 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:31 BST) if_bnxt: Add Firmware crashdump collection support This patch adds support for DDR-based firmware coredump memory handling. It detects firmware coredump capability, allocates host DDR (DMA) memory for crash dumps, and programs the firmware with the allocated memory during attach. The allocated memory is released during driver detach. Also, This patch adds functions to retrieve crash dump data from host DDR memory. The implementation handles data copying from page tables and checks dump availability. Main function bnxt_get_coredump() copies stored crash dump data from DDR memory to the application buffer. MFC after: 2 weeks Reviewed by: gallatin, ssaxena Differential Revision: https://reviews.freebsd.org/D56684 (cherry picked from commit 03839879a2dd2505eab80b99211b0637ebdc9d32) M sys/dev/bnxt/bnxt_en/bnxt.h M sys/dev/bnxt/bnxt_en/bnxt_hwrm.c M sys/dev/bnxt/bnxt_en/bnxt_mgmt.c M sys/dev/bnxt/bnxt_en/bnxt_mgmt.h M sys/dev/bnxt/bnxt_en/if_bnxt.c M sys/modules/bnxt/bnxt_en/Makefile _____________________________________________________________________________________________________________ Commit: 7d09d4088538e9634b6585957a65319d55b623bc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7d09d4088538e9634b6585957a65319d55b623bc Author: Sreekanth Reddy (Mon 15 Jun 2026 10:43:01 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:31 BST) if_bnxt/bnxt_re: Update hsi headers Update hsi headers MFC after: 2 weeks Reviewed by: gallatin, ssaxena Differential Revision: https://reviews.freebsd.org/D56683 (cherry picked from commit 308784bebe796cbdaccf7ef259caf7d87f874d02) M sys/dev/bnxt/bnxt_en/hsi_struct_def.h M sys/dev/bnxt/bnxt_re/qplib_fp.c M sys/dev/bnxt/bnxt_re/qplib_fp.h _____________________________________________________________________________________________________________ Commit: e94c0739d021396b7d5c930160668d9777bebbc5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e94c0739d021396b7d5c930160668d9777bebbc5 Author: Sreekanth Reddy (Mon 15 Jun 2026 10:40:30 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:31 BST) if_bnxt/bnxt_re: add support for driver snapdump Add a logging module which helps to log and collect the driver`s various events and state of device data structures. APIs help modules like l2, RoCE etc. to register and add logs into thg buffers. A segment header is added to the data available in buffers. The final log messages are arranged in following fashion |SegHeader0|Data0|SegHeader1|Data1| Logging module provides two different kinds of buffers: a) A large contiguous memory chunk is used to form circular buffers. Module need to provide a number of buffers while registering to the logging module.Please note that, since memory for the buffers remains with the module as long as it is registered, memory footprints of the driver could be higher so the modules should allocate an appropriate number of buffers. Also, due to limited space, modules should only log important events/messages into the buffer. Modules must use bnxt_log_add_mssg() to add the message into the list. b) Live buffer - They are allocated during coredump retrieval and freed after the coredump data is returned to the user. This helps to collect live data from the driver. Modules must use the bnxt_log_live() function to add the log messages. When coredump is retrieved all the messages available in above buffers are copied into the coredump buffer. Test Plan: Generate the coredump using below niccli command ./niccli.freebsd -i 1 debug --coredump and then verify the coredump contents using the Broadcom's Coredump decoder. MFC after: 2 weeks Reviewed by: gallatin, ssaxena Differential Revision: https://reviews.freebsd.org/D56682 (cherry picked from commit f85e66e655c9293ea049814e21ed67ab246a7305) M sys/dev/bnxt/bnxt_en/bnxt.h M sys/dev/bnxt/bnxt_en/bnxt_mgmt.c M sys/dev/bnxt/bnxt_en/bnxt_mgmt.h M sys/dev/bnxt/bnxt_en/bnxt_ulp.c M sys/dev/bnxt/bnxt_en/bnxt_ulp.h M sys/dev/bnxt/bnxt_en/if_bnxt.c M sys/dev/bnxt/bnxt_re/main.c M sys/modules/bnxt/bnxt_en/Makefile _____________________________________________________________________________________________________________ Commit: 2d5cdcc14fa91cc1c9e0d69298d36b04f75a646a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2d5cdcc14fa91cc1c9e0d69298d36b04f75a646a Author: Sumit Saxena (Fri 9 Jan 2026 10:28:53 GMT) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:31 BST) bnxt: Fix up ioctl opcodes to support IOC_VOID along with IOC_IN The driver and applications currently use hard-coded numeric ioctl command opcodes. These opcodes are interpreted as having the IOC_IN direction (data copied from the user application to the driver), regardless of the actual packet size. Consequently, when the packet size is zero and the direction is set to IOC_IN, the kernel fails these ioctls if COMPAT is disabled. While the driver and applications should ideally set the direction correctly— for example, using IOC_VOID when the packet size is zero—the driver will now be updated to define ioctl opcodes using the _IOC macro to support both IOC_VOID and IOC_IN. This change ensures backward compatibility with older applications that exclusively use IOC_IN. Reviewed by: gallatin Differential Revision: https://reviews.freebsd.org/D54601 MFC after: 3 days (cherry picked from commit d53d7b466016408229491cfd2f8bdc742ff642e3) M sys/dev/bnxt/bnxt_en/bnxt_mgmt.c M sys/dev/bnxt/bnxt_en/bnxt_mgmt.h _____________________________________________________________________________________________________________ Commit: 6f12a32d1e8b76f9455730695a20cef47d8d7b52 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6f12a32d1e8b76f9455730695a20cef47d8d7b52 Author: Andrew Gallatin (Fri 29 May 2026 13:52:44 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:31 BST) bnxt: Fix build / load error for bnxt(4) in kernels without PCI_IOV This change removes the hard-forcing of PCI_IOV and adds shims to allow the driver to compile and work when the kernel is missing PCI_IOV support. Fixes: 7c450d1127c7 Reviewed by: sumit.saxena_broadcom.com Differential Revision: https://reviews.freebsd.org/D57300 Sponsored by: Netflix (cherry picked from commit 3118f1b99f23431235c202d9aadbe3d183bcc259) M sys/dev/bnxt/bnxt_en/bnxt_sriov.c M sys/dev/bnxt/bnxt_en/bnxt_sriov.h M sys/dev/bnxt/bnxt_en/if_bnxt.c _____________________________________________________________________________________________________________ Commit: 911c050e7968215c2b1fec25bce6af7678d68e67 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=911c050e7968215c2b1fec25bce6af7678d68e67 Author: Chandrakanth Patil (Sun 26 Apr 2026 19:11:31 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:30 BST) bnxt_en: Address review comments for core SR-IOV support This patch addresses the code review comments provided for: https://reviews.freebsd.org/D56197 * P7 VF PCI ID: rename NETXTREME_E_P7_VF to E_P7_VF (P7/Thor2 line drops the Netxtreme name in product strings; other VF device IDs are unchanged). * Use the return value of bnxt_vf_parse_schema() in bnxt_iov_vf_add() to decide when to call bnxt_set_vf_admin_mac(); make parse_schema() return bool and remove the has_admin_mac field. * In bnxt_free_vf_resources(), fix indentation after dma_free_coherent() so the NULL assignment is clearly separate from the call. * In bnxt_hwrm_func_vf_resource_free(), use first_vf_id/last_vf_id in the HWRM_FUNC_VF_RESC_FREE loop. MFC after: 1 month Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D56644 (cherry picked from commit 7c450d1127c7f08361f848c0ac57189910da8d3b) M sys/dev/bnxt/bnxt_en/bnxt.h M sys/dev/bnxt/bnxt_en/bnxt_sriov.c M sys/dev/bnxt/bnxt_en/bnxt_sriov.h M sys/dev/bnxt/bnxt_en/if_bnxt.c _____________________________________________________________________________________________________________ Commit: da10771fff2642bf1ed4d2d861081492e20f00c5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=da10771fff2642bf1ed4d2d861081492e20f00c5 Author: Chandrakanth Patil (Fri 3 Apr 2026 00:04:45 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:30 BST) bnxt_en: VF ring reservation, HWRM registration, and PF-only operation guards VFs require separate HWRM commands for ring reservation and async completion ring setup, so a common PF/VF dispatcher is introduced and the async CR path is extended to handle both. The PF must populate the VF request forwarding bitmap during driver registration so the firmware correctly forwards VF-originated HWRM commands. VF reservation strategy and min-guaranteed capability flags are now parsed for correct resource partitioning, and PF-only operations (DCB, NVM, package version sysctl) are guarded against VF invocation. The short command buffer allocation is also reordered before the function reset to ensure extended HWRM messages are available when needed, a prerequisite uncovered during VF bring-up. MFC after: 1 month Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D56232 (cherry picked from commit c972c5acbac472a5dc797856f39f478862b6c6ea) M sys/dev/bnxt/bnxt_en/bnxt.h M sys/dev/bnxt/bnxt_en/bnxt_dcb.c M sys/dev/bnxt/bnxt_en/bnxt_hwrm.c M sys/dev/bnxt/bnxt_en/bnxt_hwrm.h M sys/dev/bnxt/bnxt_en/bnxt_sysctl.c M sys/dev/bnxt/bnxt_en/if_bnxt.c _____________________________________________________________________________________________________________ Commit: ae84473dece1233c7dba3cd4a351d769b25d7084 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ae84473dece1233c7dba3cd4a351d769b25d7084 Author: Chandrakanth Patil (Tue 31 Mar 2026 17:59:02 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:30 BST) bnxt_en: Re-enable SR-IOV after firmware reset When the firmware undergoes a hot-reset and the driver re-opens the device, previously active Virtual Functions lose their resource configuration. bnxt_reenable_sriov() restores that configuration by replaying bnxt_cfg_hw_sriov() with the saved resource parameters. The function is called from bnxt_fw_reset_task() in the BNXT_FW_RESET_STATE_OPENING state, guarded by #ifdef PCI_IOV. Because bnxt_cfg_hw_sriov() is a no-op when active_vfs is zero the call is safe on any PF regardless of whether VFs were ever created. MFC after: 1 month Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D56201 (cherry picked from commit 8743209350cb4b7db6d367df99da0a7ae3bc5d39) M sys/dev/bnxt/bnxt_en/bnxt_sriov.c M sys/dev/bnxt/bnxt_en/if_bnxt.c _____________________________________________________________________________________________________________ Commit: 93970927e284a3541b4e3252d21f23eea6cdfc88 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=93970927e284a3541b4e3252d21f23eea6cdfc88 Author: Chandrakanth Patil (Tue 31 Mar 2026 17:59:01 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:30 BST) bnxt_en: Add per-VF trust, spoof-check and promiscuous controls Expose per-VF policy knobs via the FreeBSD sysctl tree and enforce them at the data-path level. Trust (dev.bnxt..vfN.trusted): bnxt_set_vf_trust() sets/clears BNXT_VF_TRUST and sends HWRM_FUNC_CFG with FLAGS_TRUSTED_VF_ENABLE/DISABLE. bnxt_create_trusted_vf_sysctls() / bnxt_destroy_trusted_vf_sysctls() manage the sysctl lifetime with VF creation/teardown. Spoof-check (dev.bnxt..vfN.spoofchk): bnxt_set_vf_spoofchk() issues HWRM_FUNC_CFG with SRC_MAC_ADDR_CHECK_ENABLE/DISABLE. Promiscuous gating: bnxt_is_trusted_vf() queries firmware via HWRM_FUNC_QCFG. bnxt_promisc_ok() returns false for untrusted VFs, preventing them from entering promiscuous mode. bnxt_promisc_set() is updated to gate the PROMISCUOUS and ANYVLAN_NONVLAN mask bits on bnxt_promisc_ok(). bnxt_iov_vf_add() applies the initial trust/spoof-check policy from the nvlist schema. bnxt_iov_init() creates the sysctl trees after bnxt_cfg_hw_sriov() succeeds. bnxt_iov_uninit() tears them down. MFC after: 1 month Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D56200 (cherry picked from commit ea4ab7e36ed9cf153c374782be446254a7d11822) M sys/dev/bnxt/bnxt_en/bnxt_sriov.c M sys/dev/bnxt/bnxt_en/if_bnxt.c _____________________________________________________________________________________________________________ Commit: 5d4cb14adfb3d6e552deec8d66f224ddc2fd6c4b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5d4cb14adfb3d6e552deec8d66f224ddc2fd6c4b Author: Chandrakanth Patil (Tue 31 Mar 2026 17:59:01 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:30 BST) bnxt_en: Add VF forwarded HWRM request handling Enable the Physical Function to proxy HWRM commands issued by Virtual Functions through the firmware forwarded-request mechanism. When a VF issues a command that requires PF arbitration, the firmware delivers a CMPL_BASE_TYPE_HWRM_FWD_REQ completion to the PF async ring. * bnxt_process_async_msg() recognises CMPL_BASE_TYPE_HWRM_FWD_REQ, identifies the originating VF by its firmware function ID, sets the corresponding bit in pf.vf_event_bmap, and raises BNXT_HWRM_EXEC_FWD_REQ_SP_EVENT to schedule deferred processing. * bnxt_sp_task() dispatches to bnxt_hwrm_exec_fwd_req(), which iterates over all pending VF bits and calls bnxt_vf_req_validate_snd() for each. * bnxt_vf_req_validate_snd() inspects the encapsulated request type: HWRM_FUNC_VF_CFG (MAC change) is handled by bnxt_vf_configure_mac() which enforces trust/existing-MAC rules; HWRM_CFA_L2_FILTER_ALLOC is handled by bnxt_vf_validate_set_mac(); HWRM_FUNC_CFG is forwarded as-is; all other commands are rejected. All forwarded-request code is guarded by #ifdef PCI_IOV. MFC after: 1 month Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D56199 (cherry picked from commit fcf100da9b381ad9d81f94499fdadea15ae2b431) M sys/dev/bnxt/bnxt_en/bnxt_sriov.c M sys/dev/bnxt/bnxt_en/if_bnxt.c _____________________________________________________________________________________________________________ Commit: 51ce753c50ca9e47e9b7b7d0f494e11571d90bf8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=51ce753c50ca9e47e9b7b7d0f494e11571d90bf8 Author: Chandrakanth Patil (Tue 31 Mar 2026 17:59:01 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:30 BST) bnxt_en: Add VF load path and PF/VF context differentiation Teach the driver to distinguish a Physical Function from a Virtual Function at probe time and configure each appropriately. * Introduce bnxt_is_vf_device() to identify all known VF device IDs (NetXtreme-C/E Gen1-3, Thor1/2, Hyper-V variants). Add corresponding PVID entries to bnxt_vendor_info_array. * Refactor the iflib shared context: rename bnxt_sctx_init to bnxt_sctx_template, add a Thor2-specific bnxt_sctx_template_p7, and build per-call PF/VF instances via bnxt_init_sctx_variants(); the VF instance carries IFLIB_IS_VF. bnxt_register() selects the correct sctx. * bnxt_attach_pre(): replace the hard-coded NPAR/VF switch with bnxt_set_flags_by_devid(); on a VF call bnxt_approve_mac() to request PF approval for the firmware-assigned MAC address. * bnxt_hwrm_func_qcaps(): populate fw_fid and MAC for PF and VF contexts separately; for PF call iflib_set_mac() and record max_msix_vfs; for VF handle the case where the PF has not yet assigned a MAC. * bnxt_hwrm_func_qcfg(): populate the new alloc_* counters used by the VF resource configuration path; record registered_vfs for PF and VLAN/trust state for VF. * bnxt_init(): call bnxt_update_vf_mac() on VFs after each bring-up. MFC after: 1 month Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D56198 (cherry picked from commit a5bedb41e5d6b3680981f109c3e89fb5ffd8eee1) M sys/dev/bnxt/bnxt_en/bnxt.h M sys/dev/bnxt/bnxt_en/bnxt_hwrm.c M sys/dev/bnxt/bnxt_en/bnxt_sriov.c M sys/dev/bnxt/bnxt_en/if_bnxt.c _____________________________________________________________________________________________________________ Commit: 07c9b9efa654fb2ffd570b7abcbea294e2e0418b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=07c9b9efa654fb2ffd570b7abcbea294e2e0418b Author: Chandrakanth Patil (Tue 31 Mar 2026 17:59:00 BST) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:29 BST) bnxt_en: Add core SR-IOV infrastructure Introduce the foundational building blocks for SR-IOV Virtual Function support on Broadcom NetXtreme-C/E adapters. * Add bnxt_sriov.h: defines the extended bnxt_vf_info structure (per-VF firmware FID, MAC addresses, VLAN, flags, DMA command buffers, resource counts), the bnxt_resc_map helper, flag macros (BNXT_VF_TRUST, BNXT_VF_SPOOFCHK, etc.), and prototypes for all SR-IOV functions. * Add bnxt_sriov.c: implements the SR-IOV attachment sequence (bnxt_sriov_attach), the iflib IOV callbacks (bnxt_iov_init, bnxt_iov_uninit, bnxt_iov_vf_add), VF resource allocation and firmware configuration helpers (bnxt_alloc_vf_resources, bnxt_cfg_hw_sriov, bnxt_hwrm_func_vf_resc_cfg, bnxt_hwrm_func_buf_rgtr, bnxt_hwrm_func_vf_resource_free), and the per-VF parameter helper. * Extend bnxt.h: include bnxt_sriov.h; extend bnxt_pf_info with VF- tracking fields (vf array, firmware FID/MAC, resource-reservation strategy, DMA page management, sysctl context); replace the upstream bnxt_vf_info stub with the full definition from bnxt_sriov.h; extend bnxt_func_qcfg with allocation counters required by the VF resource configuration path; add vf_resc_cfg_input and sriov_lock to bnxt_softc. * Update Makefile to build bnxt_sriov.c and include bnxt_sriov.h. * Wire up PCI-IOV device methods (pci_iov_init / pci_iov_uninit / pci_iov_add_vf) and iflib IOV callbacks (ifdi_iov_init / ifdi_iov_uninit / ifdi_iov_vf_add) in if_bnxt.c; call bnxt_sriov_attach() from bnxt_attach_post() on P5+ Physical Functions. MFC after: 1 month Reviewed by: ssaxena Differential Revision: https://reviews.freebsd.org/D56197 (cherry picked from commit f2f831b2c151a9d989a94fc7c894118c802ef348) M sys/dev/bnxt/bnxt_en/bnxt.h A sys/dev/bnxt/bnxt_en/bnxt_sriov.c A sys/dev/bnxt/bnxt_en/bnxt_sriov.h M sys/dev/bnxt/bnxt_en/if_bnxt.c M sys/modules/bnxt/bnxt_en/Makefile _____________________________________________________________________________________________________________ Commit: fb9a72c59a4a21172ffac3bfbcc011ed45c08f77 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fb9a72c59a4a21172ffac3bfbcc011ed45c08f77 Author: acazuc (Thu 27 Nov 2025 10:29:34 GMT) Committer: Sumit Saxena (Wed 30 Sep 2026 11:39:29 BST) bnxt: set hardware checksum only if required The test condition in the bnxt driver for TCP/UDP transmit hardware checksum offload is invalid: only the TCP / UDP csum bits should be tested Only the relevant ipi_csum_flags bits are now tested Reviewed by: tuexen Sponsored by: Stormshield Differential Revision: https://reviews.freebsd.org/D53941 (cherry picked from commit 2e94e1631ef517f5495e25d7fa22c95f7dca0dc6) M sys/dev/bnxt/bnxt_en/bnxt_txrx.c _____________________________________________________________________________________________________________ Commit: 107212618921492ffed84d6ea3c9a27c77aaf725 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=107212618921492ffed84d6ea3c9a27c77aaf725 Author: Piotr Kubaj (Mon 21 Sep 2026 08:45:27 BST) Committer: Piotr Kubaj (Wed 30 Sep 2026 09:05:40 BST) powerpc/radix: fix double page offset in mmu_radix_sync_icache() mmu_radix_sync_icache() adds the offset of va within its page to the physical address it gets from mmu_radix_extract_locked(). That address already includes the offset - the extract routines return the physical address of the byte, not of the frame - so the offset is counted twice and __syncicache() is handed frame + 2 * offset. The hash MMU counterpart, moea64_sync_icache(), has to add the offset because PVO_PADDR() yields only the frame. Here the addition is wrong. Fixes: 6f0b2a235a13 ("powerpc/pmap: Add pmap_sync_icache() for radix pmap") Reviewed by: jhibbits MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59870 (cherry picked from commit 9d0859637f99160e17b656df153effae3df31f8b) M sys/powerpc/aim/mmu_radix.c _____________________________________________________________________________________________________________ Commit: edb560a7ccd69440e3bcd3e00ad9b347328f1be3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=edb560a7ccd69440e3bcd3e00ad9b347328f1be3 Author: Piotr Kubaj (Wed 23 Sep 2026 14:41:27 BST) Committer: Piotr Kubaj (Wed 30 Sep 2026 09:01:27 BST) sys/powerpc/powerpc/elf64_machdep.c: enable ASLR on ELFv2 Turns out that ever since introducing ELFv2 support, it was missing ASLR, it was only used for ELFv1 processes. Reviewed by: jhibbits (via IRC #powerpc64) MFC after: 1 week (cherry picked from commit 30ed27ff2556c591a1791105d1dfe7464d3f5b80) M sys/powerpc/powerpc/elf64_machdep.c _____________________________________________________________________________________________________________ Commit: 42f9573827e9642410c4c99e42549ee7a1beca00 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=42f9573827e9642410c4c99e42549ee7a1beca00 Author: Eugene Grosbein (Sun 16 Aug 2026 09:29:20 BST) Committer: Eugene Grosbein (Wed 30 Sep 2026 06:40:13 BST) traceroute6: MFC: implement firewall evasion mode Merge implementation of "traceroute -e" to traceroute6 for TCP/UDP/SCTP. (cherry picked from commit f1cfcfb2e51ae5afa8941342ad10f650db8279c5) M usr.sbin/traceroute6/traceroute6.8 M usr.sbin/traceroute6/traceroute6.c _____________________________________________________________________________________________________________ Commit: f07c4f64bb0f74fadf85d48cb2833f7c63b0d4bd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f07c4f64bb0f74fadf85d48cb2833f7c63b0d4bd Author: Eugene Grosbein (Wed 4 Mar 2026 08:06:05 GMT) Committer: Eugene Grosbein (Wed 30 Sep 2026 06:38:33 BST) me.4: MFC: note that it is a point-to-point interface Add explicit note that me(4) works as a point-to-point pseudo device. (cherry picked from commit f69eab727edbab1385e5ffc8b3f6cb5a233f62c0) M share/man/man4/me.4 _____________________________________________________________________________________________________________ Commit: c121ed33cde56dd2bf019ffe22c47b12f134b8c9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c121ed33cde56dd2bf019ffe22c47b12f134b8c9 Author: Slava Shwartsman (Tue 22 Sep 2026 18:21:13 BST) Committer: Konstantin Belousov (Wed 30 Sep 2026 01:52:16 BST) linuxkpi: Fix double-cleanup in linux_pci_attach_device() error path (cherry picked from commit ac9c07a3e90888d69d0a524de520d4de8ae60de5) M sys/compat/linuxkpi/common/src/linux_pci.c _____________________________________________________________________________________________________________ Commit: 493231a346bcb84f078e7c50230218c2b37a87cb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=493231a346bcb84f078e7c50230218c2b37a87cb Author: Maxim Konovalov (Tue 22 Sep 2026 23:10:39 BST) Committer: Sergey A. Osokin (Wed 30 Sep 2026 00:59:59 BST) bsd-family-tree: add NetBSD 10.2 (cherry picked from commit 7b7ef798bfc56c56e80b88bc277d5c6158dcaee4) M share/misc/bsd-family-tree _____________________________________________________________________________________________________________ Commit: 1eacca685601172d18bc7d25db0d6ad1c35a3b30 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1eacca685601172d18bc7d25db0d6ad1c35a3b30 Author: Maxim Konovalov (Tue 8 Sep 2026 05:03:27 BST) Committer: Sergey A. Osokin (Wed 30 Sep 2026 00:59:33 BST) bsd-family-tree: add NetBSD 9.5 and FreeBSD 14.5 (cherry picked from commit ae458518935eee7a6dc59958f1fb9da223b873c3) M share/misc/bsd-family-tree _____________________________________________________________________________________________________________ Commit: c3e55f4b5d535b6ec7c46736a9c95295bbf0918d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c3e55f4b5d535b6ec7c46736a9c95295bbf0918d Author: Kajetan Puchalski (Fri 7 Aug 2026 12:57:02 BST) Committer: Jessica Clarke (Tue 29 Sep 2026 22:20:29 BST) bhyve: rtc_pl031: Fix PeriphID and CellID values PeriphID and CellID values are determined by macros which take an index. They currently receive a bus offset which has a stride of 4 bytes. This causes the ID1-3 registers to report incorrect values. Scale the offset before passing it to the macro to fix this. Tested with kvm-unit-tests/arm/pl031. Signed-off-by: Kajetan Puchalski Reviewed by: jrtc27 Fixes: 014d7082a239 ("bhyve: Implement a PL031 RTC on arm64") MFC after: 1 week Pull Request: https://github.com/freebsd/freebsd-src/pull/2358 Closes: https://github.com/freebsd/freebsd-src/pull/2358 (cherry picked from commit a554906ea44c26925730a25263e64890d48d2b36) M usr.sbin/bhyve/rtc_pl031.c _____________________________________________________________________________________________________________ Commit: ee87d97034b01039f454a4f29333eaba8f287027 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ee87d97034b01039f454a4f29333eaba8f287027 Author: Gordon Tetlow (Wed 2 Sep 2026 20:15:41 BST) Committer: Mark Johnston (Tue 29 Sep 2026 16:56:01 BST) openssl: Fix CVE-2026-84782 This is a commit from upstream to fix: dtls: reset init_off before retransmitting a message Approved by: so Security: FreeBSD-SA-26:68.openssl Security: CVE-2026-84782 M crypto/openssl/ssl/d1_lib.c M crypto/openssl/ssl/statem/statem_dtls.c M crypto/openssl/test/dtlstest.c _____________________________________________________________________________________________________________ Commit: 6c9ee5f02548c1c742c38c69e7f2164eee128320 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6c9ee5f02548c1c742c38c69e7f2164eee128320 Author: Mark Johnston (Mon 28 Sep 2026 17:47:56 BST) Committer: Mark Johnston (Tue 29 Sep 2026 16:56:01 BST) vfs: Disallow renameat() with FD_RESOLVE_BENEATH descriptors The FD_RESOLVE_BENEATH flag was intended to try to resolve bugzilla PR 262179 without entirely disallowing fd passing between jails. However, one can use renameat() to bypass the restriction: upon receiving a directory fd with FD_RESOLVE_BENEATH set, a jailed process can still move its CWD or one of its ancestors to the directory, and just cd out of its jail root. So disallow renameat() when either the source or destination directory fds has FD_RESOLVE_BENEATH set, like we do with fchdir() and fchroot() to prevent similar escapes. Approved by: so Security: FreeBSD-SA-26:66.jail Security: CVE-2026-101305 PR: 262179 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=262179 ) Reported by: firk@cantconnect.ru Reviewed by: olce, kib Differential Revision: https://reviews.freebsd.org/D59875 M lib/libsys/fcntl.2 M sys/kern/vfs_syscalls.c _____________________________________________________________________________________________________________ Commit: 46c9357418134ebcdb025dbcfdedff8adebb679a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=46c9357418134ebcdb025dbcfdedff8adebb679a Author: Mark Johnston (Mon 28 Sep 2026 15:44:04 BST) Committer: Mark Johnston (Tue 29 Sep 2026 16:56:01 BST) fdescfs: Pass up additional metadata during lookups When an fdescfs mount has the nodup option set, fdesc_lookup(/dev/fd/n) returns the vnode referenced by file descriptor n, rather than returning an fdescfs vnode. This meant that fd metadata attached to fd n was not preserved when reopening the file, which is contrary to the expected semantics for capsicum rights and the UF_RESOLVE_BENEATH fd flag. For regular fdescfs mounts, this metadata is copied via dupfdopen(). Fix the problem by passing up this metadata through the nameidata structure. Thus, if one opens /dev/fd/n, the returned fd will inherit UF_RESOLVE_BENEATH and the capability rights of fd n. Add some regression tests as well. Approved by: so Security: FreeBSD-SA-26:66.jail Security: CVE-2026-101304 Reported by: Jan Bramkamp Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59886 M sys/fs/fdescfs/fdesc_vnops.c M tests/sys/fs/Makefile A tests/sys/fs/fdescfs/Makefile A tests/sys/fs/fdescfs/fdescfs_test.c _____________________________________________________________________________________________________________ Commit: 4536e595eada166687db8f911ff142e36b02205c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4536e595eada166687db8f911ff142e36b02205c Author: Mark Johnston (Mon 28 Sep 2026 15:43:23 BST) Committer: Mark Johnston (Tue 29 Sep 2026 16:56:01 BST) file: Add filecaps_intersect() and cap_rights_intersect() These routines let one compute the intersection of two sets of filecaps or capability rights, just as filecaps_merge() and cap_rights_merge() compute the union. This will be useful in an upcoming patch. filecaps_intersect() is complex due to the need to merge sets of ioctls. For now this is implemented with a dumb nested loop on the basis that ioctl lists are typically short enough that this is fine. It may be better to instead sort the two lists first and step through them together. No functional change intended. Approved by: so Security: FreeBSD-SA-26:66.jail Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59885 M lib/libc/capability/cap_rights_init.3 M sys/kern/kern_descrip.c M sys/kern/subr_capability.c M sys/sys/capsicum.h M sys/sys/filedesc.h _____________________________________________________________________________________________________________ Commit: 5c2ba42d29c449bdfc3f41d74c54cdd7f87ca977 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5c2ba42d29c449bdfc3f41d74c54cdd7f87ca977 Author: Mark Johnston (Mon 28 Sep 2026 15:42:29 BST) Committer: Mark Johnston (Tue 29 Sep 2026 16:56:01 BST) file: Add a helper function to check whether filecaps are full In a couple of places we want to know whether someone has limited rights on an fd. There, we want a predicate which determines whether the set of rights is smaller than CAP_ALL, and whether there are explicit ioctl or fcntl lists. Factor this out into a helper function, in preparation for use elsewhere. No functional change intended. Approved by: so Security: FreeBSD-SA-26:66.jail Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59884 M sys/kern/kern_descrip.c M sys/sys/filedesc.h _____________________________________________________________________________________________________________ Commit: 5db05b5dedf38cc9e31f89a9f4df9abb5cb1b539 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5db05b5dedf38cc9e31f89a9f4df9abb5cb1b539 Author: Mark Johnston (Mon 28 Sep 2026 14:42:54 BST) Committer: Mark Johnston (Tue 29 Sep 2026 16:56:01 BST) kqueue: Fix a potential OOB access in kqueue_fork_copy_knote() Here, fdp points to the new fdtable, copied from that of the parent process. There is a window after the fdtable is copied, and before kqueue_fork_copy_knote() runs, where a different thread in the parent could have grown the parent's fdtable and registered a knote with ident larger than the size of the child's fdtable. This race can lead to an out-of-bounds read. Add a bounds check for this case; skip the knote if it is referencing a non-existent file. Approved by: so Security: FreeBSD-SA-26:65.kqueue Security: CVE-2026-58100 Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59916 M sys/kern/kern_event.c _____________________________________________________________________________________________________________ Commit: 0ee32bf5318dd3221111d76df079ef99f4346178 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0ee32bf5318dd3221111d76df079ef99f4346178 Author: Mark Johnston (Mon 28 Sep 2026 14:40:45 BST) Committer: Mark Johnston (Tue 29 Sep 2026 16:56:01 BST) kqueue: Fix handling of marker knotes during fork Commit d8bdcb08d0eb fixed a problem in kqueue_fork_copy_knote() where we did not skip over marker knotes when copying. However, that fix was not sufficient: we bump the influx counter and check for a marker after dropping the kqueue lock. So, if multiple threads in a process are forking concurrently, kqueue_fork_copy_list() may mark a marker as in-flux and drop the lock; if the marker owner then frees the marker, the first thread will decrement the in-flux counter of a freed knotes. This use-after-free can be exploited, at least prior to commit d8bdcb08d0eb, which makes exploitation more challenging. Approved by: so Security: FreeBSD-SA-26:65.kqueue Security: CVE-2026-58099 Reported by: Reo Shiseki Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59522 M sys/kern/kern_event.c _____________________________________________________________________________________________________________ Commit: 8063b1b61ae8eb3f32ddc58bcb197974577da8c4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8063b1b61ae8eb3f32ddc58bcb197974577da8c4 Author: Mark Johnston (Mon 28 Sep 2026 14:26:35 BST) Committer: Mark Johnston (Tue 29 Sep 2026 16:56:01 BST) sysvsem: Fix another sequence number wraparound race semop() may sleep waiting for a semaphore. Upon waking up, it checks to see if the set's sequence number has changed, indicating that the set was removed. The sequence number is not wide enough to prevent a false negative due to wraparound, in which case the subsequent access of `semakptr->u.__sem_base[sopptr->sem_num]` may be out of bounds. This race can be leveraged to elevate privileges. Fix this by introducing a 64-bit sequence number for each semaphore pool. This is wide enough to make the race impossible to hit. Allocate a separate array for them, as we cannot really change the layout of struct semid_kernel since some userspace tools (e.g., ipcrm(1)) embed the layout. While here, use semvalid() instead of open-coding its implementation, convert a couple of flags to be bool, and use a better variable name to store required permissions. Approved by: so Security: FreeBSD-SA-26:64.sysvsem Security: CVE-2026-58098 Reported by: Reo Shiseki Reported by: Andrew Griffiths Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59347 M sys/kern/sysv_sem.c _____________________________________________________________________________________________________________ Commit: 77b75400324d6072e7d9bdf7efc356e72aa0789c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=77b75400324d6072e7d9bdf7efc356e72aa0789c Author: Christos Margiolis (Tue 15 Sep 2026 13:12:43 BST) Committer: Christos Margiolis (Tue 29 Sep 2026 11:16:03 BST) snd_uaudio: Read the UAC2 sample rate back after setting it Some devices only apply a new sample rate once it has been read back, and produce no sound at all otherwise. PR: 294803 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=294803 ) Reported by: tatsuki_makino@hotmail.com Tested by: tatsuki_makino@hotmail.com MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D59616 (cherry picked from commit 694923501f56a5d4519f548ee06db603f9486bc7) M sys/dev/sound/usb/uaudio.c _____________________________________________________________________________________________________________ Commit: da0067ded585fbf242fb15a7dbeb155130f1be6d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=da0067ded585fbf242fb15a7dbeb155130f1be6d Author: Maxim Konovalov (Tue 15 Sep 2026 18:55:40 BST) Committer: Maxim Konovalov (Tue 29 Sep 2026 02:47:44 BST) ipfw: guard against NULL deref with clat/plat prefixes without length Found with: Claude Code Sonnet 5 MFC after: 2 weeks (cherry picked from commit 47b02ace19c53e72ad2290d974025292ff97464a) M sbin/ipfw/nat64clat.c _____________________________________________________________________________________________________________ Commit: c52f99acee2a65b8e58b9cc50a00130eb238f909 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c52f99acee2a65b8e58b9cc50a00130eb238f909 Author: Konstantin Belousov (Sat 19 Sep 2026 08:54:00 BST) Committer: Konstantin Belousov (Tue 29 Sep 2026 01:27:15 BST) amd64: use WRMSRNS immediate form to update splitlock control, when available (cherry picked from commit 20c09e6fece29dbcf4835b4dd90e969f1b9b3e59) M sys/amd64/amd64/machdep.c _____________________________________________________________________________________________________________ Commit: 0dce4f2a39dcdc30c3176720a4f86c69b9a1d707 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0dce4f2a39dcdc30c3176720a4f86c69b9a1d707 Author: Konstantin Belousov (Sat 19 Sep 2026 08:43:34 BST) Committer: Konstantin Belousov (Tue 29 Sep 2026 01:27:15 BST) amd64: cache MSR_MEMORY_CTL in pcpu (cherry picked from commit 74d325fee2dbcb5f8541819481ce76f87c151a21) M sys/amd64/amd64/initcpu.c M sys/amd64/amd64/machdep.c M sys/amd64/amd64/mp_machdep.c M sys/amd64/include/md_var.h M sys/amd64/include/pcpu.h _____________________________________________________________________________________________________________ Commit: d95433ec84b973c7e6ab819bbf4fb5bbcb829d2a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d95433ec84b973c7e6ab819bbf4fb5bbcb829d2a Author: Konstantin Belousov (Fri 18 Sep 2026 15:33:54 BST) Committer: Konstantin Belousov (Tue 29 Sep 2026 01:27:15 BST) amd64: add userspace control for disabling splitlocks (cherry picked from commit 51cea5416a2421f29d22100bc71ab6486b1dc54a) M sys/amd64/amd64/sys_machdep.c M sys/x86/include/sysarch.h _____________________________________________________________________________________________________________ Commit: 6d6a82416b88183036577b824068a26919797791 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6d6a82416b88183036577b824068a26919797791 Author: Konstantin Belousov (Fri 18 Sep 2026 15:33:54 BST) Committer: Konstantin Belousov (Tue 29 Sep 2026 01:27:15 BST) amd64: support for tracking per-thread 'disable splitlocks' state (cherry picked from commit e318f24c0f53b52bd280b827509ad752db0497bf) M sys/amd64/amd64/exec_machdep.c M sys/amd64/amd64/machdep.c M sys/amd64/amd64/pmap.c M sys/amd64/amd64/vm_machdep.c M sys/amd64/ia32/ia32_signal.c M sys/amd64/include/md_var.h M sys/amd64/include/proc.h M sys/amd64/linux/linux_sysvec.c M sys/amd64/linux32/linux32_sysvec.c _____________________________________________________________________________________________________________ Commit: b4a9afdf70e3bb688db207462e2416758fbf6d19 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b4a9afdf70e3bb688db207462e2416758fbf6d19 Author: Konstantin Belousov (Fri 18 Sep 2026 15:33:54 BST) Committer: Konstantin Belousov (Tue 29 Sep 2026 01:27:14 BST) amd64: calculate if hardware supports disabling splitlocks (cherry picked from commit d8c1abb0e3409314fb89400bc85b5051649e91ab) M sys/amd64/amd64/initcpu.c M sys/amd64/amd64/machdep.c M sys/amd64/include/md_var.h _____________________________________________________________________________________________________________ Commit: 77a99f36ba4f86e667070cc79afce9ab771ec641 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=77a99f36ba4f86e667070cc79afce9ab771ec641 Author: Konstantin Belousov (Sun 20 Sep 2026 17:40:15 BST) Committer: Konstantin Belousov (Tue 29 Sep 2026 01:27:14 BST) amd64: handle #AC in kernel mode (cherry picked from commit c6d7235ac15d208435a839bf847dd898d9b1d9fe) M sys/amd64/amd64/trap.c _____________________________________________________________________________________________________________ Commit: ca7aa1c162c1c47ea149558bf46281c9b566ceca URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ca7aa1c162c1c47ea149558bf46281c9b566ceca Author: Konstantin Belousov (Fri 18 Sep 2026 15:33:54 BST) Committer: Konstantin Belousov (Tue 29 Sep 2026 01:27:14 BST) amd64: add md thread flags word (cherry picked from commit dc975612213369f597449ced5a3c5edabc2aae6d) M sys/amd64/include/proc.h _____________________________________________________________________________________________________________ Commit: 54cb4bf00b82f4a9cafb9942089aa00bfcca06f0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=54cb4bf00b82f4a9cafb9942089aa00bfcca06f0 Author: Brooks Davis (Sat 26 Sep 2026 12:43:34 BST) Committer: Konstantin Belousov (Tue 29 Sep 2026 01:27:13 BST) amd64: gate WRMSRNS immediate form on compiler support (cherry picked from commit 53fe018630d06eeef6791cfacaa6dc9acdf4d669) M sys/amd64/include/cpufunc.h _____________________________________________________________________________________________________________ Commit: 61412c0ff5cc69103a1e24ceaa387d4a2e150c40 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=61412c0ff5cc69103a1e24ceaa387d4a2e150c40 Author: Konstantin Belousov (Sat 19 Sep 2026 09:31:59 BST) Committer: Konstantin Belousov (Tue 29 Sep 2026 01:26:31 BST) amd64 cpufunc.h: add WRMSRNS helpers (cherry picked from commit 4a8acccc2e59b6ac5f4068471d94b40347ebeff0) M sys/amd64/include/cpufunc.h _____________________________________________________________________________________________________________ Commit: 1a6e0c38d023f975d6015570b9fc34f09175dc03 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1a6e0c38d023f975d6015570b9fc34f09175dc03 Author: Roman Bogorodskiy (Sun 20 Sep 2026 15:41:55 BST) Committer: Roman Bogorodskiy (Mon 28 Sep 2026 16:59:17 BST) bhyve: fix boot device ordering EDK2's QemuBootOrderLib inspects the bootorder file provided via fw_cfg and requires it to be NUL-terminated. Otherwise, it rejects the supplied bootorder and falls back to its default boot order. Currently, bhyve registers bootorder with qemu_fwcfg_add_file() using bootorder_len returned by open_memstream(), which excludes the trailing NUL byte. Fix that by passing bootorder_len + 1 to qemu_fwcfg_add_file() so the fw_cfg payload is properly NUL-terminated. PR: 279720 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279720 ) Reviewed by: markj Found with: codex (gpt-5.6-sol) MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59859 (cherry picked from commit b27a221ef79d6d77d6173897f12118e1126453d8) M usr.sbin/bhyve/pci_emul.c _____________________________________________________________________________________________________________ Commit: f3b4b6b756e2ce9e012068c5c91492f757b5c548 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f3b4b6b756e2ce9e012068c5c91492f757b5c548 Author: Mark Johnston (Mon 21 Sep 2026 15:05:01 BST) Committer: Mark Johnston (Mon 28 Sep 2026 15:06:29 BST) udp: Let jail policy rewrite the dstaddr for v6 sendto()s When performing an unconnected sendto() on a v6 UDP socket in a classic jail, we were not applying the usual policy of replacing the loopback addr with the jail's primary IP. Compare with, e.g., udp6_connect() or the IPv4 udp_send(). Fix that. Reported by: Yuxiang Yang, Yizhou Zhao, Ao Wang, Xuewei Feng, Qi Li, and Ke Xu from Tsinghua University using GLM-5.1 from Z.ai Reviewed by: bz, glebius MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59772 (cherry picked from commit fecb9537a83b6746bc731a7cb3bcf6a33df79562) M sys/netinet6/udp6_usrreq.c _____________________________________________________________________________________________________________ Commit: 6d6a85c0be942d903a076d930c0ee67d150b0cfb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6d6a85c0be942d903a076d930c0ee67d150b0cfb Author: Mark Johnston (Wed 23 Sep 2026 17:53:17 BST) Committer: Mark Johnston (Mon 28 Sep 2026 14:53:26 BST) ktls: Fix an off-by-one bug in tls13_find_record_type() If the entire plaintext is zero-filled, the backwards walk in tls13_find_record_type() would return the offset of the last byte of the TLS header. This causes an underflow when decrypting, resulting in a null pointer dereference. Fix the bug and add a regression test. Reviewed by: gallatin, jhb MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59767 (cherry picked from commit 7c5e457d3afdc7742ee24f0b5ee6e5e7aa00a6bd) M sys/kern/uipc_ktls.c M tests/sys/kern/ktls_test.c _____________________________________________________________________________________________________________ Commit: 4d3f5d2ca43c7b00fe03276e85a51e215655bc6d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4d3f5d2ca43c7b00fe03276e85a51e215655bc6d Author: Andrew Gallatin (Wed 1 Jul 2026 01:53:15 BST) Committer: Mark Johnston (Mon 28 Sep 2026 14:53:16 BST) ktls: Add a tunable to disable TLS receive TLS receive offload is really only beneficial for in-kernel use cases (such as NFS over TLS) or when using a hardware offload. In addition, several recent SAs have involved the TLS receive path, but the only current mitigation for those is to disable TLS offload entirely. Reviewed by: ziaee, gallatin, markj Relnotes: yes Sponsored by: Netflix Sponsored by: Chelsio Communications Co-authored-by: John Baldwin Differential Revision: https://reviews.freebsd.org/D57974 (cherry picked from commit 08cda4bcd43cfcb2c0b1abd29bc7cd30896727bc) M share/man/man4/ktls.4 M sys/kern/uipc_ktls.c M tests/sys/kern/ktls_test.c _____________________________________________________________________________________________________________ Commit: 52850d1831de7a3e1ab4aeba3919b26f68f4b7dc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=52850d1831de7a3e1ab4aeba3919b26f68f4b7dc Author: Benjamin Jacobs (Wed 9 Sep 2026 10:57:12 BST) Committer: Mark Johnston (Mon 28 Sep 2026 14:38:01 BST) dtrace/arm64: de-pessimize dtrace_copy When DTrace catches a data abort exception it resumes execution on the next instruction. If a probe executes copyinto from unmapped memory, then dtrace_copy keeps faulting on successive bytes until the loop counter is exhausted. Detect the situation by witnessing the absence of zero-extension from an aborted unprivileged load. Reviewed by: markj MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D59341 (cherry picked from commit 464b29857ff18801aca49d1001643c5cdd1324e8) M sys/cddl/dev/dtrace/aarch64/dtrace_asm.S _____________________________________________________________________________________________________________ Commit: b01f66cb0e3bdf7f12bac161feaf9bc4d3a5a091 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b01f66cb0e3bdf7f12bac161feaf9bc4d3a5a091 Author: Andrew Griffiths (Mon 14 Sep 2026 08:55:01 BST) Committer: Mark Johnston (Mon 28 Sep 2026 14:38:01 BST) proc: free kstack buffers when debug permission changes The kern.proc.kstack handler allocates its output and stack buffers before deliberately checking p_candebug again under the process lock. If trace-control state changes between authorization checks, the failure path balances the process and exec state but leaks both buffers. Submitted by calif.io for the OpenAI Patch The Planet program Signed-off-by: Andrew Griffiths Fixes: 8b5abd9027b8 ("kern_proc.c: disallow execve around sysctl kern.proc.kstacks") Reviewed by: markj MFC after: 1 week (cherry picked from commit 3484217cc47c1f77d2be2ed0e012b870d1cd3dca) M sys/kern/kern_proc.c _____________________________________________________________________________________________________________ Commit: d1c4838a746489dc2f53bef5964f8ad40ced7173 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d1c4838a746489dc2f53bef5964f8ad40ced7173 Author: Konstantin Belousov (Sat 19 Sep 2026 09:02:56 BST) Committer: Konstantin Belousov (Mon 28 Sep 2026 02:03:27 BST) x86: add cpu_stdext_feature5 (cherry picked from commit 71f08bfa02a93d5d165ce96abc9077f36e4963b6) M sys/x86/include/specialreg.h M sys/x86/include/x86_var.h M sys/x86/x86/identcpu.c _____________________________________________________________________________________________________________ Commit: d504e582a9dbb057000e76195aa76e7d6686e667 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d504e582a9dbb057000e76195aa76e7d6686e667 Author: Konstantin Belousov (Fri 18 Sep 2026 15:33:54 BST) Committer: Konstantin Belousov (Mon 28 Sep 2026 02:03:27 BST) x86: add definitions for the CORE_CAP and MEMORY_CTL MSRs (cherry picked from commit 9aa031eb927720e26c8c11ce697f1c691ca0ef75) M sys/x86/include/specialreg.h _____________________________________________________________________________________________________________ Commit: 9d436d9f2a22bd0c39d0c47577dce1af0a732c57 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9d436d9f2a22bd0c39d0c47577dce1af0a732c57 Author: Konstantin Belousov (Sat 19 Sep 2026 10:46:19 BST) Committer: Konstantin Belousov (Mon 28 Sep 2026 02:03:26 BST) amd64/*sigtramp.S: re-enable some cfi annotations for special registers (cherry picked from commit 64a73d1b6dc93d92daea1e2d0603fda1dddadf4a) M sys/amd64/amd64/sigtramp.S M sys/amd64/ia32/ia32_sigtramp.S _____________________________________________________________________________________________________________ Commit: 3244419dfcd2feb5e724a1f2755de09a03889b7e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3244419dfcd2feb5e724a1f2755de09a03889b7e Author: Kang Kang (Sun 13 Sep 2026 10:37:39 BST) Committer: Vladimir Kondratyev (Sun 27 Sep 2026 13:18:26 BST) evdev: map ChromeOS "Vivaldi" top-row action keys Chromebook keyboards driven by the ChromeOS EC emit the top-row action keys as scancode set 1 codes 0xE0 0x11 - 0xE0 0x1E (see the codeset 1 comments on the SCANCODE_* enum in chrome-ec include/keyboard_8042_sharedlib.h). The e0 half of the evdev_scancode2key() translation table leaves eleven of those at NONE, so on FreeBSD those keys emit no evdev event at all and userspace remappers such as keyd have nothing to bind to: e0 11 fullscreen KEY_ZOOM e0 12 overview KEY_SCALE e0 13 screenshot KEY_SYSRQ e0 14 brightness down KEY_BRIGHTNESSDOWN e0 15 brightness up KEY_BRIGHTNESSUP e0 16 privacy screen toggle KEY_PRIVACY_SCREEN_TOGGLE e0 17 kbd backlight down KEY_KBDILLUMDOWN e0 18 kbd backlight up KEY_KBDILLUMUP e0 1a play/pause KEY_PLAYPAUSE e0 1b mic mute KEY_MICMUTE e0 1e kbd backlight toggle KEY_KBDILLUMTOGGLE Fill those in. Only entries that were previously NONE are touched: the EC's remaining top-row codes already have mappings here (e0 10 prev track, e0 19 next track, e0 20 mute, e0 2e / e0 30 volume, e0 67 refresh, e0 69 forward, e0 6a back), as do e0 1c keypad enter and e0 1d right control, and none of them change. Signed-off-by: Kang Kang Tested on: Lenovo ThinkPad C14 Chromebook (Google primus, ChromeOS EC) Reviewed by: wulf MFC after: 2 weeks (cherry picked from commit 11ad849f1c50b2469ff13ee74e2ab0f5bcfa6cc9) M sys/dev/evdev/evdev_utils.c _____________________________________________________________________________________________________________ Commit: 8603e1ff9ded72d8b81e66c360a649dffd87afb8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8603e1ff9ded72d8b81e66c360a649dffd87afb8 Author: Please (Thu 17 Sep 2026 10:08:43 BST) Committer: Vladimir Kondratyev (Sun 27 Sep 2026 13:18:26 BST) ig4(4): fix attach of ACPI-enumerated LPSS controllers Intel LPSS I2C controllers enumerated through ACPI rather than PCI never attach on Haswell and Broadwell, so every device behind those buses is lost. On a Dell XPS 13 9343 that hides the I2C HID touchpad and leaves only the PS/2 fallback, which the firmware does not restore after S3. Three causes, all on the ACPI path: Firmware may leave an LPSS function in D3, where its registers read as all-ones and set_controller() fails with "controller error during attach-1". Run _PS0 before mapping them. The PCI path does not need this, which is why the gap went unnoticed. INT33C2, INT33C3, INT3432 and INT3433 are Lynx Point-LP and Wildcat Point-LP, which ig4_pci.c already classifies as IG4_HASWELL; the ACPI path called everything but APMC0D0F an Atom SoC. The functional clock stays gated until bit 0 of IG4_REG_CLK_PARMS is set. Until then the controller accepts writes into the TX FIFO, never drives the bus, raises no interrupts, and every transfer ends in IIC_ETIMEOUT. Linux ungates the same bit in acpi_lpss.c. Doing it in ig4iic_set_config() covers resume as well as attach. With all three in place the touchpad attaches as iichid0/hmt1 with multi-touch and survives suspend and resume. PR: 298558 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298558 ) Tested by: Please (XPS 13 9343, Broadwell-U, 15.1-RELEASE-p3) Reviewed by: wulf MFC after: 1 week (cherry picked from commit e75f61962ca47f0b0ae4aed89c8416e6544d9845) M sys/dev/ichiic/ig4_acpi.c M sys/dev/ichiic/ig4_iic.c M sys/dev/ichiic/ig4_reg.h _____________________________________________________________________________________________________________ Commit: e9c67d88df942f3d6df6ffe6dccbdfa0de83d222 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e9c67d88df942f3d6df6ffe6dccbdfa0de83d222 Author: Xin LI (Sat 19 Sep 2026 19:48:28 BST) Committer: Xin LI (Sat 26 Sep 2026 02:55:04 BST) MFC: Add release notes entry for less v710. (cherry picked from commit 7f7e9584cb9dbff7f74faf5589c9154d2c6eef3f) M RELNOTES _____________________________________________________________________________________________________________ Commit: d3c6de9c3cab931972d1cdfcee772709b041b429 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d3c6de9c3cab931972d1cdfcee772709b041b429 Author: Xin LI (Sat 19 Sep 2026 19:20:29 BST) Committer: Xin LI (Sat 26 Sep 2026 02:44:32 BST) MFC: MFV: less v710. (cherry picked from commit 4523eebc6c1828d4fd41d7f1ab943cf079043bc8) M ObsoleteFiles.inc M UPDATING M contrib/less/NEWS M contrib/less/brac.c M contrib/less/ch.c M contrib/less/charset.c M contrib/less/cmd.h M contrib/less/cmdbuf.c M contrib/less/command.c M contrib/less/decode.c M contrib/less/edit.c M contrib/less/filename.c M contrib/less/forwback.c M contrib/less/funcs.h M contrib/less/help.c M contrib/less/ifile.c M contrib/less/input.c M contrib/less/jump.c M contrib/less/less.h M contrib/less/less.hlp M contrib/less/less.nro M contrib/less/lessecho.nro D contrib/less/lesskey.c M contrib/less/lesskey.h M contrib/less/lesskey.nro M contrib/less/lesskey_parse.c A contrib/less/lessmsg A contrib/less/lessmsg.inc A contrib/less/lessmsg_int M contrib/less/line.c M contrib/less/linenum.c A contrib/less/lmsg.c A contrib/less/lmsg.h M contrib/less/lsystem.c M contrib/less/main.c M contrib/less/mark.c M contrib/less/optfunc.c M contrib/less/option.c M contrib/less/option.h M contrib/less/opttbl.c M contrib/less/os.c M contrib/less/output.c M contrib/less/pattern.c M contrib/less/pattern.h M contrib/less/pckeys.h M contrib/less/prompt.c M contrib/less/screen.c M contrib/less/search.c M contrib/less/signal.c M contrib/less/tags.c M contrib/less/ttyin.c M contrib/less/version.c M targets/pseudo/userland/Makefile.depend M usr.bin/Makefile M usr.bin/less/Makefile M usr.bin/less/Makefile.common D usr.bin/lesskey/Makefile D usr.bin/lesskey/Makefile.depend _____________________________________________________________________________________________________________ Commit: 1dc191dd5837cac9514128e5ee4b250ba44180c5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1dc191dd5837cac9514128e5ee4b250ba44180c5 Author: Philip Paeps (Wed 23 Sep 2026 05:27:57 BST) Committer: Philip Paeps (Sat 26 Sep 2026 01:31:39 BST) contrib/expat: import expat 2.8.5 Changes: https://github.com/libexpat/libexpat/blob/R_2_8_5/expat/Changes Security: CVE-2026-93990 (cherry picked from commit c7b67985633c408cae69703ca443cbfd84d326a8) M contrib/expat/Changes M contrib/expat/Makefile.am M contrib/expat/Makefile.in M contrib/expat/README.md M contrib/expat/configure.ac M contrib/expat/doc/Makefile.in M contrib/expat/doc/reference.html M contrib/expat/doc/xmlwf.1 M contrib/expat/doc/xmlwf.xml M contrib/expat/examples/Makefile.in M contrib/expat/fuzz/xml_lpm_fuzzer.cpp M contrib/expat/fuzz/xml_parse_fuzzer.c M contrib/expat/fuzz/xml_parsebuffer_fuzzer.c M contrib/expat/lib/Makefile.am M contrib/expat/lib/Makefile.in M contrib/expat/lib/expat.h M contrib/expat/lib/expat_external.h A contrib/expat/lib/hash_table.h M contrib/expat/lib/internal.h M contrib/expat/lib/xmlparse.c M contrib/expat/lib/xmlrole.c M contrib/expat/lib/xmlrole.h M contrib/expat/lib/xmltok.c M contrib/expat/lib/xmltok.h M contrib/expat/lib/xmltok_impl.c M contrib/expat/lib/xmltok_ns.c M contrib/expat/tests/Makefile.am M contrib/expat/tests/Makefile.in M contrib/expat/tests/acc_tests.h M contrib/expat/tests/alloc_tests.h M contrib/expat/tests/basic_tests.c M contrib/expat/tests/basic_tests.h M contrib/expat/tests/benchmark/Makefile.in M contrib/expat/tests/chardata.h M contrib/expat/tests/common.h M contrib/expat/tests/dummy.h M contrib/expat/tests/handlers.h A contrib/expat/tests/hash_tests.c A contrib/expat/tests/hash_tests.h M contrib/expat/tests/memcheck.c M contrib/expat/tests/memcheck.h M contrib/expat/tests/minicheck.h M contrib/expat/tests/misc_tests.c M contrib/expat/tests/misc_tests.h M contrib/expat/tests/ns_tests.h M contrib/expat/tests/nsalloc_tests.c M contrib/expat/tests/nsalloc_tests.h M contrib/expat/tests/runtests.c M contrib/expat/tests/structdata.h M contrib/expat/tests/xmltest.sh M contrib/expat/xmlwf/Makefile.in M contrib/expat/xmlwf/unixfilemap.c M contrib/expat/xmlwf/xmlfile.c M contrib/expat/xmlwf/xmlfile.h M contrib/expat/xmlwf/xmlmime.h M contrib/expat/xmlwf/xmlwf.c M contrib/expat/xmlwf/xmlwf_helpgen.py M contrib/expat/xmlwf/xmlwf_helpgen.sh M lib/libexpat/expat_config.h M lib/libexpat/libbsdxml.3 _____________________________________________________________________________________________________________ Commit: 5e8678f2b4914901d88d3474e1873b3d49c085f6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5e8678f2b4914901d88d3474e1873b3d49c085f6 Author: voidanix (Fri 31 Jul 2026 00:50:32 BST) Committer: Alan Somers (Fri 25 Sep 2026 18:34:22 BST) zonectl: Consistently report ZAC conv. zones WP LBA On ZAC drives, conventional zones conventionally report a write pointer LBA of 0xffffffffffff. This field is 48 bits wide, unlike ZBC's 64 bits. Recognize both ZAC and ZBC all-ones behaviour in the WRITE POINTER LBA field to indicate non-valid information. Tested by: fuz Discussed with: fuz, asomers, ken Fixes: 4735ef6196bc ("zonectl: display conventional zones better") MFC after: 2 weeks Sponsored by: Google Summer Of Code 2026 Reviewed by: asomers Pull Request: https://github.com/freebsd/freebsd-src/pull/2345 (cherry picked from commit 95a4412e3a4d41b430f298ea2c2a51f8aa119c2c) M usr.sbin/zonectl/zonectl.c _____________________________________________________________________________________________________________ Commit: de0aad8121ad28cf338b8823f48631b7f1ef3563 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=de0aad8121ad28cf338b8823f48631b7f1ef3563 Author: Alan Somers (Thu 13 Aug 2026 00:34:41 BST) Committer: Alan Somers (Fri 25 Sep 2026 18:34:17 BST) Increase the default mlock limit from 64k to 256k The current default has been unchanged for 14 years. Increase it to keep pace with modern hardware and software. security/pinentry-gnome, in particular, can sometimes need 112 kB. PR: 297452 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297452 ) MFC after: 2 weeks Sponsored by: ConnectWise Reviewed by: cye, emaste Differential Revision: https://reviews.freebsd.org/D58811 (cherry picked from commit d9cf2a8671841e4415a22e16005d7700f0eb9b7e) M usr.bin/login/login.conf _____________________________________________________________________________________________________________ Commit: 1a6f201c5bf8a786de7b0f96c1ad4934d6cac343 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1a6f201c5bf8a786de7b0f96c1ad4934d6cac343 Author: Alan Somers (Tue 9 Jun 2026 19:06:13 BST) Committer: Alan Somers (Fri 25 Sep 2026 18:34:10 BST) zonectl: display conventional zones better during RZ zonectl's Report Zones subcommand displays a tabular list of zones. A conventional zone's WP column is displayed as 0xffffffffffffffff , the literal value that the HDD reports. But that's too wide for the column, causing the text to be misaligned. It's also not really meaningful, because the Write Pointer isn't really defined for a Conventional zone. Change it to "-1" to fix the text misalignment. MFC after: 2 weeks Sponsored by: ConnectWise Reviewed by: fuz Differential Revision: https://reviews.freebsd.org/D57512 (cherry picked from commit 4735ef6196bcb2802ad7fc7d1b8054a4756d786b) M usr.sbin/zonectl/zonectl.c _____________________________________________________________________________________________________________ Commit: c5031d3b0421bf62e0b215012295b15107f29cec URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c5031d3b0421bf62e0b215012295b15107f29cec Author: Alan Somers (Wed 10 Jun 2026 21:39:22 BST) Committer: Alan Somers (Fri 25 Sep 2026 18:32:47 BST) fusefs: fix vnode locking violations during execve Fix two locking violations that could happen during execve, while executing a file stored on fusefs. Both would cause panics on an INVARIANTS kernel after 15.0, or a DEBUG_VFS_LOCKS kernel prior to that. Neither is likely to be noticeable on a release kernel. * Don't assume that the vnode is exclusively locked during VOP_CLOSE. It usually is thanks to !MNTK_LOOKUP_SHARED, but isn't during execve, which locks the vnode outside of the lookup path. * Totally rewrite fuse_io_invalbuf. It's had a number of problems ever since its original introduction[^1]: - Don't assume that the vnode is exclusively locked. That assumption failed during execve just like the assumption in fuse_vnop_close. - Don't livelock forever if vinvalbuf returns ENOSPC or EDQUOT. - Don't attempt to handle multiple threads calling this function at the same time. That would be impossible if the vnode truly were exclusively locked. So the code was dead. Or it would've been, if the assumption hadn't been wrong. Furthermore, both vinvalbuf and vnode_pager_clean_sync only require a shared vnode lock, and are already capable of dealing with multiple simultaneous callers. - Using fvdat->flag in this way would require some sort of mutex protection, if the vnode weren't exclusively locked. * Add new test cases that trigger both of the aforementioned panics. [^1]: https://github.com/glk/fuse-freebsd/commit/efe6eb3005e7633b4e31d5e453eacbaa0cba42fa PR: 295957 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295957 ) Reported by: dan.kotowski@a9development.com Sponsored by: ConnectWise Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D57536 (cherry picked from commit ee1c3d38a26aa63fca8e9f86c0d456800d5e2576) M sys/fs/fuse/fuse_io.c M sys/fs/fuse/fuse_node.h M sys/fs/fuse/fuse_vnops.c M tests/sys/fs/fusefs/Makefile A tests/sys/fs/fusefs/ext2-misc.sh A tests/sys/fs/fusefs/misc.cc M tests/sys/fs/fusefs/mockfs.cc M tests/sys/fs/fusefs/utils.cc _____________________________________________________________________________________________________________ Commit: 90745f06bb21c0675ea1408515051a8b94101b8c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=90745f06bb21c0675ea1408515051a8b94101b8c Author: Joerg Wunsch (Sun 26 Jul 2026 21:54:01 BST) Committer: Joerg Wunsch (Fri 25 Sep 2026 08:45:34 BST) cam/cd: avoid integer divide fault in cdstart() If something goes very badly (e.g. forcibly removing a medium while the OS tries to start it), this could end up in params.blksize being 0 (and params.disksize 1). Avoid an integer divide fault, panicking the kernel, by bailing out before. MFC after: 3 days (cherry picked from commit 34ae0f7834d1bd6bb765d1c12e57e01e32b3e060) M sys/cam/scsi/scsi_cd.c _____________________________________________________________________________________________________________ Commit: c528a152be7e92db51fa8b86af14fc1e577fb698 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c528a152be7e92db51fa8b86af14fc1e577fb698 Author: Siva Mahadevan (Mon 21 Sep 2026 19:24:55 BST) Committer: Siva Mahadevan (Thu 24 Sep 2026 14:37:59 BST) tarfs_test: split large file test into independent cases This avoids globally set timeouts for the group of tarfs_large tests on slower emulated architectures. While here, lower each testcase's timeout to reflect the reduction of work. On QEMU aarch64, the largest case runs in ~500s on a modern desktop, so double that for a conservative estimate. Discussed with: des MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59033 (cherry picked from commit 34c40126fd10abac06cd628c0563c57e777c9eef) M tests/sys/fs/tarfs/tarfs_test.sh _____________________________________________________________________________________________________________ Commit: 7564bb78354b29b0781b23c8e2e30d7f17176136 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7564bb78354b29b0781b23c8e2e30d7f17176136 Author: Siva Mahadevan (Mon 21 Sep 2026 19:15:52 BST) Committer: Siva Mahadevan (Thu 24 Sep 2026 14:37:59 BST) gh-bc/tests: run tests in parallel Helps to mitigate failures due to timeout in CI on emulated architectures: https://ci.freebsd.org/job/FreeBSD-main-riscv64-test/16565/testReport/usr.bin.gh-bc/ MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59547 (cherry picked from commit 1b9aea382e31f1c72bdfefbe01db51dc7bd60952) M usr.bin/gh-bc/tests/bc_tests.sh M usr.bin/gh-bc/tests/dc_tests.sh _____________________________________________________________________________________________________________ Commit: bcc27cf809d2f5a19f423d28539b938b6fa0733a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bcc27cf809d2f5a19f423d28539b938b6fa0733a Author: Gleb Smirnoff (Sat 12 Sep 2026 13:12:36 BST) Committer: Gleb Smirnoff (Thu 24 Sep 2026 04:32:59 BST) raw ip: clear sin_port on bind(2) Application may set sin_port to some value. Although this value is not used by SOCK_RAW, it breaks a check that the address is available. A perfect fix would be not use sockaddrs for ifaddrs, but that would be a bigger change. PR: 298366 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298366 ) Reviewed by: pouria, bnovkov, adrian Differential Revision: https://reviews.freebsd.org/D59570 Fixes: 948ad32ae1e0811f45e1d38f26636fefed5051f0 (cherry picked from commit 465942e8cc8160b21e1a3d5e45fa3ddbb852f6db) M sys/netinet/raw_ip.c _____________________________________________________________________________________________________________ Commit: 7b4bc013b179ab067e9c6212279078b24c11c60c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7b4bc013b179ab067e9c6212279078b24c11c60c Author: Gleb Smirnoff (Mon 7 Sep 2026 20:09:40 BST) Committer: Gleb Smirnoff (Thu 24 Sep 2026 04:32:49 BST) tcp: fix TCPS_CLOSED state underleak in syncache_socket() The syncache entry holds one TCPS_SYN_RECEIVED count that normally is transferred to the the newborn tp. Upon failure syncache_socket() shall not use TCPSTATES_INC/TCPSTATES_DEC (see 5050df3f4aa4 why). But when syncache_socket() fails in_pcbconnect(), it calls tcp_discardcb() to free resources that were just allocated by tcp_newtcpcb() and this tcp_discardcb() would do TCPSTATES_DEC(tp->t_state). The t_state is TCPS_CLOSED at this point. Make tcp_discardcb() symmetrical to tcp_newtcpcb() - not responsible for the TCPSTATES. Make the caller responsible for state count book keeping. Reviewed by: tuexen Fixes: 3703e1a73e0e0367c04f47f793e46495e46e647b Differential Revision: https://reviews.freebsd.org/D59325 (cherry picked from commit b712bb84a7a7dc229324a95170b8a77e0d9c5bec) M sys/netinet/tcp_subr.c M sys/netinet/tcp_usrreq.c _____________________________________________________________________________________________________________ Commit: 7b0bd7ed881e8dca28c82b7834364625c3ba494c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7b0bd7ed881e8dca28c82b7834364625c3ba494c Author: Gleb Smirnoff (Sun 6 Sep 2026 16:59:48 BST) Committer: Gleb Smirnoff (Thu 24 Sep 2026 04:32:26 BST) recv(2): update description of MSG_WAITALL Remove a note about "data of a different type". This was a bug that was fixed in FreeBSD 15. Instead put an exact quote from SUS that lists allowed cases of a short read with MSG_WAITALL. See discussion in D57511. (cherry picked from commit e5bcf988398924568015202bf853b3a9abd3845e) M lib/libsys/recv.2 _____________________________________________________________________________________________________________ Commit: 8359e00444d26cb0936f38de33d74f706f4a142f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8359e00444d26cb0936f38de33d74f706f4a142f Author: Gleb Smirnoff (Mon 3 Aug 2026 22:55:14 BST) Committer: Gleb Smirnoff (Thu 24 Sep 2026 04:31:04 BST) ng_ipfw: provide a tree for faster hook lookup This should assist setups that connect a lot of nodes to ipfw: and then distribute traffic with ipfw(4) tablearg feature. Reviewed by: pouria Differential Revision: https://reviews.freebsd.org/D58547 (cherry picked from commit d3a0bf0a79efb0a28d85d48c88d14bc5d89ab00a) M sys/netgraph/ng_ipfw.c _____________________________________________________________________________________________________________ Commit: 3f27c547c319b9029879e5c6dcdf6946c2cebba4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3f27c547c319b9029879e5c6dcdf6946c2cebba4 Author: Kang Kang (Thu 3 Sep 2026 21:18:51 BST) Committer: Ahmad Khalifa (Thu 24 Sep 2026 03:23:41 BST) ig4: Add Lunar Lake-M I2C controllers 4 and 5 Commit 851dffef532a added the Lunar Lake-M I2C controllers 0 through 3 (0xa878-0xa87b), which sit on PCI device 0x15. The platform exposes two further controllers at 0xa850 and 0xa851 on PCI device 0x19, reported by Intel as I2C #4 and #5. This mirrors the layout already handled for Arrow Lake-U, where both the 0x777x and 0x775x ranges are listed. On an HP OmniBook X Flip 16-as0xxx (Core Ultra 9 288V) the firmware enables only four of the six controllers, and both HID devices sit on the two that were missing: an ELAN2514 touchscreen on controller 4 and a SYNA3503 touchpad on controller 5. Neither attaches without this change, so the machine has no working pointing device. Like the other four, these use the Tiger Lake revision of the I2C IP; Linux treats 0xa850/0xa851 identically to 0xa878-0xa87b in intel-lpss-pci.c. Tested on: HP OmniBook X Flip 16-as0xxx (Intel Core Ultra 9 288V) Reviewed by: vexeduxr MFC after: 2 weeks Signed-off-by: Kang Kang Pull Request: https://github.com/freebsd/freebsd-src/pull/2406 (cherry picked from commit 6b92093fdf65a80cba01af74710bdfe7ac7ef252) M sys/dev/ichiic/ig4_pci.c _____________________________________________________________________________________________________________ Commit: c4d21f6df6314443ba0d59804b7c9823a3c6cc4a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c4d21f6df6314443ba0d59804b7c9823a3c6cc4a Author: Defenso-EBO (Thu 29 Jan 2026 09:47:13 GMT) Committer: Ahmad Khalifa (Thu 24 Sep 2026 03:23:41 BST) ig4: Add support for Lunar Lake-M I2C this patch adds PCI IDs to the ig4(4) driver: - Lunar Lake-M (0xa878, 0xa879, 0xa87a, 0xa87b) These controllers use the Tiger Lake hardware revision of the I2C IP. Adding these IDs enables support for peripherals connected to the I2C Bus. Tested on: Intel Lunar Lake (LENOVO_MT_21QX_BU_Think_FM_ThinkPad T14s Gen 6) Signed-off-by: Defenso-EBO MFC after: 2 weeks Sponsored by: Defenso Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/1995 (cherry picked from commit 851dffef532ad9611fcaf02318744c8de9f397b0) M sys/dev/ichiic/ig4_pci.c _____________________________________________________________________________________________________________ Commit: 784f5708fd0feb4fbc14d24a448a7cf0fc0de664 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=784f5708fd0feb4fbc14d24a448a7cf0fc0de664 Author: Maxim Konovalov (Sat 25 Apr 2026 03:15:37 BST) Committer: Maxim Konovalov (Thu 24 Sep 2026 03:02:06 BST) split.1: grammar PR: 294757 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=294757 ) Reported by: Ulrich Eduard MFC after: 1 week (cherry picked from commit c0c7d1e1af4e42deb9c5a95c735602100c3cc1f2) M usr.bin/split/split.1 _____________________________________________________________________________________________________________ Commit: c5cc084a34a3fc37aab5822f0de601a7e84fd4fa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c5cc084a34a3fc37aab5822f0de601a7e84fd4fa Author: Maxim Konovalov (Thu 10 Sep 2026 17:53:31 BST) Committer: Maxim Konovalov (Thu 24 Sep 2026 01:43:16 BST) ipfw.8: clarify a difference between reset and reset6 actions PR: 298348 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298348 ) MFC after: 2 weeks (cherry picked from commit 009940e3d4d398f0cba8b689d284bd8585e2ad5a) M sbin/ipfw/ipfw.8 _____________________________________________________________________________________________________________ Commit: 1511b29a097e04f972331e68b15429f2eb38277b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1511b29a097e04f972331e68b15429f2eb38277b Author: Maxim Konovalov (Wed 9 Sep 2026 18:55:26 BST) Committer: Maxim Konovalov (Thu 24 Sep 2026 01:42:58 BST) ipfw.8: more grammar fixes (cherry picked from commit b31db8d8de6785804f6b552bc9d7d1960a47eea5) M sbin/ipfw/ipfw.8 _____________________________________________________________________________________________________________ Commit: f38dfbf66b708fc50dd7a8195a6ac0a08da8a25a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f38dfbf66b708fc50dd7a8195a6ac0a08da8a25a Author: Maxim Konovalov (Wed 9 Sep 2026 18:21:37 BST) Committer: Maxim Konovalov (Thu 24 Sep 2026 01:42:41 BST) ipfw.8: whitespace police (cherry picked from commit b891252f209bf22938c9492496d166da96fcba1f) M sbin/ipfw/ipfw.8 _____________________________________________________________________________________________________________ Commit: fd3ded8c0143e32fd8927d0675836b5c882ef2c9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fd3ded8c0143e32fd8927d0675836b5c882ef2c9 Author: Maxim Konovalov (Wed 9 Sep 2026 18:21:06 BST) Committer: Maxim Konovalov (Thu 24 Sep 2026 01:42:21 BST) ipfw.8: grammar (cherry picked from commit 055a726ca6324eead24df4177effd9c69755f386) M sbin/ipfw/ipfw.8 _____________________________________________________________________________________________________________ Commit: 7fab248fed5b001cc2337ff68d0da8efe5c2f8d4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7fab248fed5b001cc2337ff68d0da8efe5c2f8d4 Author: Colin Percival (Tue 22 Sep 2026 01:08:26 BST) Committer: Colin Percival (Wed 23 Sep 2026 19:36:29 BST) vmimage.subr: Include dangling symlinks in images When creating VM images, we filter the METALOG file created by pkg(8) when installing non-base packages, rejecting any lines which correspond to files which don't exist; this solves a problem which arose when a package was installed and then deinstalled (or upgraded) later in the image-building process. Unfortunately [ -e ... ] follows symlinks and is not basedir-aware, so an absolute symlink which is valid *inside* the image is omitted from the image if it points to something which isn't present in the build host system. Replace [ -e ... ] with [ -e ... ] || [ -L ... ] so that symlinks are included even if dangling. While I'm here, add quoting in case future paths become problematic. Sponsored by: Amazon MFC after: 3 days (cherry picked from commit 5a2328a17851ac609ab6c786d9b0db388f15e6b3) M release/tools/vmimage.subr _____________________________________________________________________________________________________________ Commit: 73aca6ba7ed791ad1c83e536f4f2984b18c848f3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=73aca6ba7ed791ad1c83e536f4f2984b18c848f3 Author: Colin Percival (Sun 20 Sep 2026 02:07:49 BST) Committer: Colin Percival (Wed 23 Sep 2026 19:36:28 BST) ec2-desktop: Don't enable firstboot_pkgs We don't have any packages to install by default when the instance first boots, so (as with the "small" flavour) don't enable the firstboot_pkgs script. If someone wants to launch a desktop with packages autoinstalled at first boot, they can enable the script at the same time as they provide the list of packages. Sponsored by: Amazon (cherry picked from commit eca31490322f181a415c14c6bf03e656e81fb4aa) M release/tools/ec2-desktop.conf _____________________________________________________________________________________________________________ Commit: fb039d41f2b4be53a15cce79259486ba1f7c5b76 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fb039d41f2b4be53a15cce79259486ba1f7c5b76 Author: Colin Percival (Sun 20 Sep 2026 00:53:15 BST) Committer: Colin Percival (Wed 23 Sep 2026 19:36:28 BST) ec2-desktop: Fix shell expansion in ec2_setpass Using a backtick inside a backtick-expansion isn't a good idea; switch instead to using $( ... ). Fixes: a9710349513f ("EC2: Add desktop flavour") Sponsored by: Amazon (cherry picked from commit 28cad382a2bb5fc398bd11f8e7b3637ad6c03334) M release/tools/ec2_setpass _____________________________________________________________________________________________________________ Commit: 80c5a04f88c64eda8f3602ebb3b67cc2da86ea56 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=80c5a04f88c64eda8f3602ebb3b67cc2da86ea56 Author: Colin Percival (Mon 7 Sep 2026 08:54:04 BST) Committer: Colin Percival (Wed 23 Sep 2026 19:36:28 BST) EC2: Add desktop flavour Desktop AMIs have xrdp enabled and boot to a KDE desktop; they are as compatible as possible with EC2 Windows AMIs, setting a random password and printing it to the console in encrypted format to be retrieved using the EC2 GetPasswordData API. Two rc.d scripts are included in this commit which will not exist in the long term: ec2_addpass will become part of the ec2-scripts package, and ec2_desktop_extras will go away once its functionality is included elsewhere. MFC After: 1 month Relnotes: yes Sponsored by: Amazon (cherry picked from commit a9710349513f4c6ccb8bcff34fa9ea186fae6114) M release/Makefile.vm A release/tools/ec2-desktop.conf A release/tools/ec2_desktop_extras A release/tools/ec2_setpass _____________________________________________________________________________________________________________ Commit: 82d6bd170fa59f27b18900c39c0d27fe2d922b36 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=82d6bd170fa59f27b18900c39c0d27fe2d922b36 Author: Dimitry Andric (Fri 18 Sep 2026 08:07:46 BST) Committer: Dimitry Andric (Wed 23 Sep 2026 11:18:02 BST) Fix statement with no effect in linuxkpi's xarray.h When compiling the kernel with gcc 14, errors similar to the following are emitted: sys/dev/cxgbe/iw_cxgbe/ev.c: In function 'c4iw_ev_handler': sys/compat/linuxkpi/common/include/linux/xarray.h:132:23: error: statement with no effect [-Werror=unused-value] 132 | flags == 0; \ sys/dev/cxgbe/iw_cxgbe/ev.c:274:17: note: in expansion of macro 'xa_unlock_irqrestore' 274 | xa_unlock_irqrestore(&dev->cqs, flag); | ^~~~~~~~~~~~~~~~~~~~ sys/compat/linuxkpi/common/include/linux/xarray.h:132:23: error: statement with no effect [-Werror=unused-value] 132 | flags == 0; \ sys/dev/cxgbe/iw_cxgbe/ev.c:283:17: note: in expansion of macro 'xa_unlock_irqrestore' 283 | xa_unlock_irqrestore(&dev->cqs, flag); | ^~~~~~~~~~~~~~~~~~~~ It looks like the intent of the "flags == 0" statement was to make the 'flags' macro argument not unused, but it still results in a warning. Use the construct "(void)flags" instead. Reviewed by: bz MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D59787 (cherry picked from commit aca53fc2a6879f45dcbe1a60f91f14a5f6d48448) M sys/compat/linuxkpi/common/include/linux/xarray.h _____________________________________________________________________________________________________________ Commit: 57d542cc92dc5a63e1fb1194618172a95c6aaeb3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=57d542cc92dc5a63e1fb1194618172a95c6aaeb3 Author: Faraz Vahedi (Sun 13 Sep 2026 13:25:47 BST) Committer: Faraz Vahedi (Tue 22 Sep 2026 18:27:25 BST) libc: Preserve const qualifier on bsearch(3) results in tests Reviewed by: dteske, fuz Approved by: dteske (mentor), fuz (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59611 (cherry picked from commit 3caa8d2c58b2787e4c4c64d9ac1831dadd7b0b47) M lib/libc/tests/stdlib/bsearch_b_test.c M lib/libc/tests/stdlib/bsearch_s_test.c M lib/libc/tests/stdlib/bsearch_test.c M lib/libc/tests/stdlib/test-search.h _____________________________________________________________________________________________________________ Commit: b169b80d409c0aa5a3850172ca914a889f08d32a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b169b80d409c0aa5a3850172ca914a889f08d32a Author: Faraz Vahedi (Sun 13 Sep 2026 13:14:26 BST) Committer: Faraz Vahedi (Tue 22 Sep 2026 18:27:10 BST) libc: Parenthesise qualifier-preserving function definitions Required to prevent function-like macros with the same name from being expanded in the definitions once they become active in a later C mode. Without the parentheses, the macro would rewrite the declarator, and the file would consequently fail to compile. This style is already used for similar cases such as mempcpy(). Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59600 (cherry picked from commit c389738f21c09931cd88a84a357be514b5c60030) M lib/libc/aarch64/string/strpbrk.c M lib/libc/amd64/string/strpbrk.c M lib/libc/stdlib/bsearch.c M lib/libc/string/memchr.c M lib/libc/string/memmem.c M lib/libc/string/memrchr.c M lib/libc/string/strcasestr.c M lib/libc/string/strchr.c M lib/libc/string/strnstr.c M lib/libc/string/strpbrk.c M lib/libc/string/strrchr.c M lib/libc/string/strstr.c M lib/libc/string/wcschr.c M lib/libc/string/wcspbrk.c M lib/libc/string/wcsrchr.c M lib/libc/string/wcsstr.c M lib/libc/string/wmemchr.c M sys/libkern/strchrnul.c _____________________________________________________________________________________________________________ Commit: 91973f51fc6a8a8ff3205d971a5b97726f05ad5d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=91973f51fc6a8a8ff3205d971a5b97726f05ad5d Author: Faraz Vahedi (Sat 22 Aug 2026 16:01:27 BST) Committer: Faraz Vahedi (Tue 22 Sep 2026 18:26:14 BST) libc: Implement bsearch_s(), document bsearch_b(), and add unit tests - Implement bsearch_s() as per §K.3.6.3.2 in C23, first specified in C11. It behaves identically to bsearch(), except the callback is called with a third argument, context, which is passed through from the caller, and it also performs runtime constraint checking on its arguments. - Document bsearch_b(), bsearch_s(), and add history section - Add rudimentary unit tests for bsearch(), bsearch_b(), and bsearch_s() Reviewed by: dteske, fuz Approved by: dteske (mentor), fuz (mentor) MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D58876 (cherry picked from commit d59c7ea2701fe7b73b32eef49a7c712ef38de5a0) M include/stdlib.h M lib/libc/stdlib/Makefile.inc M lib/libc/stdlib/Symbol.map M lib/libc/stdlib/bsearch.3 M lib/libc/stdlib/bsearch.c A lib/libc/stdlib/bsearch_s.c M lib/libc/tests/stdlib/Makefile A lib/libc/tests/stdlib/bsearch_b_test.c A lib/libc/tests/stdlib/bsearch_s_test.c A lib/libc/tests/stdlib/bsearch_test.c A lib/libc/tests/stdlib/test-search.h _____________________________________________________________________________________________________________ Commit: f120213029546c1f32cc03eaa89aa042e507f19c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f120213029546c1f32cc03eaa89aa042e507f19c Author: Faraz Vahedi (Mon 22 Jun 2026 00:36:54 BST) Committer: Faraz Vahedi (Tue 22 Sep 2026 18:12:30 BST) libc: Use C23 pseudo-types in qualifier-preserving man page synopses Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 month Pull Request: https://github.com/freebsd/freebsd-src/pull/2288 (cherry picked from commit f9dfe9b8deee0054949eda22f5c0aae8ba3d432d) M lib/libc/stdlib/bsearch.3 M lib/libc/string/bstring.3 M lib/libc/string/memchr.3 M lib/libc/string/memmem.3 M lib/libc/string/strchr.3 M lib/libc/string/string.3 M lib/libc/string/strpbrk.3 M lib/libc/string/strstr.3 M lib/libc/string/wmemchr.3 _____________________________________________________________________________________________________________ Commit: 4bdbd68e6b76c4621c3e0d6d51fa81530caaa5a0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4bdbd68e6b76c4621c3e0d6d51fa81530caaa5a0 Author: Faraz Vahedi (Fri 19 Jun 2026 22:50:20 BST) Committer: Faraz Vahedi (Tue 22 Sep 2026 18:12:01 BST) libc: Implement qualifier-preserving standard library functions Several standard library functions are specified to return an unqualified pointer while accepting a pointer to a potentially const-qualified object. N3020 addresses this behaviour, discarding qualifiers due to incompatible pointer types, by introducing qualifier-preserving macros for the affected set of standard library functions. Add `__qualsel()` helper to ``, implemented using the generic selection, and define qualifier-preserving macros for that set of functions in ``, ``, and ``. Macros are gated on `_STDC_VERSION__ >= 202311L && !__cplusplus`, therefore there is no behavioural change for earlier C modes or C++ translation units. The kernel is likewise unaffected, as it does not include userland headers. As function-like macros, they are transparent except at a call site where the address-of operator is applied, the macro is suppressed via `#undef`, or the identifier appears in parenthesised form; all of which cause the underlying function designator to be used instead. Reviewed by: fuz Approved by: fuz (mentor) MFC after: 1 month Pull Request: https://github.com/freebsd/freebsd-src/pull/2288 (cherry picked from commit d08296c7ab0d7bb259bf7b8cdf9ffb819c1929ab) M include/stdlib.h M include/string.h M include/wchar.h M lib/libc/stdlib/bsearch.3 M lib/libc/string/bstring.3 M lib/libc/string/memchr.3 M lib/libc/string/memmem.3 M lib/libc/string/strchr.3 M lib/libc/string/string.3 M lib/libc/string/strpbrk.3 M lib/libc/string/strstr.3 M lib/libc/string/wmemchr.3 M sys/sys/cdefs.h _____________________________________________________________________________________________________________ Commit: 627c7660793e8587956cfc6845fb5b24ca175473 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=627c7660793e8587956cfc6845fb5b24ca175473 Author: Yudi Yang (Thu 10 Sep 2026 22:53:48 BST) Committer: Mark Johnston (Tue 22 Sep 2026 18:06:52 BST) ntb_tool: Bound memory window option strings parse_mw_buf() copies option names from privileged sysctl input into eight-byte stack buffers. Unbounded %s conversions permit option tokens longer than seven bytes to write past those buffers before the parser validates them. Limit each conversion to seven characters, leaving space for the terminating NUL. Signed-off-by: Yudi Yang Fixes: 96f556f5044a ("NTB Tool: Test driver for NTB hardware drivers.") Reviewed by: markj MFC after: 1 week (cherry picked from commit 602d1b994a22949fff7e4a87cb6e54d6fbad13b6) M sys/dev/ntb/test/ntb_tool.c _____________________________________________________________________________________________________________ Commit: ccaeaa843055442fd73020f6efce2a23fdfc0e84 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ccaeaa843055442fd73020f6efce2a23fdfc0e84 Author: ShengYi Hung (Fri 11 Sep 2026 09:22:39 BST) Committer: Mark Johnston (Tue 22 Sep 2026 18:06:52 BST) amd64/pmap: Return la57 in amd nested page AMD doesn't encode page depth in eptp. As a result, the page level is decided by the host la57 value. Without this, it uses 4 level page and therefore cause machine enable la57 have garbage page translation. PR: 291768 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291768 ) Reviewed by: kib Tested by: Antranig Vartanian MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D57978 (cherry picked from commit ef26f64c11220ea303de16d088c585f9d2908b0f) M sys/amd64/amd64/pmap.c _____________________________________________________________________________________________________________ Commit: cea39b960f9dac460200c9cf43ae407cec814f8b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cea39b960f9dac460200c9cf43ae407cec814f8b Author: Mark Johnston (Fri 4 Sep 2026 13:46:29 BST) Committer: Mark Johnston (Tue 22 Sep 2026 18:06:52 BST) buf: Avoid calling bufdomain() on newly initialized bufs bufinit() inserts newly initialized bufs into the QUEUE_EMPTY queue, at which point they haven't yet been assigned a domain. Thus, bufdomain() returns &bdomain[-1], which trips the array-bounds sanitizer. This is harmless since we don't use the result in that case, but let's avoid the invalid access to begin with. This is sufficient to let an amd64 kernel boot to a login prompt with -fsanitize=array-bounds configured. Reported by: Andrew Griffiths Reviewed by: rlibby, kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59381 (cherry picked from commit e1d903bbfaf91060c43209b35b78a9992fbffe5e) M sys/kern/vfs_bio.c _____________________________________________________________________________________________________________ Commit: b85fe129b8647c3a06c16dd1ad4afb9b33b2d5c5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b85fe129b8647c3a06c16dd1ad4afb9b33b2d5c5 Author: Vladimir Kondratyev (Thu 17 Sep 2026 08:42:48 BST) Committer: Vladimir Kondratyev (Tue 22 Sep 2026 16:47:03 BST) LinuxKPI: Add PCI_EXP_TYPE_UPSTREAM and PCI_VENDOR_ID_AMD defines Required by drm-kmod v6.12.105 Reviewed by: bz, emaste MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59734 (cherry picked from commit 52d1a0c62be1b4bd8e78ee57c86288246d948046) M sys/compat/linuxkpi/common/include/linux/pci.h M sys/compat/linuxkpi/common/include/linux/pci_ids.h _____________________________________________________________________________________________________________ Commit: 1adbb3ff4471bd7c1a5751ecddefb533b4465229 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1adbb3ff4471bd7c1a5751ecddefb533b4465229 Author: Vladimir Kondratyev (Thu 17 Sep 2026 08:42:12 BST) Committer: Vladimir Kondratyev (Tue 22 Sep 2026 16:47:03 BST) LinuxKPI: implement __UNIQUE_ID() macro Requred by drm-kmod v6.12.103 Obtained from: OpenBSD Reviewed by: bz, emaste MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59733 (cherry picked from commit 8b05d84be9e288d201e8631750ae180b07311ba7) M sys/compat/linuxkpi/common/include/linux/compiler.h _____________________________________________________________________________________________________________ Commit: fbaa247e8b7a47af307255b01c81943b35af4486 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fbaa247e8b7a47af307255b01c81943b35af4486 Author: David Heidelberg (Tue 15 Sep 2026 21:17:52 BST) Committer: Vladimir Kondratyev (Tue 22 Sep 2026 16:47:03 BST) Implement vmemdup_{array}_user This is what FreeBSD now does for memdup_user and memdup_array_user (which is wrong for memdup, but correct for vmemdup). The amdgpu DRM driver started this in Linux ~6.12.86+ Reviewed by: wulf MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D57444 (cherry picked from commit 302c6d25da6907ec762ff8937fa86d380743b000) M sys/compat/linuxkpi/common/include/linux/string.h _____________________________________________________________________________________________________________ Commit: 4befe500c045408fa48fe4afd2053a10c53adb21 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4befe500c045408fa48fe4afd2053a10c53adb21 Author: Jean-Sébastien Pédron (Fri 12 Jun 2026 18:55:34 BST) Committer: Vladimir Kondratyev (Tue 22 Sep 2026 16:47:03 BST) linuxkpi: Add 'fd_empty()` The DRM drivers generic code started to use it in Linux 6.13. Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D57582 (cherry picked from commit 50aa145171bc88edde8cf3b7eb13dbbf88a3f8a7) M sys/compat/linuxkpi/common/include/linux/file.h _____________________________________________________________________________________________________________ Commit: 7710a16e9847149882fd87769540d669592d4278 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7710a16e9847149882fd87769540d669592d4278 Author: Jean-Sébastien Pédron (Fri 12 Jun 2026 18:56:35 BST) Committer: Vladimir Kondratyev (Tue 22 Sep 2026 16:47:03 BST) linuxkpi: Define `DEFINE_CLASS()` and `CLASS()` `DEFINE_CLASS()` is in fact named `LINUXKPI_DEFINE_CLASS()` because it conflicts with `DEFINE_CLASS()` defined in . This macro defines a type and a pair of constructor/destructor functions. They are to be used by `CLASS()`: this one declares a variable, initialise it with the constructor and set the `__cleanup()` attribute to call the destructor once the variable goes out of scope. The DRM drivers generic code started to use `CLASS()` in Linux 6.13. It requires the `fd` class to be defined in . Reviewed by: bz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D57583 (cherry picked from commit f2a2e02ae54b836d1e23648756a050406f65111e) M sys/compat/linuxkpi/common/include/linux/cleanup.h M sys/compat/linuxkpi/common/include/linux/file.h _____________________________________________________________________________________________________________ Commit: 36f268e8e7379dfcdbbb530440f2065b7a72f4f2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=36f268e8e7379dfcdbbb530440f2065b7a72f4f2 Author: Mateusz Piotrowski <0mp@FreeBSD.org> (Tue 9 Jun 2026 23:35:26 BST) Committer: Mateusz Piotrowski <0mp@FreeBSD.org> (Tue 22 Sep 2026 12:16:17 BST) dtrace_pid.4: Add example "Listing Program's Function Entries" Reviewed by: bcr MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D57515 (cherry picked from commit 7008192726a30d2d5f8ed912554cc53d7bcf9fba) M share/man/man4/dtrace_pid.4 _____________________________________________________________________________________________________________ Commit: 9def2ea40c590dbda76eba8b5fdc084249452b7b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9def2ea40c590dbda76eba8b5fdc084249452b7b Author: Enji Cooper (Wed 19 Aug 2026 16:31:02 BST) Committer: Enji Cooper (Tue 22 Sep 2026 07:56:09 BST) tests/sys/kern/unix_stream: fix bad assertion kqueue returns a value != -1 on error. Test for that instead of any non-zero value to confirm that success was achieved when calling `kqueue`. This issue exists with ATF 0.22+ [1]. MFC after: 2 weeks Reported by: clang (-Wparenthesis) [1]: https://github.com/freebsd/atf/pull/72 (cherry picked from commit 4881c7a650571eeb4cd89b5af4c1d3e922a67706) M tests/sys/kern/unix_stream.c _____________________________________________________________________________________________________________ Commit: c68b38fae4fd3d52ac7512bdf3e29439d27c6947 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c68b38fae4fd3d52ac7512bdf3e29439d27c6947 Author: Enji Cooper (Tue 1 Sep 2026 20:02:06 BST) Committer: Enji Cooper (Tue 22 Sep 2026 07:53:50 BST) lib/libarchive/tests/Makefile: minor fixes - Remove trailing whitespace - Fix typo with variable referenced adding sources for `test_fuzz`. MFC after: 2 weeks (cherry picked from commit edbb2e9d7a9aba7194dd0f37cede7aea51408f74) M lib/libarchive/tests/Makefile _____________________________________________________________________________________________________________ Commit: 0e0a2d27c93bd95566e342d87ffde1e3665c4e47 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0e0a2d27c93bd95566e342d87ffde1e3665c4e47 Author: Enji Cooper (Wed 19 Aug 2026 16:46:50 BST) Committer: Enji Cooper (Tue 22 Sep 2026 07:52:46 BST) tests/sys/sys/bitstring_test: fix build with ATF 0.22+ Do not assign `b` in the `ATF_REQUIRE` macro. Set and test `b` separately to avoid the issue cited by clang++/g++ after implementing the change referenced in [1]. MFC after: 2 weeks Reported by: clang (-Wparenthesis) Reference: https://github.com/freebsd/atf/pull/72 (cherry picked from commit 4ae95fe823c0ec8b0b93ed27192bfc91058d9a6b) M tests/sys/sys/bitstring_test.c _____________________________________________________________________________________________________________ Commit: d1fb66088c77ff003175568aba79d22956f9fb54 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d1fb66088c77ff003175568aba79d22956f9fb54 Author: Enji Cooper (Wed 2 Sep 2026 08:38:11 BST) Committer: Enji Cooper (Tue 22 Sep 2026 07:52:19 BST) tests/sys/kern/ktls_test: fix -Wsign-compare issue Cast the size_t quantity used in a comparison to off_t to mute a `-Wsign-compare` complaint that now occurs after ATF 0.22 [1]. MFC after: 2 weeks Reported by: clang Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D59285 [1]: https://github.com/freebsd/atf/pull/72 (cherry picked from commit 505103215ee2e3e31d233b952633e5697ac5da5f) M tests/sys/kern/ktls_test.c _____________________________________________________________________________________________________________ Commit: 97ff0d61dbe0c98e495a3d3e6692cc817e03051c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=97ff0d61dbe0c98e495a3d3e6692cc817e03051c Author: Enji Cooper (Wed 19 Aug 2026 09:38:46 BST) Committer: Enji Cooper (Tue 22 Sep 2026 07:51:23 BST) Assign and test `malloc` result separately The previous pattern is cited as an issue with ATF 0.22+ when using clang/gcc after [1]. MFC after: 2 weeks Reported by: clang (-Wparenthesis) Differential Revision: https://reviews.freebsd.org/D59274 [1]: https://github.com/freebsd/atf/pull/72 (cherry picked from commit 2561c468c11309fbc0a097d3f4fcf0bd3bf28b8f) M lib/libc/tests/stdlib/qsort_bench.c _____________________________________________________________________________________________________________ Commit: 5936c0a36b4da9e53385be6202eedd23179b065c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5936c0a36b4da9e53385be6202eedd23179b065c Author: Enji Cooper (Fri 4 Sep 2026 19:16:49 BST) Committer: Enji Cooper (Tue 22 Sep 2026 07:51:15 BST) tty_pts: reduce/correct libatf-c linkage ATF_TESTS_C automatically adds the appropriate library to LDADD -- there's no need to manually append the same library. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59411 (cherry picked from commit 5b10c3c3e3d5125e09e35cd607d15a546d5ad581) M tests/sys/kern/Makefile _____________________________________________________________________________________________________________ Commit: a43fff2a01316fe77a8abac2b2b034e4b2deccd0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a43fff2a01316fe77a8abac2b2b034e4b2deccd0 Author: Ahmad Khalifa (Tue 9 Sep 2025 18:19:24 BST) Committer: Kyle Evans (Mon 21 Sep 2026 14:20:52 BST) stand: remove unused variables (cherry picked from commit 7d48a56205224cfa969c32b47496dc8ac6a6a637) M stand/common/gfx_fb.c M stand/efi/loader/arch/amd64/multiboot2.c M stand/efi/loader/arch/amd64/trap.c M stand/efi/loader/bootinfo.c M stand/efi/loader/copy.c M stand/efi/loader/main.c _____________________________________________________________________________________________________________ Commit: a4ea046d384306b71d71031e94da3bb4f23a26dc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a4ea046d384306b71d71031e94da3bb4f23a26dc Author: Christos Margiolis (Sat 22 Aug 2026 13:48:50 BST) Committer: Christos Margiolis (Mon 21 Sep 2026 12:04:08 BST) snd_hdsp*: malloc(9) with M_WAITOK Perform the allocations outside the lock section so that we can use M_WAITOK. Holding the lock here is actually not really necessary and we could just as well remove it, but keep it for consistency. Sponsored by: The FreeBSD Foundation MFC after: 1 month Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D59079 (cherry picked from commit b5c1ab6c8f2811278b801084713a6618f3b783d3) M sys/dev/sound/pci/hdsp-pcm.c M sys/dev/sound/pci/hdspe-pcm.c _____________________________________________________________________________________________________________ Commit: 1490193fb0537141a05bd6a58837d1b6cec41bcd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1490193fb0537141a05bd6a58837d1b6cec41bcd Author: Christos Margiolis (Mon 7 Sep 2026 14:04:22 BST) Committer: Christos Margiolis (Mon 21 Sep 2026 12:04:08 BST) snd_dummy: Bump primary channel count Makes it easier to test scenarios involving more than 1 primary channels per direction. Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D59085 (cherry picked from commit 358fe149f591028945a8e5a51dff9121a2358c85) M sys/dev/sound/dummy.c _____________________________________________________________________________________________________________ Commit: eefd55678c530e9d0cf3480edf86c4d815f36fc8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=eefd55678c530e9d0cf3480edf86c4d815f36fc8 Author: Christos Margiolis (Mon 7 Sep 2026 14:04:09 BST) Committer: Christos Margiolis (Mon 21 Sep 2026 12:04:08 BST) sound: Prefer idle primary channels when allocating dsp_chn_alloc() stopped at the first primary channel that was either idle or already had vchans. Since the list is walked in order, the first channel matched both conditions once it had been used, so every client after the first was stacked onto it as a vchan and the remaining primary channels were never allocated at all. This is invisible on devices with a single primary channel, but not on those which provide several. snd_emu10kx(4), for instance, registers four primary channels for its front device, each able to run with its own rate. Look for an idle primary channel first, and only fall back to sharing one that already has vchans when there is none left. Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D59084 (cherry picked from commit 5e02679f03cda224f59adcf83d5308fffa6d11a1) M sys/dev/sound/pcm/dsp.c _____________________________________________________________________________________________________________ Commit: e77d5a7d20ebc2f9b62cea03ffab60bc20de6c9c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e77d5a7d20ebc2f9b62cea03ffab60bc20de6c9c Author: Piotr Kubaj (Mon 14 Sep 2026 14:13:51 BST) Committer: Piotr Kubaj (Mon 21 Sep 2026 08:31:36 BST) powerpc/radix: acquire the pmap lock in mmu_radix_extract() mmu_radix_extract() walks the page tables without holding the pmap lock, unlike its hash MMU counterpart moea64_extract(). A concurrent unmap can free and recycle the page table page being walked, so the read returns whatever now occupies that memory and the caller gets a physical address that never existed. That is how mmu_radix_sync_icache() came to hand a bogus address to __syncicache() and panic the machine. Commit 1574ca1955f5 worked around it by taking the pmap lock in mmu_radix_sync_icache(), but the machine independent callers of pmap_extract() - vm_sync_icache(), proc_rwmem() and the vslock() paths - remain exposed to the same failure. Rename the existing body to mmu_radix_extract_locked(), which asserts the lock, and make mmu_radix_extract() a thin wrapper that acquires it. mmu_radix_sync_icache() already holds the pmap lock, so it calls the locked variant directly and neither recurses nor reacquires the lock once per page. Suggested by: alc MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59320 Reviewed by: markj, jhibbits (cherry picked from commit 42c69445ca336b13e27e3e5960ace344c64ae0eb) M sys/powerpc/aim/mmu_radix.c _____________________________________________________________________________________________________________ Commit: 191bfb69602d49cd080db0e1ca914e48ddf54eab URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=191bfb69602d49cd080db0e1ca914e48ddf54eab Author: Piotr Kubaj (Tue 1 Sep 2026 07:52:06 BST) Committer: Piotr Kubaj (Mon 21 Sep 2026 08:31:35 BST) powerpc/radix: take the pmap lock in mmu_radix_sync_icache() mmu_radix_sync_icache() walked the page tables with an unlocked pmap_extract() and passed the result straight to PHYS_TO_DMAP(), checking only that it was non-zero. Nothing keeps the mapping - or the page table page holding it - alive across that window: if another thread of the same process tears a mapping down concurrently, the page table page can be freed and reused, so pmap_extract() reads arbitrary memory and returns a bogus physical address. __syncicache() then dereferences an unmapped direct map address and the kernel takes a data storage interrupt: fatal kernel trap: exception = 0x300 (data storage interrupt) virtual address = 0xc003317ca6022a00 dsisr = 0x40000000 srr0 = 0xc000000000f59460 (__syncicache) lr = 0xc000000000f23588 (mmu_radix_sync_icache) pid = 23878, comm = skyframe-evaluator- panic: data storage interrupt trap The faulting addresses decode to physical addresses far beyond installed memory (~140 TB and ~900 TB on a 256 GB machine), i.e. translations that never existed. The hash MMU implementation of the same method, moea64_sync_icache(), already holds PMAP_LOCK() across the loop; do the same here. mmu_radix_extract() does not acquire the pmap lock itself, so this introduces no recursion. JIT workloads reach this path constantly: ppc_instr_emulate() calls pmap_sync_icache() on the faulting address for the SIGILL "second chance" retry, so a multithreaded JVM executing freshly written code races against its own threads' mmap/munmap. Every panic observed here was in a JVM thread. Tested on POWER9 (radix MMU) with a bazel/JVM build loop that previously panicked the machine twice within ten minutes: afterwards 13 consecutive builds and more than 10 hours of uptime with no panic, on both 15.1-RELEASE and 16.0-CURRENT. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59311 Reviewed by: jhibbits, adrian (cherry picked from commit 1574ca1955f55151c4c76b978c8a772ac3abfa9f) M sys/powerpc/aim/mmu_radix.c _____________________________________________________________________________________________________________ Commit: 23152cae2f7df9a4291aa2cc8705600bbd78c57e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=23152cae2f7df9a4291aa2cc8705600bbd78c57e Author: Jason A. Harmening (Mon 7 Sep 2026 18:36:20 BST) Committer: Jason A. Harmening (Mon 21 Sep 2026 06:09:22 BST) vfs_lookup_cross_mount(): fix missing LK_CANRECURSE This was a rather dumb miss on my part in commit 42442d7a6e. LK_CANRECURSE is clearly needed in any case in which the covered vnode is held exclusive across the call to VFS_ROOT(), regardless of whether it was initially held exclusive or upgraded. The commit message for that change also noted that unionfs lookup only worked without LK_CANRECURSE due to a coincidence of the then-current unionfs implementation. As it happens, said coincidence was recently removed in commit b952606b4f ("unionfs_lock(): eliminate LK_CANRECURSE special- case"). PR: 298201 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298201 ) Reported by: olivier Fixes: 42442d7a6e "Generalize the VV_CROSSLOCK logic in vfs_lookup" Reviewed by: kib, markj, pho Tested by: pho Differential Revision: https://reviews.freebsd.org/D59494 (cherry picked from commit f57ce26f2572efb8adc825ad4efc0e0743a9112f) M sys/kern/vfs_lookup.c _____________________________________________________________________________________________________________ Commit: 45198c6abca7e61cc690120ab1732481c54cd8eb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=45198c6abca7e61cc690120ab1732481c54cd8eb Author: Emanuel Helms (Mon 7 Sep 2026 20:50:58 BST) Committer: Rick Macklem (Mon 21 Sep 2026 02:42:30 BST) nfsuserd.c: Fix handling where pw_name/gr_name differ from lookup name When an NSS backend returns a canonical pw_name or gr_name that differs from the lookup name supplied by the NFSv4 upcall, nfsuserd stores the successful mapping in the kernel cache under the canonical name instead of the requested name. This causes the retry lookup performed by nfsv4_strtouid() or nfsv4_strtogid() to miss the newly inserted cache entry, resulting in the default UID/GID being returned although the NSS lookup itself succeeded. PR: 296753 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296753 ) (cherry picked from commit 1771ab245c2341033f0cee3bd098c76888cf3515) M usr.sbin/nfsuserd/nfsuserd.c _____________________________________________________________________________________________________________ Commit: 99c63b819cb5b505f10827281639f51a261d4dfa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=99c63b819cb5b505f10827281639f51a261d4dfa Author: Dag-Erling Smørgrav (Wed 16 Sep 2026 15:22:09 BST) Committer: Dag-Erling Smørgrav (Sun 20 Sep 2026 17:51:13 BST) unbound: Update to 1.26.1 Release notes at https://community.nlnetlabs.nl/t/unbound-1-26-1-released Merge commit '120aa088f4807126af42a652a07c5090e7294fcf' Security: CVE-2026-77860 Security: CVE-2026-77955 Security: CVE-2026-78227 Security: CVE-2026-80225 Security: CVE-2026-81634 Security: CVE-2026-81642 Security: CVE-2026-82717 Security: CVE-2026-82720 Security: CVE-2026-85501 (cherry picked from commit 1fb9c5ffe25fcba0857c4fdf6ed19ca5bf6bc858) M contrib/unbound/config.guess M contrib/unbound/config.h.in M contrib/unbound/config.sub M contrib/unbound/configure M contrib/unbound/configure.ac M contrib/unbound/daemon/remote.c M contrib/unbound/daemon/worker.c M contrib/unbound/doc/README M contrib/unbound/doc/example.conf M contrib/unbound/doc/example.conf.in M contrib/unbound/doc/libunbound.3 M contrib/unbound/doc/libunbound.3.in M contrib/unbound/doc/unbound-anchor.8 M contrib/unbound/doc/unbound-anchor.8.in M contrib/unbound/doc/unbound-checkconf.8 M contrib/unbound/doc/unbound-checkconf.8.in M contrib/unbound/doc/unbound-control.8 M contrib/unbound/doc/unbound-control.8.in M contrib/unbound/doc/unbound-host.1 M contrib/unbound/doc/unbound-host.1.in M contrib/unbound/doc/unbound.8 M contrib/unbound/doc/unbound.8.in M contrib/unbound/doc/unbound.conf.5 M contrib/unbound/doc/unbound.conf.5.in M contrib/unbound/doc/unbound.conf.rst M contrib/unbound/iterator/iter_scrub.c M contrib/unbound/services/authzone.c M contrib/unbound/services/authzone.h M contrib/unbound/services/cache/dns.c M contrib/unbound/services/listen_dnsport.c M contrib/unbound/services/listen_dnsport.h M contrib/unbound/services/mesh.c M contrib/unbound/util/config_file.c M contrib/unbound/util/config_file.h M contrib/unbound/util/configlexer.c M contrib/unbound/util/configlexer.lex M contrib/unbound/util/configparser.c M contrib/unbound/util/configparser.h M contrib/unbound/util/configparser.y M contrib/unbound/util/data/dname.c M contrib/unbound/util/data/msgreply.c M contrib/unbound/util/data/msgreply.h M contrib/unbound/util/fptr_wlist.c M contrib/unbound/util/netevent.c M contrib/unbound/util/netevent.h M contrib/unbound/validator/autotrust.c M contrib/unbound/validator/autotrust.h M contrib/unbound/validator/val_nsec.c M contrib/unbound/validator/val_nsec.h M contrib/unbound/validator/val_nsec3.c M contrib/unbound/validator/val_nsec3.h M contrib/unbound/validator/val_sigcrypt.c M contrib/unbound/validator/val_sigcrypt.h M contrib/unbound/validator/val_utils.c M contrib/unbound/validator/val_utils.h M contrib/unbound/validator/validator.c M contrib/unbound/validator/validator.h M lib/libunbound/config.h _____________________________________________________________________________________________________________ Commit: 36c6d5275677cd54e46880509fcc5a5dcebaa743 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=36c6d5275677cd54e46880509fcc5a5dcebaa743 Author: Dag-Erling Smørgrav (Sun 13 Sep 2026 14:29:59 BST) Committer: Dag-Erling Smørgrav (Sun 20 Sep 2026 17:51:12 BST) tzcode: Update to 2026d MFC after: 1 week (cherry picked from commit 212e3524943222650688bd1f49d5eb4c9326de7f) libc/stdtime: Catch up with tzcode 2026d Fixes: 212e35249432 ("tzcode: Update to 2026c") (cherry picked from commit 1689b875b4b80c152cf7d3652c72335a2149173e) M contrib/tzcode/CONTRIBUTING M contrib/tzcode/Makefile M contrib/tzcode/NEWS M contrib/tzcode/README M contrib/tzcode/localtime.c M contrib/tzcode/private.h M contrib/tzcode/strftime.c M contrib/tzcode/theory.html M contrib/tzcode/tz-art.html M contrib/tzcode/tz-how-to.html M contrib/tzcode/tz-link.html M contrib/tzcode/version M contrib/tzcode/zdump.c M contrib/tzcode/zic.8 M contrib/tzcode/zic.c M lib/libc/stdtime/strftime.c _____________________________________________________________________________________________________________ Commit: cd8eef45d2d0296afe0226bde587f52eb0404516 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cd8eef45d2d0296afe0226bde587f52eb0404516 Author: Dag-Erling Smørgrav (Tue 8 Sep 2026 21:55:15 BST) Committer: Dag-Erling Smørgrav (Sun 20 Sep 2026 17:51:12 BST) hastd: Use fixed-length protocol names All communication between hastd nodes and internally between hastd and its worker children passes through the same pair of send / receive functions. The receive function uses recv(2) with the MSG_WAITALL flag, which in theory means we should never get a short read. However, when handing off a socket to a worker child, we also pass a variable-length string identifying the type of socket we're passing, and reading this string relies on a short read. This used to work because the arrival of the descriptor would interrupt the recv(2) call, but this bug was fixed when the AF_UNIX code was rewritten a while ago and hastd has been broken ever since. Fixing the length of the protocol name to four characters including the terminating null solves the short-read bug by never requiring a short read (nothing else in hastd requires one). Note that this issue appears to have been reported independently first by Alessandro Sagratini in PR 292322 and then by Martin Vidovic in D57511. I ended up going in a different direction than Martin's patch, but his analysis was invaluable, hence the double credit below. PR: 292322 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=292322 ) Reported by: Martin Vidovic MFC after: 1 week Event: EuroBSDcon DevSummit 2026 Reviewed by: xtronom_gmail.com, kevans, glebius, gjb Differential Revision: https://reviews.freebsd.org/D59521 (cherry picked from commit b7e5c2e008f5b441611830ad3a0329de0882419e) M sbin/hastd/proto.c M sbin/hastd/proto_impl.h M sbin/hastd/proto_socketpair.c _____________________________________________________________________________________________________________ Commit: 0d0f40cd29d2aba7bfeef8861b73930bbb84308e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0d0f40cd29d2aba7bfeef8861b73930bbb84308e Author: Dag-Erling Smørgrav (Sat 5 Sep 2026 16:44:05 BST) Committer: Dag-Erling Smørgrav (Sun 20 Sep 2026 17:51:12 BST) hastd: Ensure nvpair padding is initialized The proto-libnv implementation embedded in hastd pads names and values out to the nearest multiple of eight bytes, but leaves the padding uninitialized, leaking up to 14 bytes of recycled heap per pair in a message. While here, switch from bcopy() to memcpy(). MFC after: 3 days Reviewed by: kevans, emaste Differential Revision: https://reviews.freebsd.org/D59343 (cherry picked from commit 911bda7cffbf358c4e83ea05cfe980d429aff61c) M sbin/hastd/nv.c _____________________________________________________________________________________________________________ Commit: 24eaeb8314fcd3ab1ce171fa694a94d8cc3eb10b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=24eaeb8314fcd3ab1ce171fa694a94d8cc3eb10b Author: Dag-Erling Smørgrav (Sun 13 Sep 2026 13:27:50 BST) Committer: Dag-Erling Smørgrav (Sun 20 Sep 2026 17:51:12 BST) tests: Fix graid3 insert tests The script was passing the wrong device name to `graid3 insert` and didn't notice that the command was failing. MFC after: 1 week Event: EuroBSDcon 2026 DevSummit Reviewed by: delphij Differential Revision: https://reviews.freebsd.org/D59564 (cherry picked from commit 4cc85d1f00fa1938923fe8d6fc2934593d4303b4) M tests/sys/geom/class/raid3/6_test.sh M tests/sys/geom/class/raid3/7_test.sh M tests/sys/geom/class/raid3/8_test.sh M tests/sys/geom/class/raid3/9_test.sh _____________________________________________________________________________________________________________ Commit: 89cbf4bc875fbe8719ba26204569858c2d6930dd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=89cbf4bc875fbe8719ba26204569858c2d6930dd Author: Dag-Erling Smørgrav (Sun 13 Sep 2026 13:27:18 BST) Committer: Dag-Erling Smørgrav (Sun 20 Sep 2026 17:51:11 BST) graid3: Restore lock acquisition The lock acquisition in g_raid3_ctl_insert() was improperly dropped a while ago, making it impossible to add or replace a device in an existing graid3. This went unnoticed because the tests are broken. MFC after: 1 week Fixes: fcf69f3dbce6 ("Consistently use gctl_get_provider instead of home-grown variants.") Event: EuroBSDcon 2026 DevSummit Reviewed by: delphij Differential Revision: https://reviews.freebsd.org/D59563 (cherry picked from commit 9094f86b57a7e4b356cae83f35c8d41c842b42a2) M sys/geom/raid3/g_raid3_ctl.c _____________________________________________________________________________________________________________ Commit: d1ec7360f9ad4e829f2ab6a4fabff5cc53cfc559 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d1ec7360f9ad4e829f2ab6a4fabff5cc53cfc559 Author: Juraj Lutter (Thu 17 Sep 2026 07:50:45 BST) Committer: Juraj Lutter (Sun 20 Sep 2026 09:34:52 BST) man: Link enic.4 to if_enic.4 For consistency, create a symbolic link from enic.4 to also if_enic.4 Reviewed by: ziaee, #manpages Differential Revision: https://reviews.freebsd.org/D59755 MFC after: 3 days (cherry picked from commit 3eaa8b19ba1fdbe41a46dc84c4278e9eb5d49608) M share/man/man4/Makefile _____________________________________________________________________________________________________________ Commit: ecf568607e9152f76afbe95f101a3bfb7255d661 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ecf568607e9152f76afbe95f101a3bfb7255d661 Author: Dimitry Andric (Thu 17 Sep 2026 20:36:25 BST) Committer: Dimitry Andric (Sun 20 Sep 2026 08:02:51 BST) kern.mk: make clang 23 -Wunused-but-set-global non-fatal This warning triggers in a few places in contributed code, and would therefore be annoying to fix. Use -Wno-error= to at least show the warnings so there is some incentive to submit them upstream. MFC after: 3 days (cherry picked from commit bcd0d76d4882dd8d19a49c050411b5c58a0deb74) M sys/conf/kern.mk _____________________________________________________________________________________________________________ Commit: 4cff1ab17352d7cd28f72ca8fa2f1ba08d3a604e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4cff1ab17352d7cd28f72ca8fa2f1ba08d3a604e Author: Dimitry Andric (Thu 17 Sep 2026 20:35:22 BST) Committer: Dimitry Andric (Sun 20 Sep 2026 08:02:47 BST) bsd.sys.mk: make clang 23 -Wunused-but-set-global non-fatal This warning triggers in a few places in contributed code, and would therefore be annoying to fix. Use -Wno-error= to at least show the warnings so there is some incentive to submit them upstream. MFC after: 3 days (cherry picked from commit d577b4ed588c0f259d7298188233b17dc0435dd4) M share/mk/bsd.sys.mk _____________________________________________________________________________________________________________ Commit: 672f2c50d516ad9051e88240c7132874e7855812 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=672f2c50d516ad9051e88240c7132874e7855812 Author: Dimitry Andric (Thu 17 Sep 2026 20:32:45 BST) Committer: Dimitry Andric (Sun 20 Sep 2026 08:02:38 BST) Merge commit 1f332ae4f1b3 from llvm-project (by Alexander Kornienko): Fix -Wformat diagnostic after #190965 (#193704) Fixes libunwind compiler diagnostic when building with clang after 034d4dcad6396d1241e8262e69871b8d61da7e4f: ``` In file included from libunwind/src/libunwind.cpp:31: In file included from libunwind/src/UnwindCursor.hpp:52: libunwind/src/CompactUnwinder.hpp:339:46: error: format specifies type 'unsigned long long' but the argument has type 'uint64_t' (aka 'unsigned long') [-Werror,-Wformat] 338 | "function starting at 0x%llX", | ~~~~ | %lX 339 | compactEncoding, functionStart); | ^~~~~~~~~~~~~ libunwind/src/config.h:215:63: note: expanded from macro '_LIBUNWIND_DEBUG_LOG' 215 | #define _LIBUNWIND_DEBUG_LOG(msg, ...) _LIBUNWIND_LOG(msg, __VA_ARGS__) | ~~~ ^~~~~~~~~~~ libunwind/src/config.h:181:45: note: expanded from macro '_LIBUNWIND_LOG' 181 | fprintf(stderr, "libunwind: " msg "\n", __VA_ARGS__); \ | ~~~ ^~~~~~~~~~~ In file included from libunwind/src/libunwind.cpp:31: In file included from libunwind/src/UnwindCursor.hpp:52: libunwind/src/CompactUnwinder.hpp:458:39: error: format specifies type 'unsigned long long' but the argument has type 'uint64_t' (aka 'unsigned long') [-Werror,-Wformat] 457 | "function starting at 0x%llX", | ~~~~ | %lX 458 | encoding, functionStart); | ^~~~~~~~~~~~~ libunwind/src/config.h:215:63: note: expanded from macro '_LIBUNWIND_DEBUG_LOG' 215 | #define _LIBUNWIND_DEBUG_LOG(msg, ...) _LIBUNWIND_LOG(msg, __VA_ARGS__) | ~~~ ^~~~~~~~~~~ libunwind/src/config.h:181:45: note: expanded from macro '_LIBUNWIND_LOG' 181 | fprintf(stderr, "libunwind: " msg "\n", __VA_ARGS__); \ | ~~~ ^~~~~~~~~~~ ``` This avoids a -Werror failure with clang >= 23. MFC after: 3 days (cherry picked from commit 8a8c14464dd372495c9bf4b87c9b88d73f78d587) M contrib/llvm-project/libunwind/src/CompactUnwinder.hpp _____________________________________________________________________________________________________________ Commit: 4c6e74a7e582ed45755d717b856d663d4ae76032 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4c6e74a7e582ed45755d717b856d663d4ae76032 Author: Bjoern A. Zeeb (Mon 14 Sep 2026 20:01:12 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:35:33 BST) UPDATING: bump __FreeBSD_version to 1501503 for LinuxKPI changes The size of multiple embedded structs have changed and may lead to problems (pci_error_handlers in pci_driver, dev_pm_info in struct device). Allow these changes to be detected by bumping __FreeBSD_version. (cherry picked from commit e1ad124136deb4f270d4cef759bf9e9debdb17d3) M UPDATING M sys/sys/param.h _____________________________________________________________________________________________________________ Commit: 9b0e73723f80e66cd4391b1da94734a4304c7a8f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9b0e73723f80e66cd4391b1da94734a4304c7a8f Author: Artem Bunichev (Sun 13 Sep 2026 22:21:40 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:11 BST) LinuxKPI: 802.11: Always lock around lkpi_80211_mo_{remove_interface,stop}() Add the missing locking to another two MO driver downcalls, as drivers always expect it (e.g. rtw89 by assertion). Add the lock and might_sleep assertions to the respective lkpi_80211_mo_* downcalls. PR: 298417 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298417 ) Reviewed by: bz Differential Revision: https://reviews.freebsd.org/D59608 (cherry picked from commit 73166d21bd831db264509cbdce1ab3b63ab5b189) M sys/compat/linuxkpi/common/src/linux_80211.c M sys/compat/linuxkpi/common/src/linux_80211_macops.c _____________________________________________________________________________________________________________ Commit: 28ca279559d3ff80af69cb3e1e32cb3e6246be47 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=28ca279559d3ff80af69cb3e1e32cb3e6246be47 Author: Bjoern A. Zeeb (Sun 16 Aug 2026 23:05:42 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:11 BST) LinuxKPI: add can_wakeup option and accessor functions We can implement device_set_wakeup_capable() in the !CONFIG_PM_SLEEP case; we do not have the infrastructure in place for the CONFIG_PM_SLEEP case so leave a pr_debug TODO. Needed by an upcoming wireless driver. Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D58883 (cherry picked from commit a424fb3519ebf8fb972e7ba45ba19df322992b00) M sys/compat/linuxkpi/common/include/linux/pm.h M sys/compat/linuxkpi/common/src/linux_compat.c _____________________________________________________________________________________________________________ Commit: 3ff1aea1e83b12c7191b8ff98b90d03603486f0a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3ff1aea1e83b12c7191b8ff98b90d03603486f0a Author: Bjoern A. Zeeb (Sun 16 Aug 2026 23:03:56 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:11 BST) LinuxKPI: pci: add reset_{prepare,done} to pci_error_handlers Needed by an upcoming wireless driver. Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D58882 (cherry picked from commit c40219c572df8b4b0c2392ee341d93bc82e6076b) M sys/compat/linuxkpi/common/include/linux/pci.h _____________________________________________________________________________________________________________ Commit: 5fd93b626c683184c98eb5127b6ae127804f3aa5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5fd93b626c683184c98eb5127b6ae127804f3aa5 Author: Bjoern A. Zeeb (Sun 16 Aug 2026 23:01:44 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:11 BST) LinuxKPI: add PCI_IRQ_AFFINITY #define Add the #define for PCI_IRQ_AFFINITY and leave a pr_debug note in pci_alloc_irq_vectors() that it is unimplemented. The flag is needed by an upcoming WiFi driver. Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D58881 (cherry picked from commit b589e403a2c3bd2a94fb2ab88cd23255c68a9f05) M sys/compat/linuxkpi/common/include/linux/pci.h M sys/compat/linuxkpi/common/src/linux_pci.c _____________________________________________________________________________________________________________ Commit: 0b1dea8f51e41fa602294cf2526481c49123e2da URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0b1dea8f51e41fa602294cf2526481c49123e2da Author: Bjoern A. Zeeb (Sun 16 Aug 2026 22:54:36 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:10 BST) LinuxKPI: implement dma_{alloc,free}_{noncoherent,attrs} We use one to implement the other given direction stays unused. This is needed by an upcoming wifi driver. Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D58880 (cherry picked from commit c3fa17a6a331db8aad03e9cb89ba97e1811ab381) M sys/compat/linuxkpi/common/include/linux/dma-mapping.h M sys/compat/linuxkpi/common/src/linux_pci.c _____________________________________________________________________________________________________________ Commit: 49092883117817e3201371b4c366ada630309b86 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=49092883117817e3201371b4c366ada630309b86 Author: Bjoern A. Zeeb (Sun 16 Aug 2026 22:37:08 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:10 BST) LinuxKPI: fix argument type to lkpi_pci_msi_desc_alloc() lkpi_pci_msi_desc_alloc() takes an unsigned int, not an int. While here make sure the prototype is visibile in interrupt.h as well before use to avoid -Wimplicit-function-declaration errors. Discovered while working on a wireless driver. Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D58879 (cherry picked from commit cfb23b01e269e8a0a84066637b82b746f01b46b4) M sys/compat/linuxkpi/common/include/linux/interrupt.h M sys/compat/linuxkpi/common/include/linux/pci.h M sys/compat/linuxkpi/common/src/linux_pci.c _____________________________________________________________________________________________________________ Commit: 67c01ebfc241a2ee9037f9ca85efc84ccdd56982 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=67c01ebfc241a2ee9037f9ca85efc84ccdd56982 Author: Bjoern A. Zeeb (Sun 16 Aug 2026 22:32:31 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:10 BST) LinuxKPI: pci: add pci_select_bars() and pci_msix_vec_count() For pci_select_bars() we use the LinuxKPI internal information, while for pci_select_bars() we fall back to the native PCI stack. Needed by a wifi driver. Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D58878 (cherry picked from commit 55c07af60172b211116be47010fc0831aafc99e8) M sys/compat/linuxkpi/common/include/linux/pci.h _____________________________________________________________________________________________________________ Commit: e44083c958b56332b6c8389bef51f0d1ff4c5860 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e44083c958b56332b6c8389bef51f0d1ff4c5860 Author: Bjoern A. Zeeb (Sun 16 Aug 2026 22:30:43 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:10 BST) LinuxKPI: add typedef for clockid_t Needed by a wireless driver (not really using it) to compile. Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D58877 (cherry picked from commit 401d0922a4bfcf40d3ae1866a0d90f955264def0) M sys/compat/linuxkpi/common/include/linux/types.h _____________________________________________________________________________________________________________ Commit: a8420c2c1d08379685465124d9737e1b5c5ed05d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a8420c2c1d08379685465124d9737e1b5c5ed05d Author: Bjoern A. Zeeb (Wed 12 Aug 2026 15:01:19 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:09 BST) LinuxKPI: add #include of rculist.h to ethtool.h for Linux conformance Add #include rculist.h to ethtool.h to fullfill expectations of Linux drivers without having to modify them. Reviewed by: dumbbell, emaste Differential Revision: https://reviews.freebsd.org/D58874 (cherry picked from commit 4570a1bf760a3cd63eb7dd9e3ebbc3cf103bda4d) M sys/compat/linuxkpi/common/include/linux/ethtool.h _____________________________________________________________________________________________________________ Commit: c1a87ab11976a2c9bdec9d725bc4a17c8ff2d42b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c1a87ab11976a2c9bdec9d725bc4a17c8ff2d42b Author: Bjoern A. Zeeb (Thu 27 Aug 2026 09:04:08 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:09 BST) LinuxKPI: rcu: add optional condition to list_for_each_entry_rcu() list_for_each_entry_rcu() can take an optional condition. Add the macro argument so code remains compiling but do not do anything with it just yet. Leave comments as list_for_each_entry_rcu() likely should have a different implementation. Sponsored by: The FreeBSD Foundation Reviewed by: dumbbell Differential Revision: https://reviews.freebsd.org/D59292 (cherry picked from commit e975ce86ff11a330128f5b21c7cd11c28d3aff87) M sys/compat/linuxkpi/common/include/linux/rculist.h _____________________________________________________________________________________________________________ Commit: 6aef530a8e3b9520ec93fccff30a949f32c5a5bf URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6aef530a8e3b9520ec93fccff30a949f32c5a5bf Author: Bjoern A. Zeeb (Tue 15 Sep 2026 01:28:58 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:09 BST) mlx5: remove init_timer() The init_timer() was there from day one in (dc7e38ac4da50). It was never needed as the setup_timer() below already did more than just that part of the job. This is part of trying to clear up the Linux pre-4.15 timer KPI from LinuxKPI. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D59681 (cherry picked from commit 3769ee9bc4167d4f508ba4f14cf544dedf7c520e) M sys/dev/mlx5/mlx5_core/mlx5_health.c _____________________________________________________________________________________________________________ Commit: e03abec93cf811c359e82291a41e0dbb49e1ebf1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e03abec93cf811c359e82291a41e0dbb49e1ebf1 Author: Bjoern A. Zeeb (Mon 14 Sep 2026 23:51:09 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:09 BST) mlx4: convert to timer_setup() Linux KPI The Linux driver switched away from using this timer in e22979d96a55d. Locally adjust the code to use timer_setup/from_timer in order to get us out of Linux version 4.15 (and earlier) KPIs. Also, right away, apply 41cb08555c416 from_timer -> timer_container_of. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D59680 (cherry picked from commit 871c09c9b47eb0ef0f17a5a1fc2299dba7693516) M sys/dev/mlx4/mlx4_en/en.h M sys/dev/mlx4/mlx4_en/mlx4_en_cq.c M sys/dev/mlx4/mlx4_en/mlx4_en_tx.c _____________________________________________________________________________________________________________ Commit: d7eb529adc6f62088b8206d30fe8ebf1a6790ad1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d7eb529adc6f62088b8206d30fe8ebf1a6790ad1 Author: Bjoern A. Zeeb (Mon 14 Sep 2026 23:39:03 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:08 BST) mlx4: apply upstream changes to convert to timer_setup() Linux KPI Apply Linux change 55c0fcc3de460 "Convert timers to use timer_setup()" to get us out of Linux version 4.15 (and earlier) KPIs. Also apply 41cb08555c416 from_timer -> timer_container_of. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D59679 (cherry picked from commit 272138c279dd1954f3fb88d9e0b2874db74597a3) M sys/dev/mlx4/mlx4_core/mlx4_catas.c _____________________________________________________________________________________________________________ Commit: bf0e7356855b7084a5ea978e7ae16995b5a1b93b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bf0e7356855b7084a5ea978e7ae16995b5a1b93b Author: Bjoern A. Zeeb (Mon 14 Sep 2026 23:27:26 BST) Committer: Bjoern A. Zeeb (Sat 19 Sep 2026 10:34:08 BST) mthca: apply upstream changes to convert to timer_setup() LinuxKPI Apply upstream changes b9eaf18722221 init_timer() -> setup_timer(), and 86cb30ec07cdc7 setup_timer() -> timer_setup() to get us out of Linux version 4.15 (and earlier) KPIs. Also apply 41cb08555c416 from_timer -> timer_container_of. Reviewed by: jhb, emaste Differential Revision: https://reviews.freebsd.org/D59677 (cherry picked from commit 9d467dfa31922b3b2fbb145f202200bf66ca550a) M sys/dev/mthca/mthca_catas.c _____________________________________________________________________________________________________________ Commit: 11df1d931657e3eeee85b267d50ffea401cfc845 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=11df1d931657e3eeee85b267d50ffea401cfc845 Author: Roman Bogorodskiy (Fri 21 Aug 2026 14:27:56 BST) Committer: Roman Bogorodskiy (Sat 19 Sep 2026 08:23:51 BST) bhyve: fix byte order for manually set NVMe eui64 Manually specified eui64 value gets converted to big endian twice: first using htobe64() and then using be64enc(). On little-endian hosts that results in a little-endian value instead of a big-endian. Fix by removing htobe64() for a user submitted value. Fixes: 409a80e5a434 ("bhyve: Create EUI64 for NVMe namespaces") Reviewed by: chuck Relnotes: yes Sponsored by: The FreeBSD Foundation MFC after: 3 weeks Differential Revision: https://reviews.freebsd.org/D59080 (cherry picked from commit 8bd30a72e7012126a1c8d52b3ba32f844a88f8dc) M UPDATING M usr.sbin/bhyve/pci_nvme.c _____________________________________________________________________________________________________________ Commit: 72ed4d012ea9a0ad66848f813360b0bcf20c213e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=72ed4d012ea9a0ad66848f813360b0bcf20c213e Author: Piotr Kubaj (Thu 3 Sep 2026 15:08:45 BST) Committer: Piotr Kubaj (Fri 18 Sep 2026 14:34:25 BST) umtx: do not sleep on an unowned mutex after a spurious CAS failure On ll/sc architectures casueword32() may report a spurious store-conditional failure (reservation lost to an interrupt, preemption, or another CPU touching the same reservation granule), and this is indistinguishable from a genuine comparison mismatch: both return 1. That is intentional since D20772 and documented in casueword(9) ("The store can fail on load-linked/store-conditional architectures."), so callers must cope. do_lock_normal() does not fully cope. When the initial UMUTEX_UNOWNED -> id acquire CAS fails spuriously, the observed owner is still UMUTEX_UNOWNED, so neither the UMUTEX_CONTESTED branch nor the real-owner case applies, and execution falls through past the "rv == 1 but not contested, likely store failure" comment into the sleep path. There, the contested-bit CAS (expecting the observed owner, i.e. UMUTEX_UNOWNED) succeeds because the mutex really is unowned, stamping m_owner = UMUTEX_CONTESTED with no owner tid, and the thread sleeps on "umtxn" forever: nobody owns the mutex, so no unlock and no wakeup ever arrive. In _UMUTEX_TRY mode the same situation returns a false EBUSY for a free mutex. Treat an observed owner of UMUTEX_UNOWNED like UMUTEX_CONTESTED: try to acquire the mutex, setting the contested bit, instead of falling through to the sleep path. rv == 1 with the observed value equal to the expected value can only mean a spurious store failure, so the mutex is free. If the acquire CAS fails again, the outer loop restarts and re-evaluates ownership. The contested bit set with no waiters present only costs the matching unlock one trip through the kernel. This was hit in practice on powerpc64le (POWER9): the Swift runtime's Synchronization.Mutex issues _umtx_op(UMTX_OP_MUTEX_LOCK) directly with no userspace fast path, so an uncontended lock of an unowned mutex runs the kernel CAS exactly where a spurious failure deadlocks (single-threaded process parked on "umtxn" with m_owner == 0x80000000, observed as Foundation.Process.run() hanging). libthr mostly masks the bug because pthread_mutex_lock() enters the kernel only when there is a real owner that will eventually issue a wakeup. The mechanism was confirmed with an experimental powerpc kernel that instead retried the ll/sc sequence inside casueword32()/casueword(); that also eliminated the hang, but is not proposed here since the single-attempt semantics of casueword(9) are intentional. Reviewed by: kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D59338 (cherry picked from commit c5d9485e7d7faeba1019301ed83a781dac2d0cb0) M sys/kern/kern_umtx.c _____________________________________________________________________________________________________________ Commit: 73275ec3d6dc4b110bef3b91b6f2a85f6f88f77e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=73275ec3d6dc4b110bef3b91b6f2a85f6f88f77e Author: Konstantin Belousov (Sun 13 Sep 2026 11:10:37 BST) Committer: Konstantin Belousov (Fri 18 Sep 2026 12:54:59 BST) rtld: more caution when parsing in digest_notes() (cherry picked from commit fa848d4d0c0371cdbf39265b6528f4c61bc02c7d) M libexec/rtld-elf/rtld.c _____________________________________________________________________________________________________________ Commit: c9cf582a297941bd5ac4c59ba312f83fdc6e869a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c9cf582a297941bd5ac4c59ba312f83fdc6e869a Author: Konstantin Belousov (Sun 13 Sep 2026 11:09:12 BST) Committer: Konstantin Belousov (Fri 18 Sep 2026 12:54:58 BST) rtld.c: fix indent (cherry picked from commit 2ef97312d5d46aeaeb26f6e5815d964412bc499e) M libexec/rtld-elf/rtld.c _____________________________________________________________________________________________________________ Commit: 98a7c2e384aefbca44ff2decd33d8182e82a1d19 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=98a7c2e384aefbca44ff2decd33d8182e82a1d19 Author: Andrey V. Elsukov (Mon 7 Sep 2026 05:42:09 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:12:22 BST) iavf: Probe the Hyper-V VF device ID The shared code already recognizes IAVF_DEV_ID_VF_HV and handles it through the regular iavf register and virtchnl paths, but the PCI probe table omits it. Add the missing entry so the driver attaches. PR: 239849 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=239849 ) (cherry picked from commit d983dc521b6ecaf054bdbe938bd1bf079030f76d) M sys/dev/iavf/iavf_drv_info.h _____________________________________________________________________________________________________________ Commit: 2723a9c67ce05de0957da89a3a9e2afec7f3df6b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2723a9c67ce05de0957da89a3a9e2afec7f3df6b Author: Kevin Bowling (Mon 10 Aug 2026 17:01:13 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:12:04 BST) ixgbe: Correct Wake-on-LAN configuration Wake-on-LAN capability was inferred from NVM bits on every MAC even though 82599 support is board and sometimes port specific. Private sysctls formed a second policy interface, and the driver neither coordinated the controller wake source with PCI PME nor reliably rebuilt address filters erased by the stop-time reset. Use the standard ifconfig wake capabilities. Derive support from the 82599 board and port matrix or the X540-and-newer NVM capability. Require D3hot PME support, and use the NVM APME bit only to select the initial magic-packet policy after initializing the LAN function number. Snapshot requested filters before the terminal stop so shared reset and PHY code sees the active wake policy. After reset, restore RAR0, the multicast table, receive filtering, and the optical laser before arming WUFC, WUC, and PCI PME. Remove device wake sources before clearing PCI PME on detach, resume, and when wake is disabled. Clear autonomous APM so ifconfig remains authoritative. Treat X550EM low-power-link-up failure as best effort and allow shutdown to continue after a wake-programming error. The 82599, X540, X550, and E610 datasheets document the standard ACPI wake filters used here; the E610 ACPI path includes magic-packet wake. Validated on a dual-port E610. Both ports completed three direct-D3 cycles covering wake disabled and magic-packet wake armed. A system S3 cycle woke through ix0 with WUS 0x00000002 (magic packet). Link and traffic recovered after each transition. Note that many add-in cards in this family do not support WoL; LOM and OCP cards are more likely. The E610 as tested does. Sponsored by: Dirk-Willem van Gulik from Web Weaving (E610 hardware) Sponsored by: BBOX.io (cherry picked from commit c004384343bece0b984cfe3520ec077ef2483e1f) M share/man/man4/ix.4 M sys/dev/ixgbe/if_ix.c M sys/dev/ixgbe/if_ixv.c M sys/dev/ixgbe/ixgbe.h _____________________________________________________________________________________________________________ Commit: 171d620555321de10e0b463ecf9bc9370b9c0faa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=171d620555321de10e0b463ecf9bc9370b9c0faa Author: Kevin Bowling (Thu 3 Sep 2026 11:55:36 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:11:18 BST) ixl: Reset VSI statistics after initial sampling The initial statistics update runs before the PF VSI has obtained its firmware-assigned statistics counter index. Discard that provisional VSI baseline so the first update after initialization records the correct hardware counter. Without this reset, subtracting a larger provisional value from a newly selected counter can be mistaken for a 32-bit wrap and report nearly UINT32_MAX receive drops immediately after boot. Reported by: Daniel Braniss Tested by: Daniel Braniss Obtained from: Intel ixl 1.14.2 Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59336 (cherry picked from commit 429cb537015ea11808de23dac8c1cc7ade3a4552) M sys/dev/ixl/if_ixl.c _____________________________________________________________________________________________________________ Commit: d2231e4d0daafa1f38a7fe4d9515e755f914cc9f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d2231e4d0daafa1f38a7fe4d9515e755f914cc9f Author: Kevin Bowling (Thu 3 Sep 2026 04:32:14 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:10:39 BST) ixl: Route suspend and resume through iflib Register the iflib device suspend and resume methods. Remove the direct initialization from the driver resume callback because iflib_device_resume() performs the datapath restart after the callback returns. Sponsored by: BBOX.io (cherry picked from commit d5aa8022da56c5188e9f2c7068d95009ff2019be) M sys/dev/ixl/if_ixl.c _____________________________________________________________________________________________________________ Commit: c8aabf25142806a766c2e3e5690f885c3b73b947 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c8aabf25142806a766c2e3e5690f885c3b73b947 Author: Kevin Bowling (Thu 3 Sep 2026 04:32:14 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:10:21 BST) ixv: Wire iflib suspend and resume methods Register the standard iflib device suspend and resume methods so the framework reinitializes the VF datapath after a system power transition. Sponsored by: BBOX.io (cherry picked from commit 10d09e6e8a7ff141b5dc39e6ddca5b7c2cb0b66b) M sys/dev/ixgbe/if_ixv.c _____________________________________________________________________________________________________________ Commit: 65fbb9de87a7fbcc793a28029b18e0d3720cdaec URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=65fbb9de87a7fbcc793a28029b18e0d3720cdaec Author: Kevin Bowling (Thu 3 Sep 2026 04:32:14 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:10:07 BST) iavf: Wire iflib suspend and resume methods Register the iflib device suspend and resume methods so the existing driver callbacks run during system power transitions. This stops mailbox retry work before suspend and lets iflib reinitialize the datapath after resume. Sponsored by: BBOX.io (cherry picked from commit b8fe6d7055b3a274cd646d0a6b5d3928f2fd7d7a) M sys/dev/iavf/if_iavf_iflib.c _____________________________________________________________________________________________________________ Commit: 68d7d3a6c44a333f88f83c96746c390970ecd702 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=68d7d3a6c44a333f88f83c96746c390970ecd702 Author: Kevin Bowling (Thu 3 Sep 2026 04:32:14 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:09:53 BST) axgbe: Wire iflib power management methods Register the standard iflib device methods for shutdown, suspend, and resume. This gives axgbe the framework managed reinitialization used by other iflib drivers after a power transition. Sponsored by: BBOX.io (cherry picked from commit 2397b18ceb5d69d4d4e3bd0b3ca07dcd077bf843) M sys/dev/axgbe/if_axgbe_pci.c _____________________________________________________________________________________________________________ Commit: 671ae2d2ed680166ddb09df5e82d2cd23fffb076 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=671ae2d2ed680166ddb09df5e82d2cd23fffb076 Author: Kevin Bowling (Wed 26 Aug 2026 10:21:55 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:09:34 BST) enic: Route resets through iflib lifecycle Mark the driver stopped after attach so its first IFDI_STOP() call does not repeat hardware shutdown. Defer error interrupt recovery through iflib instead of calling driver stop and init methods from interrupt context. Let iflib own the stop and restart around MTU changes as well, avoiding duplicate lifecycle operations. Sponsored by: BBOX.io (cherry picked from commit 58f985559ee689e50233b9113df4f37375b48c2d) M sys/dev/enic/if_enic.c _____________________________________________________________________________________________________________ Commit: 49b9e5a5cb50ef02ac644ec9db5fd542403a584c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=49b9e5a5cb50ef02ac644ec9db5fd542403a584c Author: Kevin Bowling (Tue 1 Sep 2026 00:24:49 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:09:09 BST) iflib: Do not hold the ifnet lock across registration iflib_device_register() acquired IFNET_WLOCK to preserve lock order when ether_ifattach() was called with the context lock held. The context lock is now released around ether_ifattach(), making registration-wide ifnet serialization unnecessary. Keeping IFNET_WLOCK across driver attachment also allows synchronous interface event handlers to recurse on it. The rtnetlink interface-group dump does so through if_foreach_group() while handling the interface attachment event. Remove the outer lock and the corresponding failure-path unlock and relock transitions. Continue to drop the context lock around ether_ifattach() and taskqueue drains, and preserve context-lock coverage for driver attach and detach. Validated under WITNESS on 82576 and I226 controllers. Multiple VF attach and detach cycles, netmap control operations, and every iflib registration failure injection point completed without lock or cleanup errors. PR: 298121 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298121 ) Reported by: glebius, netchild, Yuichiro NAITO Reviewed by: gallatin, glebius Fixes: e0e12405285b ("netmap: fix LOR in iflib_netmap_register") Fixes: 2f8f892ca344 ("rtnetlink: Add FreeBSD-specific IFLAF_GROUP support") Fixes: 90e7dbe5e2ca ("iflib: Add registration failure injection points") Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59294 (cherry picked from commit 9d59ca793f7097575351d6de2fd61431233b5ed9) M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: 2a77f4d8512691f88b2b8173e138da4722e1e06a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2a77f4d8512691f88b2b8173e138da4722e1e06a Author: Kevin Bowling (Thu 27 Aug 2026 15:01:51 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:08:47 BST) tpm: Move user copies outside the TPM 1.2 lock The character-device paths held the transaction and lifecycle lock while uiomove() accessed user memory. A user page fault could therefore delay suspend or detach, and a copyout failure occurred while the TPM response was still active. Copy commands into the bounded stack buffer before taking the lock. For reads, validate the response header, buffer the complete response while the lock is held, finish the TPM transaction, and copy it to userspace after unlocking. Use a non-blocking allocation so memory pressure cannot turn response buffering into another lifecycle wait. NetBSD uses the same separation but limits responses to its fixed 1 KiB buffer. Allocate the TPM-advertised response length to preserve the existing FreeBSD support for larger streamed responses. On a ThinkPad T440p with an STMicro TPM 1.2, a PCR read into a 4 KiB userspace buffer returned the expected 30-byte response. A deliberately short five-byte read failed cleanly, relinquished locality zero, and the next PCR read succeeded. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59238 (cherry picked from commit 5319035afacceaa267792ec193eb03fa51c972f7) M sys/dev/tpm/tpm.c _____________________________________________________________________________________________________________ Commit: b89bacb6eec0c6f18243f5b709c7a3482936ea92 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b89bacb6eec0c6f18243f5b709c7a3482936ea92 Author: Kevin Bowling (Thu 27 Aug 2026 14:42:49 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:08:31 BST) tpm: Bound TPM 1.2 locality ownership A TIS locality must remain active while a command is in flight, but should be relinquished once the command completes or is abandoned. The driver retained locality zero after probe, initialization, and resume, and several transaction error paths returned without releasing it. Closing the device after writing a command without reading its response had the same effect. Track locality ownership and whether a command is awaiting its response. Release locality after probe, initialization, and resume; retain it only across a successful command write and its matching response read. Abort and release on errors, replacement commands, close, and detach. Wait for locality during ISA probe instead of assuming an immediate grant, release locality acquired by the probe, and stop treating the command-style TPM_ACCESS register as restorable state. On a ThinkPad T440p with an STMicro TPM 1.2, the old driver left TPM_ACCESS at 0xa1 immediately after attach. The new driver left it at 0x81 after attach, completed PCR reads, and closing with an unread response. PCR reads also survived an unload and reload without TPM or locking diagnostics. Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59237 (cherry picked from commit 4e0f283fb97a7b0903adc7bc3ef2f6e07167c73e) M sys/dev/tpm/tpm.c M sys/dev/tpm/tpmvar.h _____________________________________________________________________________________________________________ Commit: db010a62dfaffe8dd72f73b4792d68bb86629f22 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=db010a62dfaffe8dd72f73b4792d68bb86629f22 Author: Kevin Bowling (Thu 27 Aug 2026 12:51:10 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:08:00 BST) tpm: Remove Giant from the TPM 1.2 driver Serialize TPM 1.2 commands, character-device methods, and power transitions with an sx lock, following the command ownership model used by the TPM 2.0 driver. Reject new operations once detach starts and drain the character device before releasing transport resources. Giant also closed the interrupt race between the final TIS status check and tsleep. Replace that implicit dependency with a mutex and condition variable, use an absolute deadline across unrelated wakeups, and make the interrupt handler MPSAFE. Create the device node atomically with its softc and finish failed write transactions so every command path releases its transport state. The polling path was validated on ThinkPad T430 and T440p systems with their STMicro TPM 1.2 devices enabled. Exclusive-open behavior, 100 consecutive PCR reads, and module unload and reload completed without errors on both systems. Two consecutive S3 cycles on each system preserved PCR values and command access, including another 100 PCR reads after resume, without lock or TPM diagnostics. Reviewed by: kevans, seuros Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59211 (cherry picked from commit 799e14aa60d81aa9eed1985e4683e12f6851ecfd) M sys/dev/tpm/tpm.c M sys/dev/tpm/tpmvar.h _____________________________________________________________________________________________________________ Commit: 74f94f11dd6915b1d23d64bf92aaf037c4b31fc9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=74f94f11dd6915b1d23d64bf92aaf037c4b31fc9 Author: Kevin Bowling (Wed 26 Aug 2026 11:33:38 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:07:45 BST) tpm: Restore TPM 1.2 TIS state after resume Firmware restores the state saved by TPM_ORD_SaveState, but the TIS interrupt, locality, and command FIFO state are not guaranteed to survive S3. The legacy driver previously treated resume as a no-op. Revalidate the interface and device identity, disable and acknowledge stale interrupts, restore the configured interrupt vector, reacquire locality zero, and return the FIFO to command-ready state. Also disable TIS interrupts during initial setup when the device uses polling so firmware settings cannot leave an unhandled interrupt enabled. TIS 1.3 Table 22 makes the interrupt control registers locality protected. Acquire locality before disabling or programming them during initial setup and resume rather than relying on probe retaining locality. Keep TPM self-test outside the resume critical path. It can take minutes on some TPM 1.2 devices and is not required to restore the transport state. The two-commit suspend and resume series completed two consecutive S3 cycles on a ThinkPad T440p with its STMicro TPM 1.2 Security Chip enabled. PCR 0 was readable with the same value before and after each cycle, and no SaveState or TIS restoration errors were logged. The locality ordering completed another two consecutive S3 cycles on a ThinkPad T430 with the same STMicro TPM in polling mode. PCR 0 again remained stable, and TPM access recovered without errors after each resume. PR: 291067 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291067 ) Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59193 (cherry picked from commit 96ed6005082fc63d633408ba3ad697e8757e80f9) M sys/dev/tpm/tpm.c _____________________________________________________________________________________________________________ Commit: 63c33b5f1192e2869e33d139ac3d583ec4f966cf URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=63c33b5f1192e2869e33d139ac3d583ec4f966cf Author: Kevin Bowling (Wed 26 Aug 2026 11:32:34 BST) Committer: Kevin Bowling (Fri 18 Sep 2026 01:07:28 BST) tpm: Correct the TPM 1.2 suspend transaction The legacy driver wrote TPM_ORD_SaveState directly to the command FIFO, but used ordinal 156 instead of the TPM 1.2 ordinal 152 and never completed the transaction through the transport start and end methods. On a TIS device this omitted TPM_STS_GO, and the response read used the header length as flags instead of requesting the complete parameter size. The legacy Atmel reader would also dereference the null byte-count pointer. Send the header-only command through the normal transport lifecycle, validate the response header and TPM result, and retry TPM_WARN_RETRY for a bounded five seconds. Fail suspend rather than enter S3 after an unsuccessful state save. This follows the TPM 1.2 SaveState command definition and the bounded retry policy used by other TPM 1.2 implementations. The stock driver failed to resume a ThinkPad T440p with its STMicro TPM 1.2 Security Chip enabled; disabling the chip made S3 reliable. With this change and the following TIS resume restoration, the enabled TPM completed two consecutive S3 cycles. PCR 0 was readable with the same value before and after each cycle, and no TPM errors were logged. PR: 291067 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291067 ) Reviewed by: kevans Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59192 (cherry picked from commit c0356f4cd02255419a4d4309f393998185c8de2d) M sys/dev/tpm/tpm.c _____________________________________________________________________________________________________________ Commit: 6513d742f155efe84f86c5e5447cf51ab8c0a53e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6513d742f155efe84f86c5e5447cf51ab8c0a53e Author: Xin LI (Mon 14 Sep 2026 02:08:22 BST) Committer: Xin LI (Thu 17 Sep 2026 05:12:22 BST) MFV: xz 5.8.4. (cherry picked from commit 7ffc4ec4860d01414b493cdf43738878a9ede538) M contrib/xz/ChangeLog M contrib/xz/THANKS M contrib/xz/src/common/my_landlock.h M contrib/xz/src/liblzma/api/lzma/container.h M contrib/xz/src/liblzma/api/lzma/hardware.h M contrib/xz/src/liblzma/api/lzma/version.h M contrib/xz/src/liblzma/check/crc32_arm64.h M contrib/xz/src/liblzma/check/crc32_loongarch.h M contrib/xz/src/liblzma/common/alone_decoder.c M contrib/xz/src/liblzma/common/file_info.c M contrib/xz/src/liblzma/common/index.c M contrib/xz/src/liblzma/common/index.h M contrib/xz/src/liblzma/common/index_decoder.c M contrib/xz/src/liblzma/common/index_decoder.h M contrib/xz/src/liblzma/common/lzip_decoder.c M contrib/xz/src/liblzma/common/microlzma_decoder.c M contrib/xz/src/liblzma/common/stream_buffer_decoder.c M contrib/xz/src/liblzma/common/stream_decoder_mt.c M contrib/xz/src/liblzma/lz/lz_decoder.c M contrib/xz/src/liblzma/lzma/lzma2_decoder.c M contrib/xz/src/liblzma/simple/simple_coder.c M contrib/xz/src/xz/args.c M contrib/xz/src/xz/args.h M contrib/xz/src/xz/coder.c M contrib/xz/src/xz/list.c M contrib/xz/src/xz/main.c M contrib/xz/src/xz/message.c M contrib/xz/src/xz/util.c M contrib/xz/src/xz/xz.1 M lib/liblzma/config.h _____________________________________________________________________________________________________________ Commit: 16c5abb17df01fa9ee7702dcd1188c079a1c2e57 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=16c5abb17df01fa9ee7702dcd1188c079a1c2e57 Author: Juraj Lutter (Sat 12 Sep 2026 10:54:09 BST) Committer: Juraj Lutter (Wed 16 Sep 2026 20:39:30 BST) man: Link mlx5en.4 also to if_mce.4 For consistency, create a symbolic link from mlx5en.4 to also if_mce.4 Reviewed by: ziaee, #manpages Event: EuroBSDCon 2026 Differential Revision: https://reviews.freebsd.org/D59610 MFC after: 3 days (cherry picked from commit e46a7d842a7572cc7ccef88a463a9af1a725fefc) M share/man/man4/Makefile _____________________________________________________________________________________________________________ Commit: 9780b67b74335e54e41085e4786d37d833099e38 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9780b67b74335e54e41085e4786d37d833099e38 Author: Alexander Ziaee (Sun 13 Sep 2026 16:49:41 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:05:58 BST) tpm.4: Canonicalize SYNOPSIS and HARDWARE (cherry picked from commit f49dc19881d853b26dd675127f579f923dc87de2) M share/man/man4/tpm.4 _____________________________________________________________________________________________________________ Commit: c9503a5d644cde71af2422373b3d36391ea7ee1c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c9503a5d644cde71af2422373b3d36391ea7ee1c Author: Alexander Ziaee (Sun 13 Sep 2026 16:46:31 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:55 BST) tslog.4: Canonicalize SYNOPSIS Also, add the missing blank comment line at the top of the file. Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit dc867c353c8b423131f7f6a7f687c86713bf0666) M share/man/man4/tslog.4 _____________________________________________________________________________________________________________ Commit: c5beef4b6f52c6ba40cec39f168a7b5b59316e7f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c5beef4b6f52c6ba40cec39f168a7b5b59316e7f Author: Alexander Ziaee (Sun 13 Sep 2026 16:44:43 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:55 BST) udl.4: Canonicalize SYNOPSIS Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 7b70103a6303b53ea8130cfbb89a3eb2e476e2e5) M share/man/man4/udl.4 _____________________________________________________________________________________________________________ Commit: c6793d2e503fb0a0c7431118cec25345a3426bbf URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c6793d2e503fb0a0c7431118cec25345a3426bbf Author: Alexander Ziaee (Sun 13 Sep 2026 16:41:51 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:54 BST) udbp.4: Canonicalize SYNOPSIS, structure, SPDX Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit bba2aebcebc1d46b15e1b6d86c041186dc8d49f0) M share/man/man4/udbp.4 _____________________________________________________________________________________________________________ Commit: 6376ac71739a052aaab769485679081cf4015d0a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6376ac71739a052aaab769485679081cf4015d0a Author: Alexander Ziaee (Sun 13 Sep 2026 16:34:30 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:54 BST) udav.4: Canonicalize SYNOPSIS + "Fast" Ethernet Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 6fe1d51aedb086e49bb338ed87861abdcce416f2) M share/man/man4/udav.4 _____________________________________________________________________________________________________________ Commit: 7aa9728ec6129398b9d09a93d7deb4bb47dc5c5e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7aa9728ec6129398b9d09a93d7deb4bb47dc5c5e Author: Alexander Ziaee (Sun 13 Sep 2026 16:31:58 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:54 BST) ucycom.4: Canonicalize SYNOPSIS Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit c64f6133ff083feb1c9451e12af5b7de0c2d6a41) M share/man/man4/ucycom.4 _____________________________________________________________________________________________________________ Commit: 61d9d5f31c7179bd9c8ca5418f6181c71870f864 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=61d9d5f31c7179bd9c8ca5418f6181c71870f864 Author: Alexander Ziaee (Sun 13 Sep 2026 16:31:14 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:54 BST) ucom.4: Canonicalize SYNOPSIS + tag SPDX Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 08ab66b3f69391e753c6f5449105d61ce81cd0ed) M share/man/man4/ucom.4 _____________________________________________________________________________________________________________ Commit: 5b360fef83a8f98eb161cec948d5b076912a65f2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5b360fef83a8f98eb161cec948d5b076912a65f2 Author: Alexander Ziaee (Sun 13 Sep 2026 16:23:03 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:54 BST) ubtbcmfw.4: Canonicalize SYNOPSIS + tag SPDX Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 28bbe93c5bb5e6fb34bf680341faa9c869417320) M share/man/man4/ubtbcmfw.4 _____________________________________________________________________________________________________________ Commit: f03b08c9c4ccc137bdaf15c5bc5fdcfeb3ab2542 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f03b08c9c4ccc137bdaf15c5bc5fdcfeb3ab2542 Author: Alexander Ziaee (Sun 13 Sep 2026 13:53:46 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:54 BST) ubser.4: Canonicalize SYNOPSIS + tag SPDX Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 372b94623ca48d7ceae02175b5ffd635e62c2c58) M share/man/man4/ubser.4 _____________________________________________________________________________________________________________ Commit: 3eadc1c7d2dc1091af6a1d5eb407cdae01f85d46 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3eadc1c7d2dc1091af6a1d5eb407cdae01f85d46 Author: Alexander Ziaee (Sun 13 Sep 2026 13:52:00 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:53 BST) ubsa.4: Canonicalize SYNOPSIS + tag SPDX Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 01e9a8bc8a124d3e19280d82b1ce16bd69237627) M share/man/man4/ubsa.4 _____________________________________________________________________________________________________________ Commit: 92da9b3e05ae4341df8329d59c014a589b22ef8e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=92da9b3e05ae4341df8329d59c014a589b22ef8e Author: Alexander Ziaee (Sun 13 Sep 2026 13:50:22 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:53 BST) uath.4: Canonicalize FIRMWARE -> FILES Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 2b67a5b5273e0af7c9dbf9f92b2b8c7b1940f9c3) M share/man/man4/uath.4 _____________________________________________________________________________________________________________ Commit: 04464e95fee35d3dfe9c6e5fdd7ee9f7b709e780 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=04464e95fee35d3dfe9c6e5fdd7ee9f7b709e780 Author: Alexander Ziaee (Sun 13 Sep 2026 13:49:13 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:53 BST) uath.4: Canonicalize SYNOPSIS Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 2c92e4c931e7f12f1dc9b82036b26295c1f4d37e) M share/man/man4/uath.4 _____________________________________________________________________________________________________________ Commit: 7d350ca20c6f29a8387e0a93a13be5300b609df5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7d350ca20c6f29a8387e0a93a13be5300b609df5 Author: Alexander Ziaee (Sun 13 Sep 2026 13:36:30 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:52 BST) uark.4: Canonicalize SYNOPSIS + tag SPDX Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit ca87782318d2e14bb07acfacd11c0be63a5e64a6) M share/man/man4/uark.4 _____________________________________________________________________________________________________________ Commit: c54f685e09befb9483f1749f36ea69f3d8246969 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c54f685e09befb9483f1749f36ea69f3d8246969 Author: Alexander Ziaee (Sun 13 Sep 2026 13:34:47 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:52 BST) u3g.4: Canonicalize SYNOPSIS, fix stray hyphen Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 7ec06b4d9726188c7315cf1b2d5b69fec4a385b4) M share/man/man4/u3g.4 _____________________________________________________________________________________________________________ Commit: 5a20fcaa3bbec18622410637d8f44ee65ab5ac42 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5a20fcaa3bbec18622410637d8f44ee65ab5ac42 Author: Alexander Ziaee (Sun 13 Sep 2026 13:29:33 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:52 BST) vmx.4: Canonicalize device number Event: EuroBSDcon 2026 MFC after: 3 days (cherry picked from commit 1bf7d54e416cad3c89eed0e781a85d15e6864920) M share/man/man4/vmx.4 _____________________________________________________________________________________________________________ Commit: ed0adb244484366e5f1e43e63b96b2da5087b84f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ed0adb244484366e5f1e43e63b96b2da5087b84f Author: Alexander Ziaee (Sat 12 Sep 2026 14:22:59 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:48 BST) wpa_supplicant.8: Renew SEE ALSO + tag SPDX - remove old wifi drivers, these are very old and we have many more - add quick start guide to connecting to wifi Event: EuroBSDCon 2026 MFC after: 3 days Reviewed by: bz, emaste Differential Revision: https://reviews.freebsd.org/D59615 (cherry picked from commit d5c09e32ce8aa625ab9429c5fe87137fb92bff53) M usr.sbin/wpa/wpa_supplicant/wpa_supplicant.8 _____________________________________________________________________________________________________________ Commit: f7550ef0e196d20ac1b4f39d810d016444c633e2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f7550ef0e196d20ac1b4f39d810d016444c633e2 Author: Alexander Ziaee (Fri 11 Sep 2026 11:04:08 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:48 BST) game controller manuals: Canonicalize SYNOPSIS While here, tag SPDX. Event: EuroBSDcon Devsummit 2026 MFC after: 3 days Reviewed by: wulf Differential Revision: https://reviews.freebsd.org/D59256 (cherry picked from commit b7541acacb662436591277977317072a4eaa6dc3) M share/man/man4/hgame.4 M share/man/man4/ps4dshock.4 M share/man/man4/xb360gp.4 _____________________________________________________________________________________________________________ Commit: 7e81330dc4e562520988f031594846399da5f786 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7e81330dc4e562520988f031594846399da5f786 Author: Alexander Ziaee (Tue 8 Sep 2026 12:36:26 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:45 BST) sort.1: Fix default memory buffer size PR: 261496 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=261496 ) Fixes: 554442439dd0 ("Change the memory heuristics") MFC after: 3 days Reported by: wosch (cherry picked from commit 4fb4be7e36428058c6abaa29f359b3d70ae60f0a) M usr.bin/sort/sort.1.in _____________________________________________________________________________________________________________ Commit: 6465136a2be540e82f64e0768713ff5a49a723b5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6465136a2be540e82f64e0768713ff5a49a723b5 Author: Alexander Ziaee (Mon 7 Sep 2026 23:28:19 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:45 BST) pw.conf: Describe better + tag SPDX MFC after: 3 days Reported by: Artem Bunichev Differential Revision: https://reviews.freebsd.org/D58329 (cherry picked from commit 0e390df45468f19191775083a1505e3eb042f6bc) M usr.sbin/pw/pw.conf.5 _____________________________________________________________________________________________________________ Commit: f319d2716b7f1c68511267526d86be289f2304f3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f319d2716b7f1c68511267526d86be289f2304f3 Author: Alexander Ziaee (Sun 6 Sep 2026 18:04:59 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:45 BST) nvd.4: Canonicalize SYNOPSIS, TUNABLES, tag SPDX MFC after: 3 days Event: Berlin Hackathon 202609 (cherry picked from commit 04f53c5fa4cc8109fb263c6eed3b3c45099411f5) M share/man/man4/nvd.4 _____________________________________________________________________________________________________________ Commit: 3bfbd107766890a102906bccbf00e7241b137794 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3bfbd107766890a102906bccbf00e7241b137794 Author: Alexander Ziaee (Fri 4 Sep 2026 18:42:39 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:45 BST) tun.4: Canonicalize SYNOPSIS and AUTHORS While here, s/PR#2411/NetBSD PR#2411/ in the comments for clarity. I had to go to netbsd sources to get this information. MFC after: 3 days Event: Berlin Hackathon 202609 (cherry picked from commit 555972c6c94721bffbff1ecb51d916977b5c85f7) M share/man/man4/tun.4 _____________________________________________________________________________________________________________ Commit: 5a38418d80f42102d9b6daed1a2e5dd951d1c19a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5a38418d80f42102d9b6daed1a2e5dd951d1c19a Author: Alexander Ziaee (Fri 4 Sep 2026 15:42:37 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:44 BST) tws.4: Canonicalize SYNOPSIS + nits + wrap some long lines + escape some ? wildcards + no macros in width specifiers + mention the speed in HARDWARE (bumps date) + use the hyperlink macro for... the defunct LSI website... + write out a symbol heavy error message format string in mdoc MFC after: 3 days Event: Berlin Hackathon 202609 (cherry picked from commit ef3239cd4a3f591434daa72747c49adc1263eb04) M share/man/man4/tws.4 _____________________________________________________________________________________________________________ Commit: 745940a3cadb6be5f858802c8ce81f4fc9f66d12 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=745940a3cadb6be5f858802c8ce81f4fc9f66d12 Author: Alexander Ziaee (Sun 30 Aug 2026 03:36:59 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:44 BST) ntb_hw_plx.4: Canonicalize + tag SPDX + canonicalize SYNOPSIS, LOADER TUNABLES, and HARDWARE + switch X to %d for clarity and consistency MFC after: 3 days (cherry picked from commit a416bbfa3972249a8ab3b0d7cc39f3cd330f7012) M share/man/man4/ntb_hw_plx.4 _____________________________________________________________________________________________________________ Commit: 3679d1a57a9ae49bb8ce3080d75d7d970bf30dda URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3679d1a57a9ae49bb8ce3080d75d7d970bf30dda Author: Alexander Ziaee (Sun 30 Aug 2026 03:22:33 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:44 BST) ntb.4: Canonicalize SYNOPSIS and LOADER TUNABLES Also tag SPDX, and switch X to %d for clarity and consistency. MFC after: 3 days (cherry picked from commit 9cdadb31f30251552e112a6fba23acfc6de5cc8b) M share/man/man4/ntb.4 _____________________________________________________________________________________________________________ Commit: 023c11e5bfd72f1ed049e4488685e2c8d80f9790 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=023c11e5bfd72f1ed049e4488685e2c8d80f9790 Author: Alexander Ziaee (Sun 30 Aug 2026 02:36:58 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:44 BST) ntb_hw_amd.4: Canonicalize SYNOPSIS and SYSCTLs Also tag SPDX. MFC after: 3 days (cherry picked from commit 63ecc9a63c0f4096a3e52b8b29c5eca3bd271eb3) M share/man/man4/ntb_hw_amd.4 _____________________________________________________________________________________________________________ Commit: 2f3f46a23ef6ee7276f2cb2961f9154ed644b462 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2f3f46a23ef6ee7276f2cb2961f9154ed644b462 Author: Alexander Ziaee (Sun 30 Aug 2026 02:30:42 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:44 BST) ntb_hw_intel.4: Canonicalize SYNOPSIS + tag SPDX MFC after: 3 days (cherry picked from commit 6acf0797ea179228149586763c02f258f95a5454) M share/man/man4/ntb_hw_intel.4 _____________________________________________________________________________________________________________ Commit: 854cd383da6395d80db46a9dfb370cfbf9701910 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=854cd383da6395d80db46a9dfb370cfbf9701910 Author: Alexander Ziaee (Sun 30 Aug 2026 02:08:12 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:41 BST) pthread_mutex_consistent.3: Fix typo + tag SPDX PR: 298044 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298044 ) MFC after: 3 days (cherry picked from commit ef3e7d4054db562b04669f36f87f385127fbd03e) M share/man/man3/pthread_mutex_consistent.3 _____________________________________________________________________________________________________________ Commit: 917bc98b39abb8645b0c4f9b3df28d668be0c407 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=917bc98b39abb8645b0c4f9b3df28d668be0c407 Author: Alexander Ziaee (Sat 29 Aug 2026 21:04:45 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:41 BST) vge.4: Canonicalize SYNOPSIS + Nit Nd quotes MFC after: 3 days (cherry picked from commit 70ca3c62d05d6e3233b3cd4c139e02f4a037e2ef) M share/man/man4/vge.4 _____________________________________________________________________________________________________________ Commit: b3af60e84c4f75268f46ab70a4e5eef4e3a4dd58 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b3af60e84c4f75268f46ab70a4e5eef4e3a4dd58 Author: Alexander Ziaee (Sat 29 Aug 2026 21:01:45 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:41 BST) viawd.4: Canonicalize SYNOPSIS + tag SPDX MFC after: 3 days (cherry picked from commit 70f0d789206d24e54ec7580484277573cff4e95e) M share/man/man4/viawd.4 _____________________________________________________________________________________________________________ Commit: ad03a0922e7fd10b3c5b4199cdc5dfbac1a3e107 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ad03a0922e7fd10b3c5b4199cdc5dfbac1a3e107 Author: Alexander Ziaee (Sat 29 Aug 2026 20:58:10 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:41 BST) virtio_random.4: Canonicalize SYNOPSIS + AUTHORS Also tag SPDX MFC after: 3 days (cherry picked from commit 400cc895326ea32486ee288f9dfd801d2e77959f) M share/man/man4/virtio_random.4 _____________________________________________________________________________________________________________ Commit: 44f0cd48672285a1b9703e7c96850a8c686d05f0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=44f0cd48672285a1b9703e7c96850a8c686d05f0 Author: Alexander Ziaee (Sat 29 Aug 2026 20:55:51 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:41 BST) virtio_gpu.4: Canonicalize SYNOPSIS MFC after: 3 days (cherry picked from commit 87909fd428e16df5712ab5b581fbaad78156f094) M share/man/man4/virtio_gpu.4 _____________________________________________________________________________________________________________ Commit: 2a10b33955766f0d89f892db35027895453c4440 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2a10b33955766f0d89f892db35027895453c4440 Author: Alexander Ziaee (Sat 29 Aug 2026 20:53:00 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:40 BST) virtio_console.4: Canonicalize SYNOPSIS + AUTHORS Also tag SPDX. MFC after: 3 days (cherry picked from commit d9cb19cf63b6717825d2562153869fc833cf3a51) M share/man/man4/virtio_console.4 _____________________________________________________________________________________________________________ Commit: fb49baaa9b3bf73bebe1b4442cf8c0490757caee URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fb49baaa9b3bf73bebe1b4442cf8c0490757caee Author: Alexander Ziaee (Sat 29 Aug 2026 20:49:19 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:40 BST) virtio_balloon.4: Canonicalise SYNOPSIS + AUTHORS Also tag SPDX. MFC after: 3 days (cherry picked from commit 937e64189133c7b96d84a10730d6e91aeb763c54) M share/man/man4/virtio_balloon.4 _____________________________________________________________________________________________________________ Commit: 39b234729c7667ec9bfbabab9f17deab5e39726a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=39b234729c7667ec9bfbabab9f17deab5e39726a Author: Alexander Ziaee (Sat 29 Aug 2026 20:46:20 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:40 BST) virtio.4: Canonicalize SYNOPSIS + tag SPDX MFC after: 3 days (cherry picked from commit 9d65dc4ca5da85547040b5f5e84c0ed4446fcbe8) M share/man/man4/virtio.4 _____________________________________________________________________________________________________________ Commit: 2f3c0416c16921e842a136d581f02146b09da2cd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2f3c0416c16921e842a136d581f02146b09da2cd Author: Alexander Ziaee (Sat 29 Aug 2026 19:55:12 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:37 BST) virtio_blk.4: Canonicalize SYNOPSIS and HARDWARE Also tag SPDX, and switch X to %d for consistency/clarity. MFC after: 3 days (cherry picked from commit 098adfcc1e17899565d7a47fe5750a372663d547) M share/man/man4/virtio_blk.4 _____________________________________________________________________________________________________________ Commit: e3e0d4f1812cec88b20f42cf56242344062808c4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e3e0d4f1812cec88b20f42cf56242344062808c4 Author: Alexander Ziaee (Sat 29 Aug 2026 19:14:36 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:37 BST) virtio_scsi.4: Canonicalize + Tag SPDX + Canonicalize SYNOPSIS and HARDWARE + Canonicalize SYSCTL VARIABLES, adding the sysctl to apropos + Canonicalize AUTHORS and HISTORY, which were combined + Use more traditional and consistent %d instead of less clear X MFC after: 3 days (cherry picked from commit 746b9102ed063bf5f87d8dc7649e3d0fab455c31) M share/man/man4/virtio_scsi.4 _____________________________________________________________________________________________________________ Commit: bf8db17de8a15530d44f3de4e47b51b93acb230d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bf8db17de8a15530d44f3de4e47b51b93acb230d Author: Alexander Ziaee (Sat 29 Aug 2026 18:52:52 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:37 BST) vmci.4: Canonicalize SYNOPSIS MFC after: 3 days (cherry picked from commit 02f59bab136ccc5de6b25c7dcec1cd1960d831d7) M share/man/man4/vmci.4 _____________________________________________________________________________________________________________ Commit: 5578b96ab34d9bffa64ffec6b5101ca2b9d3b559 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5578b96ab34d9bffa64ffec6b5101ca2b9d3b559 Author: Alexander Ziaee (Sat 29 Aug 2026 19:02:54 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:37 BST) vtnet.4: Add a HARDWARE section For inclusion in the hardware release notes. MFC after: 3 days (cherry picked from commit 581c5d46fe1c2a49e0967dbfff18cfa73f3b910b) M share/man/man4/vtnet.4 _____________________________________________________________________________________________________________ Commit: 9996b3687ed59ef5653ab1b7606e9d1640914fb5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9996b3687ed59ef5653ab1b7606e9d1640914fb5 Author: Alexander Ziaee (Sat 29 Aug 2026 18:49:23 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:37 BST) vmd.4: Canonicalize SYNOPSIS + fix linter errors MFC after: 3 days (cherry picked from commit 84b405425b3ffe4144a46da669f147e0fc7c1bed) M share/man/man4/vmd.4 _____________________________________________________________________________________________________________ Commit: 92510faa1277c94da01a9533e36120d9894a9879 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=92510faa1277c94da01a9533e36120d9894a9879 Author: Alexander Ziaee (Sat 29 Aug 2026 18:57:59 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:36 BST) vlan.4: Canonicalize SYNOPSIS + tag SPDX MFC after: 3 days (cherry picked from commit 7eaf7b278e3e0c3a9eb0e6423c933e57685c4782) M share/man/man4/vlan.4 _____________________________________________________________________________________________________________ Commit: fda58481a39f00df7b7aef5a20937201c9371d0b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fda58481a39f00df7b7aef5a20937201c9371d0b Author: Alexander Ziaee (Sat 29 Aug 2026 18:17:35 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:33 BST) vmx.4: Canonicalize SYNOPSIS MFC after: 3 days (cherry picked from commit f8c6f9f55b68469527b849d81f92cacf80c0e2a4) M share/man/man4/vmx.4 _____________________________________________________________________________________________________________ Commit: f8a9582956fa51ce8d182928baf9815053f6cb57 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f8a9582956fa51ce8d182928baf9815053f6cb57 Author: Alexander Ziaee (Sat 29 Aug 2026 18:09:09 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:33 BST) vmx.4: Spinoff HARDWARE + tag SPDX This section will appear in the Hardware Release Note. MFC after: 3 days (cherry picked from commit f1da14e0a0fcc155bba77c9ad33ebf323896935b) M share/man/man4/vmx.4 _____________________________________________________________________________________________________________ Commit: 80cc77961a648729fde5da07458658916dbacb3c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=80cc77961a648729fde5da07458658916dbacb3c Author: Alexander Ziaee (Sat 29 Aug 2026 04:22:23 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:33 BST) vr.4: Canonicalize SYNOPSIS + tag SPDX While here, remove superflouous Nd quoting. MFC after: 3 days (cherry picked from commit 59b062ee7d822c763024de6992b11c7241f968c9) M share/man/man4/vr.4 _____________________________________________________________________________________________________________ Commit: 006292429928796192b5262617fee1c6e212404b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=006292429928796192b5262617fee1c6e212404b Author: Alexander Ziaee (Sat 29 Aug 2026 04:19:35 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:33 BST) vte.4: Canonicalize SYNOPSIS + tag SPDX MFC after: 3 days (cherry picked from commit fa89ea4d5f215f21633194da9b7ad461388f7af9) M share/man/man4/vte.4 _____________________________________________________________________________________________________________ Commit: e07691d41836b5df7499d172f6631b26a4d1915e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e07691d41836b5df7499d172f6631b26a4d1915e Author: Alexander Ziaee (Sat 29 Aug 2026 04:10:06 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:32 BST) vtnet.4: Canonicalize SYNOPSIS + tag SPDX MFC after: 3 days (cherry picked from commit 4f5a44aa19bf4f63b7bd894ce309f63dbdb3665c) M share/man/man4/vtnet.4 _____________________________________________________________________________________________________________ Commit: b0e1b129aa4c307d3ac6808b15405adf16ddf2f9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b0e1b129aa4c307d3ac6808b15405adf16ddf2f9 Author: Alexander Ziaee (Fri 28 Aug 2026 21:32:13 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:29 BST) xdma.4: Canonicalize SYNOPSIS MFC after: 3 days (cherry picked from commit e3ab0403dfc27b8f2717b8f969af71d74cba5687) M share/man/man4/xdma.4 _____________________________________________________________________________________________________________ Commit: 5ed5074099938b45efdb43e29e47f2faaf391fff URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5ed5074099938b45efdb43e29e47f2faaf391fff Author: Alexander Ziaee (Fri 28 Aug 2026 21:26:04 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:29 BST) wmt.4: Canonicalize SYNOPSIS While here, tag SPDX. MFC after: 3 days (cherry picked from commit 7199b614de0afda993b9d98689a00e221bfb41c6) M share/man/man4/wmt.4 _____________________________________________________________________________________________________________ Commit: 947dfb14aeae033fb7a0b070c853e27cb4138b55 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=947dfb14aeae033fb7a0b070c853e27cb4138b55 Author: Alexander Ziaee (Sat 29 Aug 2026 03:37:05 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:29 BST) wg.4: Canonicalize SYNOPSIS + mechanical nits While here: + tag SPDX + remove superflouous Nd quotes + add the usual missing blank comment line preceeding file MFC after: 3 days (cherry picked from commit b7d15db761e6a51f76a04f97ce2d47a30afcf544) M share/man/man4/wg.4 _____________________________________________________________________________________________________________ Commit: 16f75028ca90d70bd7ce44114456ab7245cabce5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=16f75028ca90d70bd7ce44114456ab7245cabce5 Author: Alexander Ziaee (Sat 29 Aug 2026 03:41:50 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:28 BST) wdatdw.4: Canonicalize SYNOPSIS + tag SPDX MFC after: 3 days (cherry picked from commit d58130d1fd019a1320ec8ef328ba7423f7716968) M share/man/man4/wdatwd.4 _____________________________________________________________________________________________________________ Commit: a70b02180481888dde33594930d525d2317c4f39 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a70b02180481888dde33594930d525d2317c4f39 Author: Alexander Ziaee (Sat 29 Aug 2026 03:46:25 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:28 BST) wbwd.4: Canonicalize SYNOPSIS, HARDWARE + tag SPDX MFC after: 3 days (cherry picked from commit eddc4e94b72fe63e25fe914aa6b1f2fc5110522a) M share/man/man4/wbwd.4 _____________________________________________________________________________________________________________ Commit: 89f43fbe375c77dd969c5df4b05f1ded6e0e29b9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=89f43fbe375c77dd969c5df4b05f1ded6e0e29b9 Author: Alexander Ziaee (Sat 29 Aug 2026 03:33:39 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:28 BST) bnxt.4: Canonicalize SYNOPSIS While here, tag SPDX. MFC after: 3 days Reviewed by: kbowling Differential Revision: https://reviews.freebsd.org/D59258 (cherry picked from commit 8abab45ee45e2c522b63a264b31e016782518269) M share/man/man4/bnxt.4 _____________________________________________________________________________________________________________ Commit: bf4b14e8cfaa53167b258ad18de0fcdfd67d0e56 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bf4b14e8cfaa53167b258ad18de0fcdfd67d0e56 Author: Alexander Ziaee (Fri 28 Aug 2026 21:23:27 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:28 BST) wpi.4: Canonicalize SYNOPSIS MFC after: 3 days (cherry picked from commit 7ac94594260f6be72216159afd226d614aedb45a) M share/man/man4/wpi.4 _____________________________________________________________________________________________________________ Commit: d9ec616dd6df782b63001e2a6ec56f5be84858cb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d9ec616dd6df782b63001e2a6ec56f5be84858cb Author: Alexander Ziaee (Fri 28 Aug 2026 18:47:05 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:22 BST) xen.4: Canonicalize SYNOPSIS Move the prose about support that was here to the second sentence of DESCRIPTION. Remove the note about i386 since i386 is dead in 15.0. The rest of the manual still contains details about i386 and could use some TLC by a Xen user. MFC after: 3 days (to 15 only) (cherry picked from commit 8f6987731fab052ab6b339a428600eff99ceee9d) M share/man/man4/xen.4 _____________________________________________________________________________________________________________ Commit: a2ea439da13a3caf33d176e795d68604c0f3166f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a2ea439da13a3caf33d176e795d68604c0f3166f Author: Alexander Ziaee (Fri 28 Aug 2026 18:37:24 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:21 BST) xl.4: Canonicalize SYNOPSIS While here, remove Nd overquoting. MFC after: 3 days (cherry picked from commit e959ad03a29c1a8f28e12e474426413a62cf1510) M share/man/man4/xl.4 _____________________________________________________________________________________________________________ Commit: bc1dbcfe23438e7d259a22a3974a362e43ed87a5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bc1dbcfe23438e7d259a22a3974a362e43ed87a5 Author: Alexander Ziaee (Fri 28 Aug 2026 18:34:07 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:21 BST) xnb.4: Canonicalize SYNOPSIS While here, tag SPDX and remove Nd overquoting. MFC after: 3 days (cherry picked from commit a6ad4a8ad7cbf53d5cbcbb4ba89b7d26b92b9ea6) M share/man/man4/xnb.4 _____________________________________________________________________________________________________________ Commit: 38ebc3f986d07a8e210d5a3352435bc83fd1846a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=38ebc3f986d07a8e210d5a3352435bc83fd1846a Author: Alexander Ziaee (Fri 28 Aug 2026 18:19:45 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:21 BST) ix.4: Canonicalize SYNOPSIS While here, fix markup on one of the items. MFC after: 3 days (cherry picked from commit f542fe44303e280154eeed5f19cc38d3dce9e081) M share/man/man4/ix.4 _____________________________________________________________________________________________________________ Commit: dba6ae7802dacd04483be02ff508e0a1d5d4a34e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dba6ae7802dacd04483be02ff508e0a1d5d4a34e Author: Alexander Ziaee (Fri 28 Aug 2026 06:12:42 BST) Committer: Alexander Ziaee (Wed 16 Sep 2026 13:03:21 BST) zyd.4: Canonicalize SYNOPSIS and HARDWARE MFC after: 3 days (cherry picked from commit 48027536c9a7e4df452584d188dad9cf48467b29) M share/man/man4/zyd.4 _____________________________________________________________________________________________________________ Commit: fe9e9dca8bad6218975b7aa686d7db1a0e497077 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fe9e9dca8bad6218975b7aa686d7db1a0e497077 Author: Colin Percival (Mon 24 Aug 2026 16:01:20 BST) Committer: Colin Percival (Tue 15 Sep 2026 23:49:42 BST) growfs_postboot: Invoke via service(8) Use service(8) rather than invoking /etc/rc.d/growfs_postboot directly. Requested by: bapt Reviewed by: bapt MFC after: 2 weeks Fixes: 5a31987d4c39 ("rc+devd: Add growfs_postboot") Differential Revision: https://reviews.freebsd.org/D59145 (cherry picked from commit 475a56a8766ce29af53b99c47c145c7348165e6b) M sbin/devd/growfs_postboot.conf _____________________________________________________________________________________________________________ Commit: ba004afc874bb805410c292455a5ce3a32a7954d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ba004afc874bb805410c292455a5ce3a32a7954d Author: Colin Percival (Thu 30 Jul 2026 21:20:51 BST) Committer: Colin Percival (Tue 15 Sep 2026 23:49:42 BST) rc+devd: Add growfs_postboot In VM and cloud environments it is often possible to enlarge virtual disks; this can be useful, for example, if a system is launched with a small root disk and it later becomes clear that more space is needed. On kernels which support run-time resizing of disks (for NVMe, this was added in November 2025; some other disk types have supported this for longer) a SIZECHANGE notification is sent to userland via devd. Add a "nostart" rc.d script (runnable manually but not automatically at boot time) and a devd script which invokes it when a notification arrives. The rc.d script enlarges the "final partition" on partitioned geoms, or the UFS filesystem or zpool device when triggered on a disk containing either of those. Reviewed by: imp, ziaee MFC after: 2 weeks Relnotes: Disk partitions and filesystems can be enlarged automatically when disks grow by setting growfs_postboot_enable=YES in /etc/rc.conf. Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D58582 (cherry picked from commit 5a31987d4c395ec4d3ed303cbc2e1d12ea54a039) M libexec/rc/rc.conf M libexec/rc/rc.d/Makefile A libexec/rc/rc.d/growfs_postboot M sbin/devd/Makefile A sbin/devd/growfs_postboot.conf M share/man/man5/rc.conf.5 M share/man/man7/Makefile M share/man/man7/growfs.7 A share/man/man7/growfs_postboot.7 _____________________________________________________________________________________________________________ Commit: bf2ce3afd0e421235e834633068538788bab97a1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bf2ce3afd0e421235e834633068538788bab97a1 Author: Colin Percival (Tue 14 Jul 2026 18:43:59 BST) Committer: Colin Percival (Tue 15 Sep 2026 23:49:42 BST) nvme: Add quirk for Amazon EBS NVMe Controller This controller exhibits QUIRK_EMPTY_NAMESPACE_CHANGED_LOG behaviour. A bug report has been filed with the vendor. Reviewed by: imp MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D58232 (cherry picked from commit 14f5fd2395e3f1c3fadeee8b95756c142f7dcb0b) M sys/dev/nvme/nvme_pci.c _____________________________________________________________________________________________________________ Commit: 7cbc2604282f2a96c138305f3727a3064c1b5ed7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7cbc2604282f2a96c138305f3727a3064c1b5ed7 Author: Colin Percival (Tue 14 Jul 2026 18:41:03 BST) Committer: Colin Percival (Tue 15 Sep 2026 23:49:41 BST) nvme: Add quirk for broken namespace-change log Add a QUIRK_EMPTY_NAMESPACE_CHANGED_LOG quirk which indicates that the nvme controller may not properly populate the namespace-changed log page. If we receive a NVME_LOG_CHANGED_NAMESPACE page for a device with this quirk and the page is empty, probe all of the namespaces rather than none of them. Reviewed by: imp MFC after: 1 week Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D58231 (cherry picked from commit 954098103ee287f39ecbf5d3144bcdfd16e7c41d) M sys/dev/nvme/nvme_ctrlr.c M sys/dev/nvme/nvme_private.h _____________________________________________________________________________________________________________ Commit: cc1658a073853cb89f003887b7a2808197b802e6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cc1658a073853cb89f003887b7a2808197b802e6 Author: Abdelkader Boudih (Sun 14 Jun 2026 21:43:57 BST) Committer: Colin Percival (Tue 15 Sep 2026 23:49:41 BST) nvme: add Apple T2 ANS2 NVMe quirks The Apple T2 (ANS2, PCI 106b:2005) requires several quirks: - 128-byte submission queue entries (CC.IOSQES = 7) - Single MSI vector, one IO queue - Admin and IO queues share a CID table; IO CIDs offset by adminq.num_trackers to avoid overlap - No async event support - IDENTIFY CNS >= 2 rejected to avoid firmware confusion Tested-on: - MacBookPro16,2 (A2251) - Mac mini 8,1 (A1993) - Multiple Non-Apple computers Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D57087 (cherry picked from commit 5e0ba47aa00ed82a4a06cc45f0d1b34b6948e47f) M sys/dev/nvme/nvme_ctrlr.c M sys/dev/nvme/nvme_pci.c M sys/dev/nvme/nvme_private.h M sys/dev/nvme/nvme_qpair.c M sys/dev/nvme/nvme_sim.c M sys/dev/nvme/nvme_sysctl.c _____________________________________________________________________________________________________________ Commit: 25985322095d073354d31431da34da1e6871cca5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=25985322095d073354d31431da34da1e6871cca5 Author: Philip Paeps (Sat 12 Sep 2026 01:29:28 BST) Committer: Philip Paeps (Tue 15 Sep 2026 01:39:45 BST) contrib/tzdata: import tzdata 2026d Changes: https://github.com/eggert/tz/blob/2026d/NEWS (cherry picked from commit fe81d42176f04718d7534242dfd4b9f250ac50fc) M contrib/tzdata/CONTRIBUTING M contrib/tzdata/Makefile M contrib/tzdata/NEWS M contrib/tzdata/README M contrib/tzdata/asia M contrib/tzdata/backward M contrib/tzdata/backzone M contrib/tzdata/northamerica M contrib/tzdata/southamerica M contrib/tzdata/theory.html M contrib/tzdata/version M contrib/tzdata/zone.tab M contrib/tzdata/zone1970.tab M contrib/tzdata/zonenow.tab _____________________________________________________________________________________________________________ Commit: cf509d8305476e752ca86fe1086d579dc7b90eeb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cf509d8305476e752ca86fe1086d579dc7b90eeb Author: Siva Mahadevan (Sat 12 Sep 2026 19:29:02 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) lib/googletest: also use -O0 for internal tests with GCC This fixes the build with gcc 16's aggressive inlining. Reviewed by: ngie MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59538 (cherry picked from commit 243bdaff75853606ce477807e87e4fbcc1decfb1) M lib/googletest/tests/Makefile.inc _____________________________________________________________________________________________________________ Commit: 0ac3b94bc90d147c99706ac394a0984fb5c3df85 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0ac3b94bc90d147c99706ac394a0984fb5c3df85 Author: Siva Mahadevan (Fri 11 Sep 2026 15:56:10 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) sctp: remove unused variable This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: tuexen MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59590 (cherry picked from commit b7e91f238c2f70e8432f56762499aebd0ab9960b) M sys/netinet/sctp_usrreq.c _____________________________________________________________________________________________________________ Commit: fc6f35097e697469491ee352c8c755ae38939360 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fc6f35097e697469491ee352c8c755ae38939360 Author: Siva Mahadevan (Thu 10 Sep 2026 15:40:28 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) libctf: remove unused variable This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: markj MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59537 (cherry picked from commit 8e75ea59b085fb6dedfe5911481e6673a60b48fe) M cddl/contrib/opensolaris/common/ctf/ctf_hash.c _____________________________________________________________________________________________________________ Commit: f7f589c6239c32cf47974212ef4c445522eab621 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f7f589c6239c32cf47974212ef4c445522eab621 Author: Siva Mahadevan (Thu 10 Sep 2026 15:40:03 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) camcontrol: remove unused variable This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: ken, imp MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59540 (cherry picked from commit 076c9db51f95291f73c25b39a8c9c4206c050bc1) M sbin/camcontrol/persist.c _____________________________________________________________________________________________________________ Commit: ce69b9771d70546599a4effe40490d6609c12553 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ce69b9771d70546599a4effe40490d6609c12553 Author: Siva Mahadevan (Thu 10 Sep 2026 15:39:37 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) sbin/ifconfig: remove unused static function parameter This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: glebius MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59541 (cherry picked from commit e1a1206245be0db252d52f4b090c62a002fc1cc5) M sbin/ifconfig/ifieee80211.c _____________________________________________________________________________________________________________ Commit: 17f3aaea09d59315b039b7e7afd4a0c2614f8be7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=17f3aaea09d59315b039b7e7afd4a0c2614f8be7 Author: Siva Mahadevan (Thu 10 Sep 2026 15:39:11 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) tests/kqueue: remove unused variable This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: markj MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59542 (cherry picked from commit c65c63cf5104bff198854fd1d8fe277dfc1c1956) M tests/sys/kqueue/libkqueue/timer.c _____________________________________________________________________________________________________________ Commit: a1020633443d0f94227477913fb3a940a709f212 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a1020633443d0f94227477913fb3a940a709f212 Author: Siva Mahadevan (Thu 10 Sep 2026 15:38:44 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) fsck_msdosfs: remove unused variable This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: delphij MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59543 (cherry picked from commit fead44b3ed61a09c2a0c4f79537462e837067fce) M sbin/fsck_msdosfs/dir.c _____________________________________________________________________________________________________________ Commit: bdc24098d97786ff6ae22dee20ae49a8bce7a01e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bdc24098d97786ff6ae22dee20ae49a8bce7a01e Author: Siva Mahadevan (Thu 10 Sep 2026 15:38:19 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) iflib: remove unused variables This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: gallatin MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59544 (cherry picked from commit d1ef616302f185ca9c217a9bfa70509b19136016) M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: 292e92b32824f43ab5eef791398bfe0585addaa8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=292e92b32824f43ab5eef791398bfe0585addaa8 Author: Siva Mahadevan (Thu 10 Sep 2026 15:37:06 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) cxgb(4): remove unused variable This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: np MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59545 (cherry picked from commit d5047ddeddab45923ff4870cf9a0e158619e3a30) M sys/dev/cxgb/cxgb_sge.c _____________________________________________________________________________________________________________ Commit: 462b25270e3c8230054201a27f23cd767c270f15 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=462b25270e3c8230054201a27f23cd767c270f15 Author: Siva Mahadevan (Wed 9 Sep 2026 18:14:45 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) ipfilter: remove unused variable This fixes the build with gcc 16 after the changes to -Wunused*[0]. [0] https://gcc.gnu.org/gcc-16/porting_to.html#changes-to-wunused Reviewed by: cy MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit 94f7019668f8a02416c5b32ba8a9c32a68edd261) M sys/netpfil/ipfilter/netinet/ip_nat.c _____________________________________________________________________________________________________________ Commit: dd9ecc8730c89fa2a7c4c96d51f0f3c9bd0f8865 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dd9ecc8730c89fa2a7c4c96d51f0f3c9bd0f8865 Author: Siva Mahadevan (Tue 8 Sep 2026 21:10:51 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) tests/fusefs: fix the build with gcc 16 Reviewed by: asomers MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit 0e3dae1ca8fc371eb5c451032adc5e0813b00db6) M tests/sys/fs/fusefs/Makefile M tests/sys/fs/fusefs/utils.cc _____________________________________________________________________________________________________________ Commit: 81d40d72da4bb33a0510191964e9ccae1cb7d1fe URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=81d40d72da4bb33a0510191964e9ccae1cb7d1fe Author: Siva Mahadevan (Wed 2 Sep 2026 19:09:48 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) dtrace/tests: compile D sources at runtime on test target Previously, we would precompile D test dependencies using the host's dtrace, which unconditionally outputs ELF files in the host's format. This breaks the cross-compile build with errors like the following: dtrace: failed to link script: incorrect ELF machine type for object file: tst.usdt.pieo --- usdt.o --- *** Failed target: usdt.o This patch moves compilation to runtime for all C-based testcases that have a dependent D source file. Reviewed by: markj MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59030 (cherry picked from commit 60d78908f57cf2100d5aeafa7db5d97cda3c5607) M cddl/usr.sbin/dtrace/tests/amd64/arrays/Makefile M cddl/usr.sbin/dtrace/tests/common/aggs/Makefile M cddl/usr.sbin/dtrace/tests/common/arithmetic/Makefile M cddl/usr.sbin/dtrace/tests/common/arrays/Makefile M cddl/usr.sbin/dtrace/tests/common/assocs/Makefile M cddl/usr.sbin/dtrace/tests/common/begin/Makefile M cddl/usr.sbin/dtrace/tests/common/bitfields/Makefile M cddl/usr.sbin/dtrace/tests/common/buffering/Makefile M cddl/usr.sbin/dtrace/tests/common/builtinvar/Makefile M cddl/usr.sbin/dtrace/tests/common/cg/Makefile M cddl/usr.sbin/dtrace/tests/common/clauses/Makefile M cddl/usr.sbin/dtrace/tests/common/cpc/Makefile M cddl/usr.sbin/dtrace/tests/common/decls/Makefile M cddl/usr.sbin/dtrace/tests/common/docsExamples/Makefile M cddl/usr.sbin/dtrace/tests/common/drops/Makefile M cddl/usr.sbin/dtrace/tests/common/dtraceUtil/Makefile M cddl/usr.sbin/dtrace/tests/common/end/Makefile M cddl/usr.sbin/dtrace/tests/common/enum/Makefile M cddl/usr.sbin/dtrace/tests/common/env/Makefile M cddl/usr.sbin/dtrace/tests/common/error/Makefile M cddl/usr.sbin/dtrace/tests/common/exit/Makefile M cddl/usr.sbin/dtrace/tests/common/fbtprovider/Makefile M cddl/usr.sbin/dtrace/tests/common/funcs/Makefile M cddl/usr.sbin/dtrace/tests/common/grammar/Makefile M cddl/usr.sbin/dtrace/tests/common/include/Makefile M cddl/usr.sbin/dtrace/tests/common/inline/Makefile M cddl/usr.sbin/dtrace/tests/common/io/Makefile M cddl/usr.sbin/dtrace/tests/common/ip/Makefile M cddl/usr.sbin/dtrace/tests/common/java_api/Makefile M cddl/usr.sbin/dtrace/tests/common/json/Makefile M cddl/usr.sbin/dtrace/tests/common/kinst/Makefile M cddl/usr.sbin/dtrace/tests/common/lexer/Makefile M cddl/usr.sbin/dtrace/tests/common/llquantize/Makefile M cddl/usr.sbin/dtrace/tests/common/mdb/Makefile M cddl/usr.sbin/dtrace/tests/common/mib/Makefile M cddl/usr.sbin/dtrace/tests/common/misc/Makefile M cddl/usr.sbin/dtrace/tests/common/multiaggs/Makefile M cddl/usr.sbin/dtrace/tests/common/nfs/Makefile M cddl/usr.sbin/dtrace/tests/common/offsetof/Makefile M cddl/usr.sbin/dtrace/tests/common/oformat/Makefile M cddl/usr.sbin/dtrace/tests/common/operators/Makefile M cddl/usr.sbin/dtrace/tests/common/pid/Makefile M cddl/usr.sbin/dtrace/tests/common/plockstat/Makefile M cddl/usr.sbin/dtrace/tests/common/pointers/Makefile M cddl/usr.sbin/dtrace/tests/common/pragma/Makefile M cddl/usr.sbin/dtrace/tests/common/predicates/Makefile M cddl/usr.sbin/dtrace/tests/common/preprocessor/Makefile M cddl/usr.sbin/dtrace/tests/common/print/Makefile M cddl/usr.sbin/dtrace/tests/common/printa/Makefile M cddl/usr.sbin/dtrace/tests/common/printf/Makefile M cddl/usr.sbin/dtrace/tests/common/privs/Makefile M cddl/usr.sbin/dtrace/tests/common/probes/Makefile M cddl/usr.sbin/dtrace/tests/common/proc/Makefile M cddl/usr.sbin/dtrace/tests/common/profile-n/Makefile M cddl/usr.sbin/dtrace/tests/common/providers/Makefile M cddl/usr.sbin/dtrace/tests/common/raise/Makefile M cddl/usr.sbin/dtrace/tests/common/rates/Makefile M cddl/usr.sbin/dtrace/tests/common/safety/Makefile M cddl/usr.sbin/dtrace/tests/common/scalars/Makefile M cddl/usr.sbin/dtrace/tests/common/sched/Makefile M cddl/usr.sbin/dtrace/tests/common/scripting/Makefile M cddl/usr.sbin/dtrace/tests/common/sdt/Makefile M cddl/usr.sbin/dtrace/tests/common/sizeof/Makefile M cddl/usr.sbin/dtrace/tests/common/speculation/Makefile M cddl/usr.sbin/dtrace/tests/common/stability/Makefile M cddl/usr.sbin/dtrace/tests/common/stack/Makefile M cddl/usr.sbin/dtrace/tests/common/stackdepth/Makefile M cddl/usr.sbin/dtrace/tests/common/stop/Makefile M cddl/usr.sbin/dtrace/tests/common/strlen/Makefile M cddl/usr.sbin/dtrace/tests/common/strtoll/Makefile M cddl/usr.sbin/dtrace/tests/common/struct/Makefile M cddl/usr.sbin/dtrace/tests/common/sugar/Makefile M cddl/usr.sbin/dtrace/tests/common/syscall/Makefile M cddl/usr.sbin/dtrace/tests/common/sysevent/Makefile M cddl/usr.sbin/dtrace/tests/common/tick-n/Makefile M cddl/usr.sbin/dtrace/tests/common/trace/Makefile M cddl/usr.sbin/dtrace/tests/common/tracemem/Makefile M cddl/usr.sbin/dtrace/tests/common/translators/Makefile M cddl/usr.sbin/dtrace/tests/common/typedef/Makefile M cddl/usr.sbin/dtrace/tests/common/types/Makefile M cddl/usr.sbin/dtrace/tests/common/uctf/Makefile M cddl/usr.sbin/dtrace/tests/common/union/Makefile M cddl/usr.sbin/dtrace/tests/common/usdt/Makefile M cddl/usr.sbin/dtrace/tests/common/ustack/Makefile M cddl/usr.sbin/dtrace/tests/common/vars/Makefile M cddl/usr.sbin/dtrace/tests/common/version/Makefile M cddl/usr.sbin/dtrace/tests/dtrace.test.mk M cddl/usr.sbin/dtrace/tests/i386/arrays/Makefile M cddl/usr.sbin/dtrace/tests/i386/funcs/Makefile M cddl/usr.sbin/dtrace/tests/i386/pid/Makefile M cddl/usr.sbin/dtrace/tests/i386/ustack/Makefile M cddl/usr.sbin/dtrace/tests/tools/dtest.sh M cddl/usr.sbin/dtrace/tests/tools/genmakefiles.sh _____________________________________________________________________________________________________________ Commit: 48522564b79ff41cacd60ca448877748b14fa2c4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=48522564b79ff41cacd60ca448877748b14fa2c4 Author: Siva Mahadevan (Wed 2 Sep 2026 16:45:15 BST) Committer: Siva Mahadevan (Mon 14 Sep 2026 15:02:36 BST) tests/netpfil: xfail ipfnat_local_redirect testcase PR: 296944 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296944 ) Reviewed by: cy MFC after: 3 days MFC to: stable/15 Sponsored by: The FreeBSD Foundation (cherry picked from commit 8fab8b3ae35d2388adfedbfc7ef6f3c93d34ce1c) M tests/sys/netpfil/common/rdr.sh _____________________________________________________________________________________________________________ Commit: cbd730ebeb03e26578bdef61669acca1cc7c65fa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cbd730ebeb03e26578bdef61669acca1cc7c65fa Author: Christos Margiolis (Mon 7 Sep 2026 15:48:21 BST) Committer: Christos Margiolis (Mon 14 Sep 2026 11:44:57 BST) snd_emu10kx: Make sure the block count and size cover the whole buffer The playback voices always loop over the whole EMU_PLAY_BUFSZ buffer, but emupchan_setblocksize() only recorded the new block size and left the block count as it was set up by emu_vinit(). The blocks then no longer covered the whole buffer, and the part they left out was played without ever being written to, which became audible as distortion once playback started going through a virtual channel. Resize the buffer, so that the block count and size always cover it. Fixes: 02d4eeabfd73 ("sound: Allocate vchans on-demand") PR: 287687 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=287687 ) MFC after: 1 week Sponsored by: The FreeBSD Foundation Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D59444 (cherry picked from commit a7258157e1a20957af23332814197ea723f5778d) M sys/dev/sound/pci/emu10kx-pcm.c _____________________________________________________________________________________________________________ Commit: 9f8836fd9d9fad65395b1495bf4afc8f651c6e16 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9f8836fd9d9fad65395b1495bf4afc8f651c6e16 Author: Gordon Bergling (Fri 11 Sep 2026 17:30:10 BST) Committer: Gordon Bergling (Mon 14 Sep 2026 05:02:47 BST) sys/kern: Fix a typo in a source code comment - s/untill/until/ (cherry picked from commit 8255ae9a750f6de312f9b445c25b1c8caf3d95b7) M sys/kern/kern_sysctl.c _____________________________________________________________________________________________________________ Commit: 2150c4c7b3eddc66b97da83cb7fd2510890d6294 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2150c4c7b3eddc66b97da83cb7fd2510890d6294 Author: Gordon Bergling (Fri 11 Sep 2026 17:29:05 BST) Committer: Gordon Bergling (Mon 14 Sep 2026 05:02:26 BST) arpa/telnet: Fix a typo in a source code comment - s/ascic/ASCII/ (cherry picked from commit 16246209d25ac437494ebe92b9819a65f1336594) M include/arpa/telnet.h _____________________________________________________________________________________________________________ Commit: 3825e6bf3bb579d229f404b27f67488eb3ebbf35 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3825e6bf3bb579d229f404b27f67488eb3ebbf35 Author: Steve Kargl (Fri 11 Sep 2026 00:33:14 BST) Committer: Konstantin Belousov (Mon 14 Sep 2026 01:44:42 BST) lib/msun: add tests for fmaf(3) subnormals PR: 298260 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298260 ) (cherry picked from commit cb82cc9f0e3bdf2b39734851c74b9a13edb0cbdc) M lib/msun/tests/fma_test.c _____________________________________________________________________________________________________________ Commit: 4564e1f715d808ebfa9199879b4611ed6f4856eb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4564e1f715d808ebfa9199879b4611ed6f4856eb Author: Steve Kargl (Fri 11 Sep 2026 00:18:58 BST) Committer: Konstantin Belousov (Mon 14 Sep 2026 01:44:42 BST) lib/msun: use the same algorithm for sw fmaf(3) as for fma(3) PR: 298260 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298260 ) (cherry picked from commit b08e6a3882b44a09fbda84dd315a431c7a585219) M lib/msun/src/s_fmaf.c _____________________________________________________________________________________________________________ Commit: cf46693f1351fc42e84cacbf81b7b625a5bdab72 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cf46693f1351fc42e84cacbf81b7b625a5bdab72 Author: Konstantin Belousov (Sun 6 Sep 2026 06:01:35 BST) Committer: Konstantin Belousov (Mon 14 Sep 2026 01:44:42 BST) lib/msun amd64: use AVX FMA instructions for fma(3) and fmaf(3) when available (cherry picked from commit 18a5549bcb81ec084f284a98046631db277ad47c) M lib/msun/amd64/Makefile.inc A lib/msun/amd64/s_fma_avx.S A lib/msun/amd64/s_fmaf_avx.S M lib/msun/src/s_fma.c M lib/msun/src/s_fmaf.c _____________________________________________________________________________________________________________ Commit: 2c02bfb4e7570ce7a2dd7c18427a144b1ed3b372 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2c02bfb4e7570ce7a2dd7c18427a144b1ed3b372 Author: Konstantin Belousov (Mon 7 Sep 2026 00:23:45 BST) Committer: Konstantin Belousov (Mon 14 Sep 2026 01:44:41 BST) lib/msun: move the calculation of LIBC_SRCTOP earlier (cherry picked from commit b45fd24a3ca666fbb1c754d9de94a9b33fa7949e) M lib/msun/Makefile _____________________________________________________________________________________________________________ Commit: d6c9a0849737f59b6eff242302ae735736c186ab URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d6c9a0849737f59b6eff242302ae735736c186ab Author: Ariel Ehrenberg (Wed 2 Sep 2026 14:12:32 BST) Committer: Konstantin Belousov (Mon 14 Sep 2026 01:44:41 BST) mlx5ib: use the hardware Toeplitz id when creating an RSS TIR (cherry picked from commit 36256f77c7de2bbfdff6922648f4d445d7212dc2) M sys/dev/mlx5/mlx5_ib/mlx5_ib_qp.c _____________________________________________________________________________________________________________ Commit: c21aa81a78479ab9c3a441248648537336346bc3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c21aa81a78479ab9c3a441248648537336346bc3 Author: Konstantin Belousov (Sun 6 Sep 2026 16:11:41 BST) Committer: Konstantin Belousov (Sun 13 Sep 2026 04:09:09 BST) vp_crossmp: weaken the assert and make it more precise (cherry picked from commit c63c77b3a5312dfd00f7749a07269119da886609) M sys/kern/vfs_lookup.c _____________________________________________________________________________________________________________ Commit: a243aec73767b7f778870c53d0d050be13e1399b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a243aec73767b7f778870c53d0d050be13e1399b Author: Kevin Bowling (Sun 30 Aug 2026 07:06:02 BST) Committer: Kevin Bowling (Sun 13 Sep 2026 01:47:51 BST) igc: Correct Wake-on-LAN filter programming The attach path translated WUC.APME into a saved link-change filter, then advertised magic-packet wake. Suspend removed unselected magic, unicast, and multicast bits from that saved value, commonly leaving no hardware wake filter at all. The destructive masking also made later capability changes ineffective. Advertise the I225/I226 wake filters whenever PCI power management is available and enable magic-packet wake by default. Build a fresh WUFC mask for every suspend, and explicitly clear WUC, WUFC, and PCI PME when wake is disabled. Require the PCI power-management capability to report D3hot PME support before advertising or arming wake. A PM capability alone does not mean the function can signal PME from the state used during system sleep. Reconstruct RAR0, the multicast table, and the receive filter after the stop-time reset so unicast and multicast wake use the current interface state. Keep the PHY powered while wake is armed, drain pending PCIe transactions, and disable bus mastering before D3. Clear the sticky base and extended wake status before arming filters. On resume, report the saved hardware wake cause, clear the device wake source, and then clear PCI PME. Run the DMA-fencing sequence even when wake programming fails, while allowing shutdown to continue after logging the failure. Explicitly restore PCI bus mastering during initialization so an iflib-local resume after another child rejects suspend can restart the device. Restore the Intel shared code PHY power down test from DPDK. The FreeBSD split inverted the reset-block condition, so its dormant hook would power down only when firmware explicitly vetoed the operation. Do not copy the generic legacy management test verbatim. The I225 and I226 define MANC bits 0 and 1 as flow-control and NC-SI discard controls, not SMBus and ASF enable bits. Preserve the link when the documented TCO receive path is enabled; the shared reset-block test separately honors the firmware keep-link-up veto. This follows section 8.21.1 of the Foxville Software User Manual. Evaluate management pass-through at each suspend. When neither a host wake filter nor management requires the link, invoke the shared-code power-down hook before D3. Leave a management-owned link untouched and restore a link previously powered down by the driver without another PHY reset. This follows DPDK's stop/start pairing without changing ordinary ifconfig down behavior. The implementation was checked against the Intel I225/I226 programming model, the Intel Linux igc lifecycle, and DPDK. On an I225-LM, a device-only D3 test observed PME for a valid magic packet and no PME with every host wake filter disabled. Both cases resumed to D0 with the link and configured addresses operational. The I225 system also completed a full ACPI S3 cycle and resumed with link, configured addresses, and traffic operational. On an I226-V, a device-only D3 test changed PMCSR accordingly after a magic packet. With dev.igc.0.wake enabled, a full ACPI S3 cycle remained asleep until a delayed magic packet and resumed with link, addresses, and traffic operational. PR: 282140 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282140 ) Obtained from: DPDK (shared-code power-down structure) (cherry picked from commit 90bee82638c3f277f729aa5321aacd5d7333d512) M share/man/man4/igc.4 M sys/dev/igc/if_igc.c M sys/dev/igc/if_igc.h M sys/dev/igc/igc_base.c M sys/dev/igc/igc_defines.h M sys/dev/igc/igc_mac.c M sys/dev/igc/igc_mac.h M sys/dev/igc/igc_regs.h _____________________________________________________________________________________________________________ Commit: 710117002d494dc47ea0528e033f3adfb26dbf81 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=710117002d494dc47ea0528e033f3adfb26dbf81 Author: Kevin Bowling (Sun 30 Aug 2026 09:18:10 BST) Committer: Kevin Bowling (Sun 13 Sep 2026 01:47:37 BST) pci: Expose PME support by power state The presence of the PCI power management capability does not imply that a function can signal PME# from every power state. Drivers which advertise wake based only on pci_has_pm() can consequently expose wake modes that cannot work. Add pci_has_pme() to query the PME_Support bitmap for a specific state. Use it to implement LinuxKPI pci_pme_capable(), removing its duplicate PME_Support decoder. Validated the helper against PCI PMC capability values from 82571EB, 82573L, 82579LM, I210, I225, and I226-V controllers. The 82571 and 82573 reported PMC 0xc822, while the I226-V reported 0xc823. In both values, bits 15, 14, and 11 advertise PME from D3cold, D3hot, and D0; the low-bit difference is only the PM capability version. Sponsored by: BBOX.io (cherry picked from commit c4e24e95c3f905b817d4bfc6e93457eb297bfa4b) M share/man/man9/Makefile M share/man/man9/pci.9 M sys/compat/linuxkpi/common/include/linux/pci.h M sys/dev/pci/pci.c M sys/dev/pci/pcivar.h _____________________________________________________________________________________________________________ Commit: 3d961305e17026b4257285d66160428669130b8a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3d961305e17026b4257285d66160428669130b8a Author: Kevin Bowling (Fri 28 Aug 2026 13:58:37 BST) Committer: Kevin Bowling (Sat 12 Sep 2026 02:43:27 BST) e1000: Report corrected LAN management FIFO ECC errors I350 and I354 report a corrected ECC error in the LAN transmit management FIFO through LANPERRSTS bit 16. Unlike the parity status in the same register, this condition neither interrupts nor stops traffic. Poll the latch with the other corrected error status, increment a dedicated counter, and clear only its RW1C bit. Expose it as dev.igb.N.memory_errors.corrected_lan_mng_fifo. Fatal error handling returns before the periodic statistics sweep and may reset the device. Drain all I350 and I354 corrected-error status in the admin task before recovery so the reset does not discard pending indications. This follows section 6.21.16 of the Intel Atom Processor C2000 Product Family Integrated GbE Controller Programmer's Reference Manual, document 537426 revision 1.5. Sponsored by: BBOX.io (cherry picked from commit 2f095faebb195735879d9caad164ce807d85ddf7) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: f1275111f1570bbda46435882e3c9082cfb17a8b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f1275111f1570bbda46435882e3c9082cfb17a8b Author: Kevin Bowling (Fri 28 Aug 2026 13:37:35 BST) Committer: Kevin Bowling (Sat 12 Sep 2026 02:43:16 BST) e1000: Handle I354 internal memory errors The Atom C2000 integrated GbE programming reference documents the I354 internal memory error architecture. It shares the I350 PEIND and ICR.FER routing, DMA and packet-buffer status, LAN parity status, and required reset recovery. Extend the existing I350 recovery and corrected error accounting paths to I354. Keep the PCIe corrected error mask family-specific. C2000 PCIEECCSTS ends at the transmit write-data indication in bit 4 and does not implement the I350 retry buffer indication in bit 5. Do not expose the corresponding retry counter on I354. The PRM overview says a PCIe region failure requires a system reboot, while the individual PCIEERRSTS fields prescribe CTRL.RST followed by port reinitialization. Use the register specific recovery, matching the existing I350 path; failed reinitialization still leaves the port down. This follows sections 5.6 and 6.21 of the Intel Atom Processor C2000 Product Family Integrated GbE Controller Programmer's Reference Manual, document 537426 revision 1.5. Sponsored by: BBOX.io (cherry picked from commit 5b4a7fd9378abba882a87330af31351c6353aea7) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: 858d63cf8a4f1a41929a7440da866ea73ac12886 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=858d63cf8a4f1a41929a7440da866ea73ac12886 Author: Konstantin Belousov (Wed 26 Aug 2026 10:41:59 BST) Committer: Konstantin Belousov (Fri 11 Sep 2026 07:59:53 BST) amd64 rtld: implement support for TLSDESC relocation (cherry picked from commit 76f5fccc5fbdf2a7b42f1e4aa71fe625be32fa13) M libexec/rtld-elf/amd64/reloc.c M libexec/rtld-elf/amd64/rtld_machdep.h M libexec/rtld-elf/amd64/rtld_start.S _____________________________________________________________________________________________________________ Commit: 2d049e4de2925a495c54e502c77598f2f833eb5f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2d049e4de2925a495c54e502c77598f2f833eb5f Author: Konstantin Belousov (Tue 25 Aug 2026 13:26:50 BST) Committer: Konstantin Belousov (Fri 11 Sep 2026 07:59:53 BST) i386 rtld: implement support for TLSDESC relocation (cherry picked from commit d45d7aea6197a91b794808d508295a74ce5be0cd) M libexec/rtld-elf/amd64/rtld_start.S M libexec/rtld-elf/i386/reloc.c M libexec/rtld-elf/i386/rtld_machdep.h M libexec/rtld-elf/i386/rtld_start.S _____________________________________________________________________________________________________________ Commit: 04fcc0f629e569427eaf6900f107dfb235e91e18 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=04fcc0f629e569427eaf6900f107dfb235e91e18 Author: Konstantin Belousov (Tue 25 Aug 2026 13:31:53 BST) Committer: Konstantin Belousov (Fri 11 Sep 2026 07:59:53 BST) rtld i386: use macro for the 'GNU ABI' calling convention of TLS resolver (cherry picked from commit fb63a60d6e15d022dee453363dbaf647cbc2a507) M libexec/rtld-elf/i386/reloc.c M libexec/rtld-elf/i386/rtld_machdep.h _____________________________________________________________________________________________________________ Commit: 19fa964bda24a3388090418b4fbc196ad9ce2d5f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=19fa964bda24a3388090418b4fbc196ad9ce2d5f Author: Konstantin Belousov (Sun 30 Aug 2026 06:20:46 BST) Committer: Konstantin Belousov (Fri 11 Sep 2026 07:59:52 BST) rtld: explain the use of rtld_bind_lock in rtld_get_addr_slow() (cherry picked from commit 5d9e5f49647e129bf814e7887b8201bfce8b53e3) M libexec/rtld-elf/rtld.c _____________________________________________________________________________________________________________ Commit: 6a4450470593578194a9c7ab5ab14b2b1df1f2e3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6a4450470593578194a9c7ab5ab14b2b1df1f2e3 Author: Konstantin Belousov (Wed 26 Aug 2026 12:53:20 BST) Committer: Konstantin Belousov (Fri 11 Sep 2026 07:59:52 BST) rtld: allow arches to initialize/finalize objects (cherry picked from commit 6a69d28ee07534c8c0eac328dbbc2529dfceb7fd) M libexec/rtld-elf/aarch64/rtld_machdep.h M libexec/rtld-elf/amd64/rtld_machdep.h M libexec/rtld-elf/arm/rtld_machdep.h M libexec/rtld-elf/i386/rtld_machdep.h M libexec/rtld-elf/map_object.c M libexec/rtld-elf/powerpc/rtld_machdep.h M libexec/rtld-elf/powerpc64/rtld_machdep.h M libexec/rtld-elf/riscv/rtld_machdep.h _____________________________________________________________________________________________________________ Commit: 81f84621891bf50ef99227650c5d1131450d712c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=81f84621891bf50ef99227650c5d1131450d712c Author: Baptiste Daroussin (Fri 4 Sep 2026 18:53:26 BST) Committer: Baptiste Daroussin (Fri 11 Sep 2026 07:37:07 BST) pw: simplify group lookup in usermod MFC After: 1 week (cherry picked from commit 885b0483fe2e1afc45caaf1294b4b755d1c7abae) M usr.sbin/pw/pw_user.c _____________________________________________________________________________________________________________ Commit: a7f51f6e7680b57500f79e85389e10654564d8ff URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a7f51f6e7680b57500f79e85389e10654564d8ff Author: Baptiste Daroussin (Fri 4 Sep 2026 15:03:00 BST) Committer: Baptiste Daroussin (Fri 11 Sep 2026 07:37:07 BST) pw: fix error message in grp_set_passwd to use correct fd MFC After: 1 week (cherry picked from commit cd575d557bc090cc9fff41b085bd0aee40a42c38) M usr.sbin/pw/pw_group.c _____________________________________________________________________________________________________________ Commit: 8cca719dd644db272310188632e96a439abf87d6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8cca719dd644db272310188632e96a439abf87d6 Author: Baptiste Daroussin (Fri 4 Sep 2026 15:00:07 BST) Committer: Baptiste Daroussin (Fri 11 Sep 2026 07:37:04 BST) pw: remove mail file with unlinkat instead of building a path This is consistent with how at jobs and crontabs are removed. MFC After: 1 week (cherry picked from commit 1ccf8075eaa84088ad4acb65aabb1e59c3fddd3f) M usr.sbin/pw/pw_user.c M usr.sbin/pw/tests/pw_userdel_test.sh _____________________________________________________________________________________________________________ Commit: c780045ccd17de2b0346541171c57b3f7ffe0c60 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c780045ccd17de2b0346541171c57b3f7ffe0c60 Author: Baptiste Daroussin (Fri 4 Sep 2026 13:56:37 BST) Committer: Baptiste Daroussin (Fri 11 Sep 2026 07:37:04 BST) pw: remove crontab with unlinkat instead of spawning crontab crontab -r only unlinks the crontab file, so spawn it directly with unlinkat() relative to conf.rootfd. This also makes the crontab removal work with pw -R. MFC After: 1 week (cherry picked from commit ba391775e8acb7a539c18f1231a396a7d0d763e9) M usr.sbin/pw/pw_user.c M usr.sbin/pw/tests/pw_userdel_test.sh _____________________________________________________________________________________________________________ Commit: 4a86c331c0760468921b874023a6370646c23e4a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4a86c331c0760468921b874023a6370646c23e4a Author: Baptiste Daroussin (Fri 4 Sep 2026 13:12:03 BST) Committer: Baptiste Daroussin (Fri 11 Sep 2026 07:37:04 BST) pw: fix at job removal when deleting a user rmat() used stat() with a path relative to the current working directory, so it never found the job files in /var/at/jobs and the at(1) jobs of a deleted user were never removed. ef7d0eb9489f also broke it by introducing a typo: /usr/sbin/atrm instead of /usr/bin/artm. Use fstatat() with the directory fd to stat the job files relative to the at jobs directory, and unlinkat() them directly instead of spawning atrm. Those changes allow us to make it works with pw -R. MFC After: 1 week (cherry picked from commit 6b6aa45f9a1a35acb7fef68824c1a5eb08503909) M usr.sbin/pw/pw_user.c M usr.sbin/pw/tests/pw_userdel_test.sh _____________________________________________________________________________________________________________ Commit: e4922f4ab2199e84571fc4d3026f5684273c8fd5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e4922f4ab2199e84571fc4d3026f5684273c8fd5 Author: Baptiste Daroussin (Fri 4 Sep 2026 12:43:22 BST) Committer: Baptiste Daroussin (Fri 11 Sep 2026 07:29:59 BST) pw: cleanup No functional change intended. MFC After: 1 week (cherry picked from commit 5f5a1657a921c3f7a84ef326c2116d986409e161) M usr.sbin/pw/pw_user.c _____________________________________________________________________________________________________________ Commit: bd81f044dd0f0d5996fc827de761bfe0c6c4ee1b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bd81f044dd0f0d5996fc827de761bfe0c6c4ee1b Author: Baptiste Daroussin (Fri 4 Sep 2026 11:40:52 BST) Committer: Baptiste Daroussin (Fri 11 Sep 2026 07:29:58 BST) pw: check -M, -V and -R input to avoid dereferencing argv[2] MFC After: 1 week (cherry picked from commit 2350f75acb0da0271ccff1fb22381f7e8c5948f8) M usr.sbin/pw/pw.c M usr.sbin/pw/tests/Makefile A usr.sbin/pw/tests/pw_test.sh _____________________________________________________________________________________________________________ Commit: 0cb71728c07310765ebdc869583a3efa9d4e917d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0cb71728c07310765ebdc869583a3efa9d4e917d Author: Baptiste Daroussin (Fri 4 Sep 2026 11:17:02 BST) Committer: Baptiste Daroussin (Fri 11 Sep 2026 07:29:58 BST) pw: use _PWDASH pseudo-fd for "-" in pw_checkfd pw_checkfd() returned the character "-" (45) for the "-" argument, which was ambiguous with a real file descriptor. MFC After: 1 week (cherry picked from commit 92e8a76b87862aa2ee7e6c3f637034e60ffbc2e6) M usr.sbin/pw/pw.h M usr.sbin/pw/pw_group.c M usr.sbin/pw/pw_user.c M usr.sbin/pw/pw_utils.c M usr.sbin/pw/tests/Makefile A usr.sbin/pw/tests/pw_unit_test.c M usr.sbin/pw/tests/pw_useradd_test.sh _____________________________________________________________________________________________________________ Commit: 39cc57ad6951d3980ee58d7c4114c96962fd86b9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=39cc57ad6951d3980ee58d7c4114c96962fd86b9 Author: Konstantin Belousov (Thu 3 Sep 2026 18:56:51 BST) Committer: Konstantin Belousov (Fri 11 Sep 2026 02:10:04 BST) pdfork.2: document kern.pdfork_implicit_nowaitpid (cherry picked from commit 661d1135e4ed12d6017220ea654ae67a6956dc73) M lib/libsys/pdfork.2 _____________________________________________________________________________________________________________ Commit: f2307ecd36d6b8c5261655d2dd49b330eadef458 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f2307ecd36d6b8c5261655d2dd49b330eadef458 Author: Konstantin Belousov (Thu 3 Sep 2026 18:56:13 BST) Committer: Konstantin Belousov (Fri 11 Sep 2026 02:10:04 BST) kern_fork.c: add kern.pdfork_implicit_nowaitpid sysctl (cherry picked from commit 24d3cbaaf5ad45b53e15d4729961fc8a8b385562) M sys/kern/kern_fork.c _____________________________________________________________________________________________________________ Commit: 6b0060daf50e93f68de435dc94a21322056cd29c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6b0060daf50e93f68de435dc94a21322056cd29c Author: Konstantin Belousov (Fri 4 Sep 2026 15:40:50 BST) Committer: Konstantin Belousov (Fri 11 Sep 2026 01:25:05 BST) ntsync(4): do not double-free the alert event when a dup was detected for WAIT_ALL (cherry picked from commit c0c7b56d3039a75a01315d610e386a5e9eda704c) M sys/dev/ntsync/ntsync.c _____________________________________________________________________________________________________________ Commit: 8c95ec13f2cb6d200c2fdd01f1bf16038713fa81 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8c95ec13f2cb6d200c2fdd01f1bf16038713fa81 Author: Konstantin Belousov (Thu 3 Sep 2026 19:00:12 BST) Committer: Konstantin Belousov (Fri 11 Sep 2026 01:25:05 BST) libcasper: reap zombies without requiring waitpid(2) (cherry picked from commit 1a296762b3d093e1fed4e74f9251206102f68355) M lib/libcasper/libcasper/libcasper.c M lib/libcasper/libcasper/zygote.c _____________________________________________________________________________________________________________ Commit: ef46b81b44fbb86ac20c6f1a847b101730487c8e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ef46b81b44fbb86ac20c6f1a847b101730487c8e Author: Bjoern A. Zeeb (Mon 7 Sep 2026 22:28:13 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:54 BST) usbdevs: add TP-Link Archer T4U ver 3 USB Vendor:Product 0x2357:0x0115 The data was provided by Pavel Timofeev (timp87 gmail com) and the device will be supported by rtw88 USB (rtw8822bu.c) in the future. (cherry picked from commit 95e9c3b1aa9fb2e78295e5053e1e84afad938e31) M sys/dev/usb/usbdevs _____________________________________________________________________________________________________________ Commit: 091ca09a0a66f16f793c5e1bbe7e96498f07d737 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=091ca09a0a66f16f793c5e1bbe7e96498f07d737 Author: Zishun Yi (Sat 5 Sep 2026 21:12:38 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:54 BST) LinuxKPI: Correct nents passed to dma_{un,}map_sg_attrs() According to Linux documentation the nents argument to dma_unmap_sg() must be the number one passed in, not the number of DMA addresses. In LinuxKPI this means orig_nents and not nents, so adjust this. Given nents and orig_nents should always be the same in LinuxKPI, this should only be a NOP for correctness. Reviewed by: bz, aokblast (LGTM) Differential Revision: https://reviews.freebsd.org/D57842 (cherry picked from commit 33574d47d9dea317b9a4bfe543c4f20be6a565ef) M sys/compat/linuxkpi/common/include/linux/dma-mapping.h _____________________________________________________________________________________________________________ Commit: 8b59c5f824aac748278c3e480094e92c43c49de3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8b59c5f824aac748278c3e480094e92c43c49de3 Author: Zishun Yi (Sat 5 Sep 2026 21:05:39 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:54 BST) LinuxKPI: implement dma_sync_sg_for_{cpu, device}() Implement dma_sync_sg_for_{cpu, device}() and dma_sync_sgtable_for_device(). These functions are useful for my GSoC 2026 project, udmabuf. Reviewed by: bz Differential Revision: https://reviews.freebsd.org/D57766 (cherry picked from commit 9dec0cd79c693951fc58d82a99918fc5a02cbcd0) M sys/compat/linuxkpi/common/include/linux/dma-mapping.h M sys/compat/linuxkpi/common/src/linux_pci.c _____________________________________________________________________________________________________________ Commit: 361c6a6b93fde0c112158b74611c9712ec8683b7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=361c6a6b93fde0c112158b74611c9712ec8683b7 Author: Zishun Yi (Fri 4 Sep 2026 20:11:35 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:54 BST) LinuxKPI: Fix DMA_BIDIRECTIONAL and other mappings In dma_sync_single_for_cpu(), the DMA_BIDIRECTIONAL direction currently performs BUS_DMASYNC_POSTREAD followed by BUS_DMASYNC_PREREAD. This patch corrects the mapping to use BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE. When ownership of the DMA area is transferred to the CPU, we must assume the previous device access was bidirectional. Both POST operations are necessary to ensure the CPU sees a consistent view of memory after potential device reads and writes. A PREREAD is unnecessary here because the device will no longer access the memory since ownership has been transferred to the CPU. Conversely, for dma_sync_single_for_device(), ownership is being transferred back to the hardware. The buffer must be prepared for potential bidirectional access by the device, requiring BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE. PR: 293381, 297155 Reported by: Zishun Yi Reported by: Kim Shrier (fbsdbugs westryn.net) Fixes: 95edb10b47fc ("LinuxKPI: implement dma_sync_single_for_*, apply to (un)map single/sg") Signed-off-by: Zishun Yi Reviewed by: aokblast, bz Differential Revision: https://reviews.freebsd.org/D55497 (cherry picked from commit 6e1436d748273be52fb155914db3efae075a8619) M sys/compat/linuxkpi/common/include/linux/dma-mapping.h M sys/compat/linuxkpi/common/src/linux_pci.c _____________________________________________________________________________________________________________ Commit: 1fbabf2d4f8d3c3ecfb47287881e5df932630fd9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1fbabf2d4f8d3c3ecfb47287881e5df932630fd9 Author: Bjoern A. Zeeb (Sat 29 Aug 2026 02:56:55 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:53 BST) LinuxKPI: 802.11: implement cfg80211_calculate_bitrate() lkpi_cfg80211_calculate_bitrate_vht() was constantly showing up in my debug traces as a TODO with rtw89 so I went ahead and implemented the HT and VHT versions. Realtek seems to limit amsdu sizes based on the value and ask for it whether needed or not. Sponsored by: The FreeBSD Foundation (cherry picked from commit 654cffe59dd6c8818241bf44eff333af28e10168) M sys/compat/linuxkpi/common/src/linux_80211.c _____________________________________________________________________________________________________________ Commit: d29f920d94002e67232f1ebcb4e5470a076ac4f0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d29f920d94002e67232f1ebcb4e5470a076ac4f0 Author: Kim Shrier (Mon 31 Aug 2026 17:28:51 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:53 BST) LinuxKPI: 802.11: add != NULL check in ieee80211_tx_status_ext() There seems to be another possible race with net80211 state machine changing the bss from under us (another lvif_bss_synched case). Just do the != NULL check to avoid a NULL pointer deref in ieee80211_ratectl_rate(). (bz extended the original comment and wrote the commit message). Sponosred by: The FreeBSD Foundation (commit) PR: 297184 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297184 ) (cherry picked from commit 0211e64ce1e5ba208f4b96453ce6740a49689b91) M sys/compat/linuxkpi/common/src/linux_80211.c _____________________________________________________________________________________________________________ Commit: 863f58e7593d8b29f6af9c9e11edcaba2a4d1d13 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=863f58e7593d8b29f6af9c9e11edcaba2a4d1d13 Author: Bjoern A. Zeeb (Thu 19 Feb 2026 23:21:10 GMT) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:53 BST) ath10k: remove some early FreeBSD-specific debugging The extra DELAY seems to no longer be needed and the dump_stack() is definitively a problem now. Remove all this. Sponsored by: The FreeBSD Foundation (cherry picked from commit 523c3992cf9e50dce7948372ef703f0057e22561) M sys/contrib/dev/athk/ath10k/pci.c _____________________________________________________________________________________________________________ Commit: d322892cef16d042aacf45ec5c1351f07390790f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d322892cef16d042aacf45ec5c1351f07390790f Author: Bjoern A. Zeeb (Fri 21 Aug 2026 15:02:39 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:53 BST) LinuxKPI: 802.11: assert wiphy lock for lkpi_bss_info_change() and MO Finish reviewing all callers for lkpi_80211_mo_link_info_changed() and lkpi_80211_mo_bss_info_changed(), which are called from lkpi_bss_info_change() only. Add the lockdep_assert_wiphy() to lkpi_bss_info_change() and make sure all callers are holding the wiphy lock. PR: 297228 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297228 ) Sponsored by: The FreeBSD Foundation (cherry picked from commit d1057074b277443e11b04e8513acdf43fd133123) M sys/compat/linuxkpi/common/src/linux_80211.c M sys/compat/linuxkpi/common/src/linux_80211_macops.c _____________________________________________________________________________________________________________ Commit: 5ba1a9a21b4724285ca82dca539ba9e242a3bff4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5ba1a9a21b4724285ca82dca539ba9e242a3bff4 Author: Bjoern A. Zeeb (Wed 12 Aug 2026 15:13:24 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:52 BST) net8021!: radiotap: add another HE define Add another HE define needed by the upcoming espwl(4). (cherry picked from commit 83e8fd6bbfaf3e0b4d7901187f6863ed93d03951) M sys/net80211/ieee80211_radiotap.h _____________________________________________________________________________________________________________ Commit: 83cb0299e2803360277bb24a0bf1da458e6509a9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=83cb0299e2803360277bb24a0bf1da458e6509a9 Author: Bjoern A. Zeeb (Wed 12 Aug 2026 15:16:40 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:52 BST) LinuxKPI: 802.11: deal with wdev list, and misc Fill in more (lvif) wdev details and add it to the list under the wiphy struct so that iterators at least work and find the (one) device. This is needed for the upcoming espwl(4) driver. misc: add WPI-SMS4 to the list of cipher suits (we won't support it but at least print the name). (cherry picked from commit 3e42109d846766248b7d0d0b077543ffc1a9db22) M sys/compat/linuxkpi/common/src/linux_80211.c _____________________________________________________________________________________________________________ Commit: 4eebd438f8b75d23a7c293d251e7b08de5b86667 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4eebd438f8b75d23a7c293d251e7b08de5b86667 Author: Bjoern A. Zeeb (Wed 12 Aug 2026 15:11:36 BST) Committer: Bjoern A. Zeeb (Thu 10 Sep 2026 10:46:52 BST) LinuxKPI: 802.11: add more defines, structures, ... Add more defines, structures, sort struct field types, add inline functions (partially implemented) all needed for the upcoming espwl(4) wireless driver. (cherry picked from commit 9b13e6ce5b099af0958a824fa37c70538a8b6d2a) M sys/compat/linuxkpi/common/include/linux/ieee80211.h M sys/compat/linuxkpi/common/include/linux/nl80211.h M sys/compat/linuxkpi/common/include/net/cfg80211.h M sys/compat/linuxkpi/common/include/net/mac80211.h _____________________________________________________________________________________________________________ Commit: 971d24f203dd8b6aaf14d674db7453c7f4f29e55 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=971d24f203dd8b6aaf14d674db7453c7f4f29e55 Author: Mark Johnston (Thu 27 Aug 2026 14:02:37 BST) Committer: Mark Johnston (Thu 10 Sep 2026 08:51:49 BST) pf: Fix fallout from the STATE_LOOKUP macro removal Commit 8572367b6814 ("pf: remove STATE_LOOKUP") introduced two seemingly unintentional changes with respect to divert(4)-injected packets (i.e., the PACKET_LOOPED case): we no longer return the matching state, and direct callers of pf_find_state() now treat matches of diverted packets the same as having no matching state at all. This seems inadvertent, and breaks certain rulesets which use divert-to. Fix them, and add a regression test case. Fixes: 8572367b6814 ("pf: remove STATE_LOOKUP") Reviewed by: kp MFC after: 2 weeks Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D59015 (cherry picked from commit 00a793def743b5be8fcbdd39fc1dfa61534ed66c) M sys/netpfil/pf/pf.c M tests/sys/netpfil/pf/route_to.sh _____________________________________________________________________________________________________________ Commit: 6c2e54998411fa5904d8e1cbb28918b663b9281e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6c2e54998411fa5904d8e1cbb28918b663b9281e Author: Kevin Bowling (Thu 27 Aug 2026 07:23:42 BST) Committer: Kevin Bowling (Thu 10 Sep 2026 05:05:17 BST) acpi_pci: Honor device proximity for DMA tags A PCI function with its own _PXM still inherits a DMA tag carrying the upstream bridge's proximity domain. Resolving an SR-IOV VF's locality through its PF therefore does not affect the domain used for DMA allocations. Create and cache a private child tag when the function, or a VF's owning PF, has an explicit _PXM. Parent it to the existing PCI or IOMMU tag so its constraints remain intact, then apply the function's domain without mutating a shared tag. pci_get_dma_tag() already performs the IOMMU lookup, so remove the duplicated lookup in the ACPI subclass while here. Reviewed by: jhb Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59063 (cherry picked from commit f1f58bdf7b5fc58e6011c6ac2ae2ba129dc41991) M sys/dev/acpica/acpi_pci.c _____________________________________________________________________________________________________________ Commit: 13e7b031931d24d6cbb24c253e567b745172a304 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=13e7b031931d24d6cbb24c253e567b745172a304 Author: Kevin Bowling (Thu 27 Aug 2026 07:22:56 BST) Committer: Kevin Bowling (Thu 10 Sep 2026 05:05:04 BST) acpi_pci: Cache PCI proximity domains A PCI function's _PXM is stable for the lifetime of its device instance, but CPU and DMA locality queries may evaluate it repeatedly. SR-IOV amplifies this because every VF resolves locality through the same PF. Cache successful mappings and the stable absence of _PXM on the locality source device, and share that result between CPU and domain queries. Continue to retry generic evaluation or mapping errors rather than making a potentially transient failure permanent. Reviewed by: jhb Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59207 (cherry picked from commit 5f78d024695b39208a6c92f6a96017bae53cdf2c) M sys/dev/acpica/acpi.c M sys/dev/acpica/acpi_pci.c M sys/dev/acpica/acpivar.h _____________________________________________________________________________________________________________ Commit: cac7fabe1e6f0cff7a40305e654979ff6362637c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cac7fabe1e6f0cff7a40305e654979ff6362637c Author: Kevin Bowling (Thu 27 Aug 2026 07:21:59 BST) Committer: Kevin Bowling (Thu 10 Sep 2026 05:04:54 BST) acpi_pci: Preserve CPU locality queries for descendants bus_generic_get_cpus() preserves the original leaf device while forwarding a request through the bus hierarchy. Consequently, acpi_pci_get_cpus() may receive a descendant below a PCI function rather than one of the PCI bus's direct children. Only apply the SR-IOV PF-locality mapping to direct PCI children. Preserve the previous ACPI CPU-locality lookup for descendants so their unrelated bus ivars are not interpreted as PCI device information. Reviewed by: jhb Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59206 (cherry picked from commit dc4f80da18f0dcc557a969b4283a86569266eb5c) M sys/dev/acpica/acpi_pci.c _____________________________________________________________________________________________________________ Commit: 2dac6502f8b8728762f9a94d948a534d08fd40a3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2dac6502f8b8728762f9a94d948a534d08fd40a3 Author: Kevin Bowling (Fri 21 Aug 2026 03:27:49 BST) Committer: Kevin Bowling (Thu 10 Sep 2026 05:04:42 BST) acpi_pci: Inherit PF locality for SR-IOV VFs SR-IOV VFs are instantiated from their PF and intentionally do not receive an ACPI handle by matching their runtime BDF. Consequently, ACPI locality queries for a VF fall back to the upstream bus. This is usually sufficient, but loses a _PXM supplied specifically for the PF. Use the PCI core's owning-PF accessor for BUS_GET_DOMAIN and BUS_GET_CPUS requests made for a VF. This preserves the VF's lack of an ACPI handle while allowing its CPU and NUMA placement to follow the PF. Reviewed by: jhb Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59062 (cherry picked from commit 1a2a88684a0126be8d7172362d5ec7dbb7a41c81) M sys/dev/acpica/acpi_pci.c _____________________________________________________________________________________________________________ Commit: 9b348b17001aa20ba5d20bfc530a34721aaaef0e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9b348b17001aa20ba5d20bfc530a34721aaaef0e Author: Kevin Bowling (Tue 18 Aug 2026 03:39:41 BST) Committer: Kevin Bowling (Thu 10 Sep 2026 05:03:25 BST) acpi_pci: Do not match SR-IOV VFs to ACPI devices SR-IOV VFs are instantiated dynamically from their PF rather than enumerated from ACPI. A VF's runtime slot and function can match an unrelated _ADR below the bridge. acpi_pci_save_handle() stores that handle in the VF's devinfo before acpi_pci_update_device() runs. If the handle is already bound to another device_t whose parent is not acpi0, acpi_pci_update_device() panics under INVARIANTS. Without INVARIANTS, the VF retains the unrelated handle, so subsequent ACPI lookups, including NUMA and power-management operations, can act on the wrong namespace node. Skip ACPI namespace matching for VFs. Reviewed by: jhb Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59061 (cherry picked from commit 8b74806161a188103666387013cdd93fb3f5dc07) M sys/dev/acpica/acpi_pci.c _____________________________________________________________________________________________________________ Commit: 37ba8a26c41a7c62d7cd2ad47126ef4618e515a6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=37ba8a26c41a7c62d7cd2ad47126ef4618e515a6 Author: Chris Suter (Thu 3 Sep 2026 06:23:46 BST) Committer: Xin LI (Thu 10 Sep 2026 03:28:29 BST) MFC: fsck_msdosfs: avoid signed integer overflow in readboot() (cherry picked from commit 18094609d301540526d3d57e92705bc989d29986) M sbin/fsck_msdosfs/boot.c _____________________________________________________________________________________________________________ Commit: 33bba26ad179a76b49a68be9edbf1b72817bf33e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=33bba26ad179a76b49a68be9edbf1b72817bf33e Author: Jie Li (Wed 2 Sep 2026 07:15:05 BST) Committer: Xin LI (Thu 10 Sep 2026 03:27:55 BST) MFC: fsck_msdosfs: fix status accounting for lost cluster chains (cherry picked from commit 6cf0d6c3b5777e053074200ff99dc4b750e62b96) M sbin/fsck_msdosfs/fat.c _____________________________________________________________________________________________________________ Commit: d3f871883f5562f0132f6b7dab9e59a772846032 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d3f871883f5562f0132f6b7dab9e59a772846032 Author: CooperCao (Thu 3 Sep 2026 08:10:12 BST) Committer: Xin LI (Thu 10 Sep 2026 03:27:36 BST) MFC: fsck_msdosfs: fix 32-bit overflow computing the LOST.DIR offset (cherry picked from commit d3c5464fee7b178a39c189363e48806a11fd3da4) M sbin/fsck_msdosfs/dir.c _____________________________________________________________________________________________________________ Commit: c2e12db3db01e214304b9e43d3c79dde06c3b06e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c2e12db3db01e214304b9e43d3c79dde06c3b06e Author: Chris Suter (Tue 4 Aug 2026 06:58:25 BST) Committer: Xin LI (Thu 10 Sep 2026 03:27:20 BST) MFC: fsck_msdosfs: fix memory leaks in checkfilesys() (cherry picked from commit 6d49b0c0e7b8b77d8043593356e712307e894743) M sbin/fsck_msdosfs/check.c M sbin/fsck_msdosfs/ext.h M sbin/fsck_msdosfs/fat.c _____________________________________________________________________________________________________________ Commit: fb2c0701d9f383f916b6541440cc98cf3410dd88 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fb2c0701d9f383f916b6541440cc98cf3410dd88 Author: Xin LI (Thu 3 Sep 2026 08:33:31 BST) Committer: Xin LI (Thu 10 Sep 2026 03:27:03 BST) MFC: fsck_msdosfs: add a test for reconnecting on volumes larger than 4 GiB MFC after: 1 week (cherry picked from commit 37aec55d0a7165960f686e5277f030ab3d44cf45) M sbin/fsck_msdosfs/tests/Makefile A sbin/fsck_msdosfs/tests/fsck_msdosfs_large_test.sh _____________________________________________________________________________________________________________ Commit: 99af5f35e038cf244a40ae9e49ff435984079e3e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=99af5f35e038cf244a40ae9e49ff435984079e3e Author: Xin LI (Thu 3 Sep 2026 06:23:53 BST) Committer: Xin LI (Thu 10 Sep 2026 03:26:42 BST) MFC: fsck_msdosfs: add tests for the 32-bit boot block field decoding (cherry picked from commit c4f458da4411872df4968e02ca292389df462b7b) M sbin/fsck_msdosfs/tests/Makefile A sbin/fsck_msdosfs/tests/fsck_msdosfs_boot_test.sh _____________________________________________________________________________________________________________ Commit: 5693123b18a7c3ccc58f57578461fc4962a022f7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5693123b18a7c3ccc58f57578461fc4962a022f7 Author: Xin LI (Thu 3 Sep 2026 03:15:05 BST) Committer: Xin LI (Thu 10 Sep 2026 03:26:12 BST) MFC: fsck_msdosfs: add tests for lost cluster chain repair accounting (cherry picked from commit bbaf254293f7e19fa7b0f9ed1da21c7a43126d79) M etc/mtree/BSD.tests.dist M sbin/fsck_msdosfs/Makefile A sbin/fsck_msdosfs/tests/Makefile A sbin/fsck_msdosfs/tests/fsck_msdosfs_test.sh _____________________________________________________________________________________________________________ Commit: 1922ceffcf10a6a8c21498a5e4c02e291415cc6b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1922ceffcf10a6a8c21498a5e4c02e291415cc6b Author: Xin LI (Sat 5 Sep 2026 02:03:17 BST) Committer: Xin LI (Thu 10 Sep 2026 03:22:04 BST) MFC: libmagic: Add swap.c and magic.h to SRCS. (cherry picked from commit 8929675e11c0c64ff96a2441082794980c9c6b2e) M lib/libmagic/Makefile _____________________________________________________________________________________________________________ Commit: 811f6b461be47e11433f3b1b9ee47ccda3786ca2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=811f6b461be47e11433f3b1b9ee47ccda3786ca2 Author: Xin LI (Thu 3 Sep 2026 05:29:02 BST) Committer: Xin LI (Thu 10 Sep 2026 03:21:42 BST) MFC: MFV: file 5.48 (cherry picked from commit 7af41682a96bf7058b82665c33bb9b1bfa079c17) M contrib/file/ChangeLog M contrib/file/Makefile.in M contrib/file/README.md M contrib/file/aclocal.m4 M contrib/file/compile M contrib/file/config.h.in M contrib/file/configure M contrib/file/configure.ac M contrib/file/depcomp M contrib/file/doc/Makefile.in M contrib/file/doc/magic.man A contrib/file/magic/Magdir/a2ml M contrib/file/magic/Magdir/acorn M contrib/file/magic/Magdir/aes M contrib/file/magic/Magdir/amigaos A contrib/file/magic/Magdir/andrew M contrib/file/magic/Magdir/android M contrib/file/magic/Magdir/apple M contrib/file/magic/Magdir/archive A contrib/file/magic/Magdir/atari M contrib/file/magic/Magdir/c-lang M contrib/file/magic/Magdir/cad M contrib/file/magic/Magdir/coff M contrib/file/magic/Magdir/compress M contrib/file/magic/Magdir/console M contrib/file/magic/Magdir/dyadic M contrib/file/magic/Magdir/filesystems M contrib/file/magic/Magdir/finger M contrib/file/magic/Magdir/fonts M contrib/file/magic/Magdir/games M contrib/file/magic/Magdir/images M contrib/file/magic/Magdir/interleaf M contrib/file/magic/Magdir/ispell M contrib/file/magic/Magdir/javascript A contrib/file/magic/Magdir/k9 M contrib/file/magic/Magdir/lua M contrib/file/magic/Magdir/mail.news M contrib/file/magic/Magdir/mips M contrib/file/magic/Magdir/msdos A contrib/file/magic/Magdir/nix M contrib/file/magic/Magdir/ole2compounddocs A contrib/file/magic/Magdir/partclone M contrib/file/magic/Magdir/riff M contrib/file/magic/Magdir/ruby M contrib/file/magic/Magdir/sun M contrib/file/magic/Magdir/tex M contrib/file/magic/Magdir/virtual M contrib/file/magic/Magdir/windows M contrib/file/magic/Magdir/wordprocessors M contrib/file/magic/Makefile.am M contrib/file/magic/Makefile.in M contrib/file/missing M contrib/file/python/Makefile.in M contrib/file/python/magic.py M contrib/file/src/Makefile.am M contrib/file/src/Makefile.in M contrib/file/src/apprentice.c M contrib/file/src/ascmagic.c M contrib/file/src/cdf.c M contrib/file/src/cdf_time.c M contrib/file/src/compress.c M contrib/file/src/der.c M contrib/file/src/encoding.c M contrib/file/src/file.c M contrib/file/src/file.h M contrib/file/src/funcs.c M contrib/file/src/is_csv.c M contrib/file/src/is_tar.c A contrib/file/src/landlock.c M contrib/file/src/magic.c M contrib/file/src/magic.h.in M contrib/file/src/print.c M contrib/file/src/readcdf.c M contrib/file/src/readelf.c M contrib/file/src/seccomp.c M contrib/file/src/softmagic.c A contrib/file/src/swap.c A contrib/file/src/swap.h M contrib/file/tests/Makefile.in M contrib/file/tests/bgcode.result M contrib/file/tests/efi-signature-list-sha256.result M lib/libmagic/config.h _____________________________________________________________________________________________________________ Commit: 74c5995d2e8d8639fdc723561f06a82ab86ee9c4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=74c5995d2e8d8639fdc723561f06a82ab86ee9c4 Author: Mark Johnston (Wed 2 Sep 2026 15:33:37 BST) Committer: Mark Johnston (Wed 9 Sep 2026 09:34:33 BST) syslogd/tests: Amend a test to catch leaked process descriptors This serves to catch the regression fixed by commit 1a669b66ddb4 ("syslogd: reap pipe children on config reload"). MFC after: 1 week (cherry picked from commit 231dfc99a08874c269593c2e491ce16a618f4ed6) M usr.sbin/syslogd/tests/syslogd_test.sh _____________________________________________________________________________________________________________ Commit: 8cf005884326fd15324bc484867c0a947607cb45 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8cf005884326fd15324bc484867c0a947607cb45 Author: Baptiste Daroussin (Wed 2 Sep 2026 09:51:42 BST) Committer: Mark Johnston (Wed 9 Sep 2026 09:34:33 BST) syslogd: reap pipe children on config reload On SIGHUP reload, closelogfiles() frees each F_PIPE filed even when its pipe process is still running. close_filed() sets f_type to F_UNUSED before the check, so the condition f_type != F_PIPE is always true and the filed is freed while its process descriptor is still on the dead queue and registered in the kqueue. When the child later exits, the NOTE_EXIT handler dereferences the freed filed (use-after-free) and never closes the process descriptor, leaving the pipe child as a persistent zombie. Capture whether the filed is a pipe with an active process descriptor before calling close_filed(), and defer the free in that case so the NOTE_EXIT handler can reap the child and free the filed. Reviewed by: markj Fixes: 95381c0139d6 (syslogd: Use process descriptors) Differential Revision: https://reviews.freebsd.org/D59319 (cherry picked from commit 1a669b66ddb4748c24116e32dcb51eabaf4859ed) M usr.sbin/syslogd/syslogd.c _____________________________________________________________________________________________________________ Commit: 266331cb8bbcdaab45f183ddba8775cb0c4f79d0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=266331cb8bbcdaab45f183ddba8775cb0c4f79d0 Author: Mark Johnston (Tue 25 Aug 2026 19:09:37 BST) Committer: Mark Johnston (Wed 9 Sep 2026 09:34:33 BST) pf: Re-optimize state key handling pf states may be looked up using one of two keys: the stack key or the wire key. For states involving address translation, these will be distinct; the stack key describes the addresses seen by the local network stack, and the wire key has the translated addresses. Historically, pf would avoid allocating separate keys if both are identical. This changed in commit fcdb520c1b4e ("pf: nat64") to always allocate separate state key structures. Incidentally, OpenBSD seems to maintain the optimization, but also has an explicit reference count embedded in state keys. The change breaks another optimization: pf_state_key_attach() still uses state key pointer equality to check whether the stack and wire keys are equal, so those checks are always false after the aforementioned commit. Thus we never skip the second key lookup, even when that's possible (i.e., no address translation is involved). So, for some rulesets we're consuming more memory than needed and performing more state key lookups than needed. The behaviour of always looking up the stack key also happens to break some existing rulesets involving RDR and divert-to, which is how I noticed the problem. I think those rulesets effectively worked by accident before, but it seems worth restoring the optimization regardless. Reviewed by: kp MFC after: 2 weeks Fixes: fcdb520c1b4e ("pf: nat64") Sponsored by: OPNsense Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D58922 (cherry picked from commit 918fbc947356c1434760b1bc0deb8558283ce8c5) M sys/netpfil/pf/pf.c M sys/netpfil/pf/pf_lb.c _____________________________________________________________________________________________________________ Commit: a63319ebd3b731b8225b77f4f35c1f0ffa5f1dfd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a63319ebd3b731b8225b77f4f35c1f0ffa5f1dfd Author: Colin Percival (Wed 2 Sep 2026 17:37:58 BST) Committer: Colin Percival (Wed 9 Sep 2026 01:28:57 BST) vmimage.subr: Use makefs -N By default, makefs uses the host environment's user and group databases when creating filesystems. This causes makefs to fail when trying to create files owned by users or groups which don't exist in the host environment, for example when creating a VM with packages pre-installed which added their own users/groups. Pass "-N ${DESTDIR}/etc" to makefs to point it at the user and group databases from the image being created. MFC after: 1 week Sponsored by: Amazon (cherry picked from commit 7ca0c1eba2e4c49ac92499ef0f6adf27c8b930d4) M release/tools/vmimage.subr _____________________________________________________________________________________________________________ Commit: e9d9d7ef93ab6ceffff07bf8b41e8da6c3b5bca3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e9d9d7ef93ab6ceffff07bf8b41e8da6c3b5bca3 Author: Philip Paeps (Tue 1 Sep 2026 03:25:25 BST) Committer: Philip Paeps (Tue 8 Sep 2026 01:30:15 BST) contrib/expat: import expat 2.8.4 Changes: https://github.com/libexpat/libexpat/blob/R_2_8_4/expat/Changes Security: CVE-2026-66046 Security: CVE-2026-76641 Security: CVE-2026-76957 Security: CVE-2026-76956 (cherry picked from commit f89b0ce5fd0786f5ed306d9cdf6f019942ae0d8a) M contrib/expat/Changes M contrib/expat/README.md M contrib/expat/configure.ac M contrib/expat/doc/reference.html M contrib/expat/doc/xmlwf.1 M contrib/expat/doc/xmlwf.xml M contrib/expat/fix-xmltest-log.sh M contrib/expat/lib/expat.h M contrib/expat/lib/internal.h M contrib/expat/lib/random_getentropy.c M contrib/expat/lib/xmlparse.c M contrib/expat/lib/xmltok.h M contrib/expat/tests/basic_tests.c M contrib/expat/tests/misc_tests.c M lib/libexpat/expat_config.h M lib/libexpat/libbsdxml.3 _____________________________________________________________________________________________________________ Commit: 3c242182fb4b07cf0a7fb3f3b80b39c879c7b617 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3c242182fb4b07cf0a7fb3f3b80b39c879c7b617 Author: Robert Clausecker (Fri 4 Sep 2026 19:01:18 BST) Committer: Robert Clausecker (Mon 7 Sep 2026 23:35:25 BST) manpages: Fix author e-mail address formatting - consistently use Mt request within Aq. This makes author e-mail addresses clickable in many frontends. - @freebsd.org -> @FreeBSD.org - (user@host.tld) -> Aq Mt user@host.tld Event: Berlin Hackathon 202609 MFC after: 3 days Reviewed by: ziaee Differential Revision: https://reviews.freebsd.org/D59410 (cherry picked from commit d1c07141dccf8c719067bd3c30c402e4db9a77b3) M crypto/heimdal/lib/gssapi/mech/mech.5 M lib/libbe/libbe.3 M lib/libmt/mt.3 M lib/libpathconv/abs2rel.3 M lib/libpathconv/rel2abs.3 M lib/libpmc/pmc.haswellxeon.3 M sbin/bectl/bectl.8 M sbin/ipfw/ipfw.8 M share/man/man3/stats.3 M share/man/man4/aw_gpio.4 M share/man/man4/aw_mmc.4 M share/man/man4/aw_rtc.4 M share/man/man4/aw_spi.4 M share/man/man4/bnxt.4 M share/man/man4/genet.4 M share/man/man4/hwt.4 M share/man/man4/imcsmb.4 M share/man/man4/ixl.4 M share/man/man4/jedec_dimm.4 M share/man/man4/man4.aarch64/felix.4 M share/man/man4/man4.aarch64/rk_gpio.4 M share/man/man4/man4.aarch64/rk_grf.4 M share/man/man4/man4.aarch64/rk_grf_gpio.4 M share/man/man4/man4.aarch64/rk_i2c.4 M share/man/man4/man4.aarch64/rk_pinctrl.4 M share/man/man4/ng_checksum.4 M share/man/man4/ng_patch.4 M share/man/man4/otus.4 M share/man/man4/rsu.4 M share/man/man4/rtsx.4 M share/man/man4/rtwn.4 M share/man/man4/smartpqi.4 M share/man/man4/smb.4 M share/man/man4/tcp_bblog.4 M share/man/man4/vmm.4 M share/man/man4/vmx.4 M share/man/man4/vxlan.4 M share/man/man5/forward.5 M share/man/man5/style.Makefile.5 M share/man/man9/alq.9 M share/man/man9/pci_iov_schema.9 M share/man/man9/pmap_unwire.9 M stand/defaults/loader.conf.5 M stand/efi/gptboot/gptboot.efi.8 M stand/forth/beastie.4th.8 M stand/forth/brand.4th.8 M stand/forth/check-password.4th.8 M stand/forth/color.4th.8 M stand/forth/delay.4th.8 M stand/forth/loader.4th.8 M stand/forth/menu.4th.8 M stand/forth/menusets.4th.8 M stand/forth/version.4th.8 M stand/i386/gptboot/gptboot.8 M stand/i386/gptzfsboot/gptzfsboot.8 M stand/i386/isoboot/isoboot.8 M sys/netinet/libalias/libalias.3 M sys/teken/libteken/teken.3 M tools/tools/netmap/pkt-gen.8 M usr.bin/posixshmcontrol/posixshmcontrol.1 M usr.bin/proccontrol/proccontrol.1 M usr.bin/sdiff/sdiff.1 M usr.bin/soelim/soelim.1 M usr.sbin/bhyve/bhyve.8 M usr.sbin/bluetooth/ath3kfw/ath3kfw.8 M usr.sbin/cxgbetool/cxgbetool.8 M usr.sbin/gpioctl/gpioctl.8 M usr.sbin/watchdogd/watchdogd.8 M usr.sbin/zonectl/zonectl.8 _____________________________________________________________________________________________________________ Commit: bf95db1639afd275a7d0c9aacde1a863ce649089 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bf95db1639afd275a7d0c9aacde1a863ce649089 Author: Colin Percival (Sat 29 Aug 2026 21:22:15 BST) Committer: Colin Percival (Mon 7 Sep 2026 20:10:50 BST) gstat: Set errno = 0 before strtoul The strtoul function sets errno on error, but does not clear it on success; when using strtoul and checking errno (as one should) for ERANGE / EINVAL afterwards, it's important to zero errno first. While here, remove a dead store. Reviewed by: phk Fixes: 4fe8c1b67be0 ("Add error and range checking ... ") MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59270 (cherry picked from commit 6ddb10cf6b7f870d749e96d2ae55976b18896f54) M usr.sbin/gstat/gstat.c _____________________________________________________________________________________________________________ Commit: 9df7eede349cfc133a576af81d2182bc738c614b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9df7eede349cfc133a576af81d2182bc738c614b Author: Mark Johnston (Fri 28 Aug 2026 02:25:25 BST) Committer: Mark Johnston (Mon 7 Sep 2026 17:06:50 BST) rangelock: Fix format strings for 32-bit kernels Reported by: Jenkins Fixes: f1f58bdf7b5f ("acpi_pci: Honor device proximity for DMA tags") (cherry picked from commit c869a36fc98a2ac1df5127e34ba7f9bffa0a5ce7) M sys/kern/kern_rangelock.c _____________________________________________________________________________________________________________ Commit: 5cc1427b8fef280fb08db5d6e851ab10cb5942af URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5cc1427b8fef280fb08db5d6e851ab10cb5942af Author: Mark Johnston (Wed 2 Sep 2026 15:41:02 BST) Committer: Mark Johnston (Mon 7 Sep 2026 13:59:33 BST) syslogd: Pipes need the CAP_PDGETPID right as well While here, use caph_rights_limit(), as syslogd already uses caph_enter(). PR: 298104 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298104 ) Reported by: mi Fixes: 24816abb8740 ("syslogd: Limit rights on procdescs") MFC after: 3 days (cherry picked from commit 87cfe4a62078bc8ff14671fde3af347e7c7e3a26) M usr.sbin/syslogd/syslogd.c _____________________________________________________________________________________________________________ Commit: 6a80c0eabf4395acd8568e5548095389df4c1cae URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6a80c0eabf4395acd8568e5548095389df4c1cae Author: Mark Johnston (Thu 27 Aug 2026 20:47:44 BST) Committer: Mark Johnston (Mon 7 Sep 2026 13:59:27 BST) rangelock: Reimplement _rangelock_cookie_assert() After rangelocks were reimplemented, _rangelock_cookie_assert() became a stub. Re-provide an implementation. Reviewed by: kib MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59222 (cherry picked from commit 2e376cca379b744ce24c849aced684bf770c0f75) M sys/kern/kern_rangelock.c M sys/kern/uipc_shm.c _____________________________________________________________________________________________________________ Commit: 7b76afd6c211ee6a5881bfe37d5f91097a171f6d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7b76afd6c211ee6a5881bfe37d5f91097a171f6d Author: Ryan Campbell (Thu 27 Aug 2026 16:05:39 BST) Committer: Mark Johnston (Mon 7 Sep 2026 13:59:27 BST) netipsec: Implement pr_disconnect for PF_KEY sockets Otherwise close() fails. PR: 297977 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297977 ) Reviewed by: glebius Fixes: ea7be1293b48 ("keysock: do not use raw socket code") MFC after: 1 week (cherry picked from commit fef9077cf816a6499bd6a7f9678c179194463e43) M sys/netipsec/keysock.c _____________________________________________________________________________________________________________ Commit: c6df11228aba647b968b4b3fc5e416a0d34b75fd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c6df11228aba647b968b4b3fc5e416a0d34b75fd Author: Minsoo Choo (Mon 20 Jul 2026 03:37:56 BST) Committer: Olivier Certner (Mon 7 Sep 2026 09:41:10 BST) sched_4bsd: Allocate runqueues only for present CPUs 4BSD has been allocating an array of MAXCPU runqueues, runq_pcpu[], instead of one runqueue per actually present CPU. On amd64, MAXCPU is 1024 and 'struct runq' is 4128 bytes, causing runq_pcpu[] to take more than 4 MiB of memory. On the vast majority of current systems, which have at most 32 cores with SMT, this is a waste of memory. Besides providing per-CPU runqueues, runq_pcpu[] has also been used to determine the CPU ID of a given thread's associated runqueue through pointer arithmetic. Since per-CPU structures are only allocated for present CPUs, in order to save space, move the runqueues to per-CPU fields and, for each thread ('struct ts_sched'), replace its runqueue pointer by the CPU ID of the runqueue it is in (new 'ts_rqcpu' field). Set the thread's CPU ID to the special NOCPU value when it is running on the global runqueue. Drop the SKE_RUNQ_PCPU() macro as it is now simply equivalent to 'ts_rqcpu != NOCPU'. Introduce the TS_RUNQ_PTR() macro to get a pointer to the thread's runqueue, which must be passed to runq_add() and runq_remove(). [olce: Massaged the commit message. Fixed an inverted KASSERT(). Tested with source builds.] Reviewed by: olce Tested by: olce MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D58000 (cherry picked from commit deddfa3db956ebed584a859010a10b6d9a4e2e5d) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: 554eb7b46216506fa7c5c0c05535de2fd8d9b30e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=554eb7b46216506fa7c5c0c05535de2fd8d9b30e Author: Minsoo Choo (Mon 20 Jul 2026 03:34:13 BST) Committer: Olivier Certner (Mon 7 Sep 2026 09:41:09 BST) sched_4bsd: Rename the global runqueue In an upcoming change whose purpose is to stop having 4BSD always allocate MAXCPU runqueues, wasting space on most machines, 'struct td_sched' will store the CPU ID to which a thread is bound/pinned instead of a pointer to the corresponding runqueue. As a consequence, existing functions manipulating a thread's runqueue will need to point to the inferred runqueue through a local variable. The name 'runq' is the ideal one for these local variables, but before this change it designated the global runqueue, also causing unnecessary ambiguity. Thus, rename the global runqueue to the more explicit 'runq_global'. Arguably, this should have been performed as part of commit e17c57b14ba9 ("- Implement cpu pinning and binding. (...)"). No functional change (intended). [olce: Massaged the commit message. Tested with source builds.] Suggested by: olce Reviewed by: olce Tested by: olce MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D58065 (cherry picked from commit 26ef6665344823f405c7fafba5baaacd9baacf72) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: 58067171721db191139eda1e97ca2d31b4854e23 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=58067171721db191139eda1e97ca2d31b4854e23 Author: Olivier Certner (Sat 13 Jun 2026 15:19:18 BST) Committer: Olivier Certner (Mon 7 Sep 2026 09:41:09 BST) sched_4bsd: Remove obsolete SMP scaling for ticks per priority level The INVERSE_ESTCPU_WEIGHT scaling had been introduced by commit b698380f33ef ("Quick fix for scaling of statclock ticks in the SMP case. ...") to leave more discrimination room for multiple CPUs possibly adding their ticks to the same 'struct ksegrp' (but also slightly changing how CPU hogs are penalized). Then, commit 8460a577a4b4 ("Make KSE a kernel option, ...") introduced the current thread-based code, where tick accounting is only done on the current thread, which renders this trick obsolete on !KSE. Finally, when KSE was removed, the trick became generally obsolete. The trick is actually even harmful because it changes the intended behavior of priorizing more the CPUs that use the less ticks (and so, impairs boosting "interactive" processes). Remove it now. Clamping of 'ts_estcpu' and its relation to the load-average-based decay may be re-examined later. Fixes: 8460a577a4b4 ("Make KSE a kernel option, ...") MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D57827 (cherry picked from commit 5217b4a728dc9fd72bc844c2a6bb30a2a28119c4) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: 5db755a864d9fd7ba9d7ad0753072a900dd8ffa5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5db755a864d9fd7ba9d7ad0753072a900dd8ffa5 Author: Olivier Certner (Sat 13 Jun 2026 14:09:42 BST) Committer: Olivier Certner (Mon 7 Sep 2026 09:41:09 BST) sched_4bsd: Fix conflating priority of differently-niced CPU-bound threads We introduced (PRI_MAX_TIMESHARE - PRI_MIN_TIMESHARE) as part of ESTCPULIM() in commit eebc148f25c3 ("sched_4bsd: ESTCPULIM(): Allow any value in the timeshare range") in order to use more than a fixed number (40) of all the available priority levels in the timeshare range (136 before the 256-queue runqueue work, 224 now) to take into account the number of ticks a thread has run ('ts_estcpu'). In the computation of a new thread's priority (resetpriority()), in addition to the "ticks running" contribution, the final priority also includes a "nice" value contribution. The final value is clamped into the [PRI_MIN_TIMESHARE; PRI_MAX_TRIMESHARE] range. Problem is that the new "ticks running" contribution now can lead to a computed priority value that exceeds PRI_MAX_TRIMESHARE, and is thus finally clamped to PRI_MAX_TIMESHARE, which becomes an alias for all out-of-bound values. In particular, this can conflate CPU-hungry threads. With at least two of them competing on the same CPU, with an increase of 'ts_estcpu' of ~64 per second (stathz being 127) and the minimal decay of 4/5 (load average 2 or more), both threads will easily reach the current clamping of 224 (+ PRI_MIN_TIMESHARE), and be considered indifferently by the scheduler. Fix this problem by ensuring that the maximum contribution of 'ts_estcpu' (via ESTCPULIM()) cannot exceed the timeshare range of priorities when the nice contribution is added to it, so the nice contribution continues to have an effect on CPU-bound threads. Introduction of the nice term in ESTCPULIM() (then NICE_WEIGHT * PRIO_MAX) has been done in commit bdf423572ee3 ("Scheduler fixes equivalent to the ones logged in the following NetBSD commit...") and does not appear to have made any real sense even then. Fixes: bdf423572ee3 ("Scheduler fixes equivalent to the ones logged in the following NetBSD commit...") Fixes: eebc148f25c3 ("sched_4bsd: ESTCPULIM(): Allow any value in the timeshare range") MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D57826 (cherry picked from commit e8dec0038bd95f6d940afa19b4d101f466280fd6) M sys/kern/sched_4bsd.c _____________________________________________________________________________________________________________ Commit: afd1ae57702c90990a4ac4873c320e7dde735809 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=afd1ae57702c90990a4ac4873c320e7dde735809 Author: Olivier Certner (Tue 16 Jun 2026 22:06:36 BST) Committer: Olivier Certner (Mon 7 Sep 2026 09:41:02 BST) sched_ule: Fix selecting lowest priority thread early in corner case When transferring a thread with near 100% CPU statistics (but not 100%; up to 57.5/59≈97.46%) to a CPU where the enqueue offset is ahead of at least 2 from the dequeue one, which requires peculiar conditions to happen (transfer triggered by a bind request or cpuset change, or during balancing if a thread or more existed from a brief amount of time on the origin CPU), the transferred thread can get placed after the dequeue offset, effectively making it appear as a high priority one unduly, causing latency increase for other threads. The change here was missed when changing the enqueue and dequeue offsets update mechanism to recover pre-256-queue-runqueue ULE anti-starvation and fairness behavior. That change opened up the possibility that these two offsets are apart by more than one. Reviewed by: markj Discussed with: Minsoo Choo Fixes: 6792f3411f6d ("sched_ule: Recover previous nice and anti-starvation behaviors") MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D57829 (cherry picked from commit a6587ae0f46dba4e47fa92c831f55288ec181734) M sys/kern/sched_ule.c _____________________________________________________________________________________________________________ Commit: 5cef979b16d46306162201665f924ce455e5321b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5cef979b16d46306162201665f924ce455e5321b Author: Enji Cooper (Wed 2 Sep 2026 16:42:04 BST) Committer: Enji Cooper (Mon 7 Sep 2026 08:41:02 BST) [tests] libarchive: mark `test_read_filter_lz4_raw_skip` broken This test has not passed since 185becb1e1bd2657c156f78aeb52edac05ba5fb5 (the libarchive 3.8.9 upgrade). PR: 297505 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297505 ) MFC after: 1 week Reviewed by: siva Differential Revision: https://reviews.freebsd.org/D59314 (cherry picked from commit 064d190cdac48465083da1798a36d923f50790ac) M lib/libarchive/tests/Makefile _____________________________________________________________________________________________________________ Commit: 8dcd6ea3764645d336362e6f4d1eba667a00107c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8dcd6ea3764645d336362e6f4d1eba667a00107c Author: Kevin Bowling (Sun 16 Aug 2026 08:10:09 BST) Committer: Kevin Bowling (Mon 7 Sep 2026 08:22:03 BST) e1000: Serialize 82579 CSR writes with the Management Engine The 82579 PCIm2PCI arbiter can acknowledge a host MAC CSR write while the Management Engine is accessing another CSR. The host write can be lost; subsequent target accesses may no longer be claimed by the MAC and can hang the system. For 82579 controllers with valid management firmware, wait for the ME CSR access indication before every MAC CSR write. Keep the wait bounded and use DELAY because writes occur in interrupt and datapath contexts. Verify every transmit and receive tail write. If a tail does not hold the requested value, disable its datapath direction and request a full iflib reset. Keep the ordinary register-write path as a direct MMIO write behind a predicted per-device gate. Contain the wait and tail recovery in the 82579 slow path rather than adding tail-specific accessors and state to the rest of the e1000 family. Documentation on the PCH NICs is scare so Intel's Linux e1000e fixes publicly document the hardware failure and required serialization as commits bdc125f73f3c and d601afcae2fe. This implementation is a bit cleaner. Tested on a Thinkpad T430 (82579LM) with a test kernel to simulate ME contention without incident as well as lost tail writes causing a succesful recovery. Sponsored by: BBOX.io (cherry picked from commit e7aa5a5a3f690f49488f89e01444ba1bcebc427b) M sys/dev/e1000/e1000_osdep.c M sys/dev/e1000/e1000_osdep.h M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: d8c4785e1e41860ad469ac3f67149d0d84ee6590 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d8c4785e1e41860ad469ac3f67149d0d84ee6590 Author: Baptiste Daroussin (Fri 21 Aug 2026 15:41:54 BST) Committer: Baptiste Daroussin (Mon 7 Sep 2026 05:21:07 BST) cat: add -A, -E and -T flags Support cat -A, -E and -T, which are commonly used by Linux shell scripts. -E prints a "$" at the end of each line, -T renders tabs as ^I, and -A is equivalent to -vET. MFC After: 1 week Discussed with: jrtc27 Reviewed by: jrtc27, ziaee Differential Revision: https://reviews.freebsd.org/D59250 (cherry picked from commit d2cfdf4c12a76db3612c83575403150811f5aa9a) M bin/cat/cat.1 M bin/cat/cat.c M bin/cat/tests/Makefile A bin/cat/tests/cat_extra_test.sh _____________________________________________________________________________________________________________ Commit: 37ec9a153b2112d8f7bdc156aeec960feaed1bc6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=37ec9a153b2112d8f7bdc156aeec960feaed1bc6 Author: Navdeep Parhar (Fri 21 Aug 2026 21:16:48 BST) Committer: Baptiste Daroussin (Mon 7 Sep 2026 05:20:18 BST) nuageinit: root should be allowed to log in when disable_root is false PermitRootLogin is "no" by default and that stopped root from logging in even though disable_root was set to false during initialization. Reviewed by: bapt Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D59101 (cherry picked from commit a209aac86882d3062318dea4971b2f728463c7e2) M libexec/nuageinit/nuageinit _____________________________________________________________________________________________________________ Commit: a1fd5f9f87d3c131991933125462d6750f911179 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a1fd5f9f87d3c131991933125462d6750f911179 Author: Baptiste Daroussin (Tue 11 Aug 2026 11:00:56 BST) Committer: Baptiste Daroussin (Mon 7 Sep 2026 05:19:01 BST) nuageinit: support allow_public_ssh_keys Skip importing datasource public keys when set to false. (cherry picked from commit 8f378c83c6b8b052433834ca0b53677459dc0e85) M libexec/nuageinit/nuageinit M libexec/nuageinit/nuageinit.7 M libexec/nuageinit/tests/nuageinit.sh _____________________________________________________________________________________________________________ Commit: af0ca8cd7534d86e12186081a9b882fb9e7e71a9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=af0ca8cd7534d86e12186081a9b882fb9e7e71a9 Author: Baptiste Daroussin (Tue 11 Aug 2026 10:46:52 BST) Committer: Baptiste Daroussin (Mon 7 Sep 2026 05:19:01 BST) nuageinit: accept lock_passwd for users Alias cloud-init lock_passwd key alongside locked. (cherry picked from commit cd06bf52053d463f4a3f6c0b9cb5c9f1d578e439) M libexec/nuageinit/nuage.lua M libexec/nuageinit/nuageinit.7 M libexec/nuageinit/tests/nuageinit.sh _____________________________________________________________________________________________________________ Commit: 540f9ca5599f880204eccd8ea2ef3854f98dddc8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=540f9ca5599f880204eccd8ea2ef3854f98dddc8 Author: Baptiste Daroussin (Tue 11 Aug 2026 10:07:37 BST) Committer: Baptiste Daroussin (Mon 7 Sep 2026 05:19:01 BST) nuageinit: fix ssh_pwauth string handling Treat "no"/"unchanged" correctly instead of any non-nil value as yes. (cherry picked from commit 8d4d5f2e8e56e7b24b50706acbdc0c8c750c6fed) M libexec/nuageinit/nuageinit M libexec/nuageinit/tests/nuageinit.sh _____________________________________________________________________________________________________________ Commit: ece43a7994b68f93c2b9fc434a9fdf6e0668dc92 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ece43a7994b68f93c2b9fc434a9fdf6e0668dc92 Author: Baptiste Daroussin (Tue 11 Aug 2026 09:56:52 BST) Committer: Baptiste Daroussin (Mon 7 Sep 2026 05:19:01 BST) nuageinit: adopt cloud-init disable_root semantics disable_root now restricts root's authorized_keys instead of setting PermitRootLogin. Reported by: np@ (cherry picked from commit 8ec108914247502dff049059dc60df17920731c8) M libexec/nuageinit/nuage.lua M libexec/nuageinit/nuageinit M libexec/nuageinit/nuageinit.7 M libexec/nuageinit/tests/nuageinit.sh _____________________________________________________________________________________________________________ Commit: 25e5a96773c07df313e03af18146a6ec685ccc93 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=25e5a96773c07df313e03af18146a6ec685ccc93 Author: Baptiste Daroussin (Sun 19 Jul 2026 19:43:31 BST) Committer: Baptiste Daroussin (Mon 7 Sep 2026 05:19:00 BST) m4: import fixes from OpenBSD - gnum4.c: fix m4_warnx() to use vwarnx() instead of warnx() - eval.c: improve error messages for empty macro names - extern.h: remove compute_prevep() declaration - Update OpenBSD version strings MFC After: 3 days (cherry picked from commit 8966cc0d01a29c11168e4e9d7f1703aa31ad3be6) M usr.bin/m4/eval.c M usr.bin/m4/extern.h M usr.bin/m4/gnum4.c M usr.bin/m4/look.c _____________________________________________________________________________________________________________ Commit: 2e9a70840eb8c96533c12ed242491ecad3ccfdfd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2e9a70840eb8c96533c12ed242491ecad3ccfdfd Author: Baptiste Daroussin (Wed 10 Jun 2026 15:41:39 BST) Committer: Baptiste Daroussin (Mon 7 Sep 2026 05:19:00 BST) grep(1): optimize -w/--word-regexp word boundary check The -w option checks word boundaries before and after each potential match by decoding the adjacent character. This was done via the heavyweight sscanf(3) with "%lc", which goes through the full scanf parser and locale-aware mbrtowc(3) machinery even for simple ASCII. Replace with a three-tier fast path: 1. ASCII bytes (< 0x80): simple isalnum(3) / '_' comparison 2. UTF-8 continuation bytes (0x80-0xBF): interior bytes of a multi-byte character are always word characters -> no further decoding needed 3. Multi-byte start bytes (>= 0xC0): decode with mbrtowc(3) directly instead of sscanf(3)/%lc, avoiding scanf parser overhead Benchmark with ministat(1) (10 runs each): Worst-case ASCII (100k lines of 100 'a' chars, -w 'a'): Difference at 95.0% confidence: -15.3% +/- 3.1% Worst-case Unicode (50k lines of 100 accented 'e', -w 'e'): Difference at 95.0% confidence: -11.2% +/- 4.7% Normal -w (500k lines, -w 'the'): Difference at 95.0% confidence: -18.1% +/- 3.6% French text (100k lines, -w accented 'ete'): Difference at 95.0% confidence: -18.0% +/- 4.1% Non -w case shows no regression. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D57587 (cherry picked from commit a74c77cc7bed8dba50e976a7be2aa0094ee27b61) M usr.bin/grep/util.c _____________________________________________________________________________________________________________ Commit: 00681255baff47f5dcb92eff5a520c07e9248e5b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=00681255baff47f5dcb92eff5a520c07e9248e5b Author: Baptiste Daroussin (Fri 12 Jun 2026 13:13:35 BST) Committer: Baptiste Daroussin (Mon 7 Sep 2026 05:19:00 BST) grep: periodic timer-based fflush instead of unconditional per-line flush Replace the unconditional fflush(stdout) in grep_printline and procmatches with a periodic timer that flushes at most once every 100ms. This preserves interactive responsiveness (grep | tee, grep | tail -f) while avoiding 1M+ write(2) syscalls when processing large inputs. The flush interval is tracked via clock_gettime(CLOCK_MONOTONIC) and a static timespec. --line-buffered continues to flush immediately via setlinebuf(3), as before. Benchmark on 1M lines (37MB output to file): unconditional fflush: 1.90s (sys 1.22s) periodic 100ms timer: 0.49s (sys 0.007s) Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D57528 (cherry picked from commit ffe47c424e0a45f5d8d20a5944477821bd946eef) M usr.bin/grep/util.c _____________________________________________________________________________________________________________ Commit: 94fbfda5e8d24eec24353e634c628878f9b7b222 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=94fbfda5e8d24eec24353e634c628878f9b7b222 Author: Abdelkader Boudih (Wed 26 Aug 2026 18:28:54 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:15 BST) intelspi: add Nova Lake SPI controller IDs Add PCI device IDs for Nova Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59013 (cherry picked from commit f22ffd63aa83976251a7b425ac17b8ecb8a80177) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 00cd4b5364c2261829bea52901b6b1474a1d09a0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=00cd4b5364c2261829bea52901b6b1474a1d09a0 Author: Abdelkader Boudih (Wed 26 Aug 2026 18:28:40 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:15 BST) intelspi: add Panther Lake SPI controller IDs Add PCI device IDs for Panther Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59012 (cherry picked from commit 59379461f00c0a7ca1c911c20674510affa6795a) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: fd3fc5e581b02b302d7b098cb9673d11f110129b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fd3fc5e581b02b302d7b098cb9673d11f110129b Author: Abdelkader Boudih (Wed 26 Aug 2026 17:27:07 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:15 BST) intelspi: add Wildcat Lake SPI controller IDs Add PCI device IDs for Wildcat Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59011 (cherry picked from commit eeb02a9c24e9b59295b2cdf09bed955ccbf89a7e) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 7aabce6eb2e70fbaccc3bf610f28d5b47c5161ff URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7aabce6eb2e70fbaccc3bf610f28d5b47c5161ff Author: Abdelkader Boudih (Sat 22 Aug 2026 03:29:30 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:15 BST) intelspi: add Lunar Lake SPI controller IDs Add PCI device IDs for Lunar Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59010 (cherry picked from commit be503dd912a18e5f7eb16c73326562e13681cf49) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: c43e9ec1e705c3572426728b314bccd1d6eafe63 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c43e9ec1e705c3572426728b314bccd1d6eafe63 Author: Abdelkader Boudih (Sat 22 Aug 2026 03:28:40 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:14 BST) intelspi: add Arrow Lake SPI controller IDs Add PCI device IDs for Arrow Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59009 (cherry picked from commit ca1a2bf39614a910c87cbc703df25396fe2bd26b) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 3aa27ee20d3e7887f204cf839c3b2c4393652987 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3aa27ee20d3e7887f204cf839c3b2c4393652987 Author: Abdelkader Boudih (Sat 22 Aug 2026 03:28:05 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:14 BST) intelspi: add Meteor Lake SPI controller IDs Add PCI device IDs for Meteor Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59008 (cherry picked from commit 6d4b45ac5c6c7b01febda0185df420d08f80096b) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 4db9a7e0ea4c87fdc473242d4d2fc428664069a4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4db9a7e0ea4c87fdc473242d4d2fc428664069a4 Author: Abdelkader Boudih (Sat 22 Aug 2026 03:27:22 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:14 BST) intelspi: add Raptor Lake SPI controller IDs Add PCI device IDs for Raptor Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59007 (cherry picked from commit a6d84d04b3f2b570d7fff0835058d14f3bd84d9a) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: aa644ba17ef14d2c054e3f051f7d704511bda757 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=aa644ba17ef14d2c054e3f051f7d704511bda757 Author: Abdelkader Boudih (Sat 22 Aug 2026 03:27:04 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:14 BST) intelspi: add Alder Lake SPI controller IDs Add PCI device IDs for Alder Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59006 (cherry picked from commit 2dd4027c07e91ea5903314411f4bae44f72ca03b) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 85c3651f78908dc6b1436ec3792270e01ef82679 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=85c3651f78908dc6b1436ec3792270e01ef82679 Author: Abdelkader Boudih (Sat 22 Aug 2026 03:26:01 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:14 BST) intelspi: add Elkhart Lake SPI controller IDs Add PCI device IDs for Elkhart Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59005 (cherry picked from commit bdda595a8ea31cb8161e5773139df3cf8785abb7) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 2ab3bf1bed79372b695a3d9dfcbfb59e2bbef1c3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2ab3bf1bed79372b695a3d9dfcbfb59e2bbef1c3 Author: Abdelkader Boudih (Sat 22 Aug 2026 03:25:39 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:14 BST) intelspi: add Tiger Lake SPI controller IDs Add PCI device IDs for Tiger Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59004 (cherry picked from commit 3ff56f81a1a58d708d0101d601e88c289cfc5882) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 72d141107bedde6f73efef6facbcc9a62b418631 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=72d141107bedde6f73efef6facbcc9a62b418631 Author: Abdelkader Boudih (Sat 22 Aug 2026 03:25:24 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:14 BST) intelspi: add Jasper Lake SPI controller IDs Add PCI device IDs for Jasper Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59003 (cherry picked from commit e7db9fa2e10408257541c38b99323a17824c6078) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 6764061f69a5d4312ffa765ae9878a8472642923 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6764061f69a5d4312ffa765ae9878a8472642923 Author: Abdelkader Boudih (Sat 22 Aug 2026 03:24:32 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:13 BST) intelspi: add Ice Lake SPI controller IDs Add PCI device IDs for Ice Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59002 (cherry picked from commit 88919d5ab6c4f611fb2b90d4ff17667072296950) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: ef916b824b9f2913edce2a0217883e6d78bac259 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ef916b824b9f2913edce2a0217883e6d78bac259 Author: Abdelkader Boudih (Sat 22 Aug 2026 03:20:19 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:13 BST) intelspi: add Lakefield SPI controller IDs Add PCI device IDs for Lakefield-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59001 (cherry picked from commit 0b4ff3e1def98c6d804f1e8cc96f3f8eaf4c60bb) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: fba6b7c889fd0a85f37034dbf83aa577fab61664 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fba6b7c889fd0a85f37034dbf83aa577fab61664 Author: Abdelkader Boudih (Fri 21 Aug 2026 17:03:09 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:13 BST) intelspi: add Comet Lake SPI controller IDs Add PCI device IDs for Comet Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D59000 (cherry picked from commit 9fb03dd2f759fa68fadecbab40ae84ec390b3a62) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 0b9937d650fc2878d423b46ed166d7469836c72a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0b9937d650fc2878d423b46ed166d7469836c72a Author: Abdelkader Boudih (Fri 21 Aug 2026 17:02:56 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:13 BST) intelspi: add Cannon Lake SPI controller IDs Add PCI device IDs for Cannon Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58999 (cherry picked from commit 26b921d8bd86d14ddb2441186440f6a6136cc1c1) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 789ff29904ab654761ddfe51d887f5d61110cd1e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=789ff29904ab654761ddfe51d887f5d61110cd1e Author: Abdelkader Boudih (Fri 21 Aug 2026 17:02:40 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:13 BST) intelspi: add Apollo Lake SPI controller IDs Add PCI device IDs for Apollo Lake-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58998 (cherry picked from commit 4c998ff28471e3fbfcf96decbef5a472cd3d0dd1) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 76725edf3297f18503a0df690d608347154d91e8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=76725edf3297f18503a0df690d608347154d91e8 Author: Abdelkader Boudih (Fri 21 Aug 2026 17:02:29 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:13 BST) intelspi: add Broxton SPI controller IDs Add PCI device IDs for Broxton-generation LPSS peripheral SPI controllers. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58997 (cherry picked from commit a3489cc47083b7dd4ddddd6d9c03b7ba33f1271f) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: d20e3fbc5480652b39abfa57e455b9ede979b6a3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d20e3fbc5480652b39abfa57e455b9ede979b6a3 Author: Abdelkader Boudih (Fri 21 Aug 2026 17:02:15 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:12 BST) intelspi: sort PCI ID table by device ID Sort the existing LPSS peripheral SPI controller PCI ID table by numeric device ID so new entries have an unambiguous insertion point. Reviewed by: wulf Differential Revision: https://reviews.freebsd.org/D58996 (cherry picked from commit 728775442c62c6eff1b521c074dcbccde9e70764) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 6dfe4bf3fa45bc924579186e7274bc22310e7d50 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6dfe4bf3fa45bc924579186e7274bc22310e7d50 Author: Abdelkader Boudih (Wed 19 Aug 2026 02:50:37 BST) Committer: Enji Cooper (Sun 6 Sep 2026 22:13:12 BST) intelspi: add Gemini Lake SPI controller PCI IDs Add Gemini Lake LPSS SPI controller PCI IDs (0x31c2, 0x31c4, 0x31c6) to intelspi_pci_devices[]. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58868 (cherry picked from commit 8ddc54f923aec9738c323d2077419b17ba4a1226) M sys/dev/intel/spi_pci.c _____________________________________________________________________________________________________________ Commit: 2ea3ea61182f74268844bb1e2816c107c3d63cd2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2ea3ea61182f74268844bb1e2816c107c3d63cd2 Author: Christian Weisgerber (Sun 6 Sep 2026 21:06:17 BST) Committer: Christian Weisgerber (Sun 6 Sep 2026 21:06:17 BST) stty(1): list DISCARD control character (cherry picked from commit da8b3e70abecdb038eac87086748899a04b29636) M bin/stty/stty.1 _____________________________________________________________________________________________________________ Commit: 4c84a6a29ce697fe91b6dc124d031a4b3cd2ece4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4c84a6a29ce697fe91b6dc124d031a4b3cd2ece4 Author: Alexander Leidinger (Sun 30 Aug 2026 10:45:02 BST) Committer: Alexander Leidinger (Sun 6 Sep 2026 11:00:44 BST) rc.subr tests: service jail behaviour of run_rc_command Twenty cases over where each rc option and each method executes for a jailed service, the jail's lifetime, and the svcj option handling. Each case drives the service inside a chroot built in its ATF work directory. MFC after: 1 week MFC to: stable/15 Assisted-by: Claude Code (Opus 5) (cherry picked from commit b5dcd8f9d6ae702adbc1627839b5235a28839370) M libexec/rc/tests/Makefile A libexec/rc/tests/svcj_test.sh _____________________________________________________________________________________________________________ Commit: f1cc2f565739f5b142bead88ef8e5ee9d74407cd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f1cc2f565739f5b142bead88ef8e5ee9d74407cd Author: Alexander Leidinger (Sun 30 Aug 2026 10:45:01 BST) Committer: Alexander Leidinger (Sun 6 Sep 2026 10:58:47 BST) rc.conf.5: note that a negative nice value does not reach a service jail Raising a process' priority is not permitted inside a jail, and nice(1) warns and executes the command anyway, so the service comes up at its login class priority. Not changing the date, as a commit a moment before this, one changed it already. MFC after: 1 week MFC to: stable/15 (cherry picked from commit be834d62e990b58eb2e67ce9b48b635b645dcea1) M share/man/man5/rc.conf.5 _____________________________________________________________________________________________________________ Commit: af97285a6726dbc321250ae61a91ceb237ba07b5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=af97285a6726dbc321250ae61a91ceb237ba07b5 Author: Alexander Leidinger (Sun 30 Aug 2026 10:44:59 BST) Committer: Alexander Leidinger (Sun 6 Sep 2026 10:58:47 BST) rc.subr: svcj - add a setaudit option setaudit(8) is prefixed to the command inside the jail when ${name}_audit_user is set, and needs allow.setaudit. This is not added automatically when ${name}_audit_user is set, this needs an administrative setting of the options on purpose. MFC after: 1 week MFC to: stable/15 (cherry picked from commit 9125bc0727dbbf82b1c6a5f7c380f7b8c27b74dd) M libexec/rc/rc.subr M share/man/man5/rc.conf.5 _____________________________________________________________________________________________________________ Commit: f74c4cb8a2eda2c1cc4d3946571e417638447b1a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f74c4cb8a2eda2c1cc4d3946571e417638447b1a Author: Alexander Leidinger (Sun 30 Aug 2026 10:44:58 BST) Committer: Alexander Leidinger (Sun 6 Sep 2026 10:58:46 BST) rc.subr: svcj - run a service's own restart and status methods in its jail A script that defines non-default restart_cmd or status_cmd should execute them in the service jail. Where there is no jail to enter, restart starts the service instead of failing. Fixes: 2efbd480f1d3 rc: add service jails framework MFC after: 1 week MFC to: stable/15 Assisted-by: Claude Code (Opus 5) (cherry picked from commit 327dae5081059eb97af0cf319a444b3937ff4db2) M libexec/rc/rc.subr _____________________________________________________________________________________________________________ Commit: 37a4bc18181071f5ef72ccd949f8556866f2cbb2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=37a4bc18181071f5ef72ccd949f8556866f2cbb2 Author: Alexander Leidinger (Sun 30 Aug 2026 10:44:57 BST) Committer: Alexander Leidinger (Sun 6 Sep 2026 10:58:45 BST) rc.subr: svcj - remove the service jail when the service is not running A service whose tracked process had died while another process of its own kept the jail alive, therefore left svcj-${name} behind, and the next start would fail. Fixes: 2efbd480f1d3 rc: add service jails framework MFC after: 1 week MFC to: stable/15 Assisted-by: Claude Code (Opus 5) (cherry picked from commit a70ca1ebd8add7ea99b5674de715ae5fbf389dce) M libexec/rc/rc.subr _____________________________________________________________________________________________________________ Commit: 2c9ed2b6a129d25850069c3ad75ce696c92f6212 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2c9ed2b6a129d25850069c3ad75ce696c92f6212 Author: Alexander Leidinger (Sun 30 Aug 2026 10:44:55 BST) Committer: Alexander Leidinger (Sun 6 Sep 2026 10:58:44 BST) rc.subr: svcj - let svcj_all_enable enable service jails Fix the logic for svcj_all_enable. Fixes: 2efbd480f1d3 rc: add service jails framework MFC after: 1 week MFC to: stable/15 (cherry picked from commit 21e53eeaffcac0be3427b7edb3b8739344a65174) M libexec/rc/rc.conf M libexec/rc/rc.subr _____________________________________________________________________________________________________________ Commit: e48af5f995662d6df7625e30704e46bc77e613d6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e48af5f995662d6df7625e30704e46bc77e613d6 Author: Jochen Neumeister (Sun 30 Aug 2026 10:44:54 BST) Committer: Alexander Leidinger (Sun 6 Sep 2026 10:58:26 BST) rc.subr: svcj - send the stop signal from inside the service jail A service running under ${name}_user was signalled from the host as that user, which the parent of a jail may no longer do: since 8a5ceebece03 an unprivileged process would need allow.unprivileged_parent_tampering. Stop and reload therefore failed and left both the service and its jail running. MFC after: 1 week MFC to: stable/15 (cherry picked from commit 6155e17019f6ae08c74913b7ffb9312434f33a9f) M libexec/rc/rc.subr _____________________________________________________________________________________________________________ Commit: 792307d8c31aae4e1fe2be945561d64f0d38e6bb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=792307d8c31aae4e1fe2be945561d64f0d38e6bb Author: Kevin Bowling (Thu 6 Aug 2026 09:22:37 BST) Committer: Kevin Bowling (Sun 6 Sep 2026 02:20:42 BST) amd_iommu: Bound IVHD device-entry parsing Validate the IVRS table and every subtable length before using either to form iterator bounds. Reject truncated typed IVHD blocks instead of passing them to a type-specific callback. Within each IVHD payload, correct the lower-bound comparison for extended range entries and validate fixed-size entries, paired range terminators, the fixed HID body, and the variable HID UID before dereferencing or advancing. Malformed firmware can no longer drive either iterator beyond its enclosing object. Reviewed by: kib Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D58724 (cherry picked from commit 4a2494d76ad03c755f2cb0ed5e1311b03bb2a8e2) M sys/x86/iommu/amd_drv.c _____________________________________________________________________________________________________________ Commit: 1b08c8a080c6c708227b33ea25723c6a1a97ed8b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1b08c8a080c6c708227b33ea25723c6a1a97ed8b Author: Kevin Bowling (Mon 10 Aug 2026 17:01:45 BST) Committer: Kevin Bowling (Sun 6 Sep 2026 02:20:30 BST) ixgbe: Probe additional controller variants The shared base code already selects and configures the 82598 BX, 82599 KR, 82599 SFP Express Module, X552 XFI, X553 QSFP, and X553 N QSFP device IDs, but the FreeBSD probe table omits them while DPDK lists them. Sponsored by: BBOX.io (cherry picked from commit 27f0491e3648722a892558416a768dda77850ad9) M sys/dev/ixgbe/if_ix.c _____________________________________________________________________________________________________________ Commit: 589235de1fd5f97f952daec530db75d841d253bb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=589235de1fd5f97f952daec530db75d841d253bb Author: Kevin Bowling (Sun 16 Aug 2026 06:49:56 BST) Committer: Kevin Bowling (Sun 6 Sep 2026 02:20:18 BST) igb: Report 82580 memory ECC errors 82580 exposes clear-on-read, saturating corrected error counters for the receive and transmit packet buffers. Its two PCIe command memories expose RW1C indications for uncorrectable ECC errors. Sample the packet buffer counters and PCIe indications from the regular hardware statistics update. Fatal recovery samples the PCIe indications from the serialized admin path rather than the interrupt filter. Thus, either the regular statistics pass or recovery reads and clears each indication, but they cannot both account it. Also preserve indications observed while initialization is completing. Expose the exact packet buffer error total and observed PCIe command memory indications under the memory_errors sysctl node. Multiple PCIe errors between samples can collapse into one indication per memory. Validated on an Intel I340-T2 (82580, revision 1). A clean boot and three down/up cycles left the packet-buffer, PCIe, and region-specific counters at zero. Synthetic ICS.FER events advanced fatal_unknown and fatal_resets exactly once on the targeted function without changing the sibling or ECC counters. The 82580 datasheet exposes no ECC or parity error injection register, so corrected packet buffer and PCIe ECC accounting could not be forced independently. Sponsored by: BBOX.io (cherry picked from commit 915c628c4f49b267c8a713b79c4a8b157092d717) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 5aceda203b2812d1e1ba7ddcb3b1670b657f9b9d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5aceda203b2812d1e1ba7ddcb3b1670b657f9b9d Author: Kevin Bowling (Sun 16 Aug 2026 06:48:58 BST) Committer: Kevin Bowling (Sun 6 Sep 2026 02:19:53 BST) e1000: Recover from 82580 memory errors 82580 reports fatal parity and uncorrectable ECC errors through ICR.FER and its four region PEIND hierarchy. Region specific status registers identify PCIe, DMA transmit, DMA receive, DMA host, and LAN port memories that can leave traffic stopped. Enable the documented DMA, PCIe, packet-buffer, and host-owned LAN parity and ECC checks only after initializing queue and filter tables. Leave the flexible filter parity controls under management firmware ownership. Capture read-clear and RW1C status in the interrupt filter and keep FER masked until the admin task resolves the event. Reset for a host-owned region or an unknown FER source. Leave management-only recovery to firmware. Use CTRL.RST before master disable because fatal 82580 memory errors can stop PCIe traffic. Do not use CTRL.DEV_RST: specification update item 9 declares that bit reserved and says it must always be written as zero. Wait for EEPROM auto read completion; STATUS bit 21 is reserved on 82580, not PF_RST_DONE. Validated on an Intel I340-T2 (82580, revision 1). A one queue port programmed LANPERRCTL as 0x6e00 while a four-queue port programmed 0x7e00, avoiding the RSS checker until RETA is initialized. Both ports programmed PEINDM 0xf, DTPARC 0x1555, DRPARC and DDPARC 0x55, PCIEERRCTL 0x5555, and PCIEECCCTL 0x11. Three down/up cycles left all status and counters clear. A synthetic ICS.FER event on each function caused exactly one unknown source reset without advancing the sibling function counters. Controls were restored, the linked port recovered carrier, and bidirectional traffic after recovery. Enabling flexible filter parity checkers before programming their memories produced genuine LAN region faults with LANPERRSTS bits 0 and 1. Each fault advanced fatal_lan and fatal_resets exactly once, left the sibling function unchanged, and recovered the port proving hardware events will trigger the intended recovery. Sponsored by: BBOX.io (cherry picked from commit 5e56a1fb09cd3cc2081978dd6508ff5bc7c59eca) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/e1000_regs.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: e8c1931941cb57a7ea07bfc53b0a52f491be4b22 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e8c1931941cb57a7ea07bfc53b0a52f491be4b22 Author: Fernando Apesteguía (Wed 6 May 2026 11:03:15 BST) Committer: Fernando Apesteguía (Sat 5 Sep 2026 19:26:09 BST) mixer: Improve error messages Use better diagnostic messages when unit numbers are wrong. Reviewed by: arrowd@, christos@, kevans@ Approved by: christos@ Differential Revision: https://reviews.freebsd.org/D56845 (cherry picked from commit 9f5cfe625e9e8153599105458650e5fcecfd6281) M usr.sbin/mixer/mixer.c _____________________________________________________________________________________________________________ Commit: 3557da0355326ca1266d152c9df00a46bbb7ea92 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3557da0355326ca1266d152c9df00a46bbb7ea92 Author: Christos Margiolis (Sat 22 Aug 2026 13:48:32 BST) Committer: Christos Margiolis (Sat 5 Sep 2026 13:29:22 BST) bhyve: Do not panic on invalid input in HDA emulation The emulated HDA controller passed values taken from guest registers and from guest memory straight into assert(), so a guest could abort bhyve with values the emulation did not expect. Reject them instead. In case the guest asked to start something and it failed, clear the corresponding run/enable bit. PR: 256379, 256381, 256382, 256383, 256384, 256385, 256386, 256498 Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Reviewed by: bnovkov, jhb Differential Revision: https://reviews.freebsd.org/D59082 (cherry picked from commit f4d953bea74091874f019e3a2c4902dd013ee739) M usr.sbin/bhyve/pci_hda.c _____________________________________________________________________________________________________________ Commit: 8ab5624f401c4830e0bbbe9f5287fc1a14d4864c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8ab5624f401c4830e0bbbe9f5287fc1a14d4864c Author: Olivier Cochard (Wed 5 Aug 2026 21:46:10 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 03:24:50 BST) tests/sys/kern: Skip capsicum procdesc tests when capability mode is unavailable (cherry picked from commit 3c5c55beee5ef80d8a9526480682cee86cbac584) M tests/sys/kern/Makefile M tests/sys/kern/pdwait.c M tests/sys/kern/procdesc.c _____________________________________________________________________________________________________________ Commit: c41e308ef27bda0b8149931923c6721aa321aad9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c41e308ef27bda0b8149931923c6721aa321aad9 Author: Konstantin Belousov (Sun 23 Aug 2026 21:53:00 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:46 BST) tty: gracefully handle proctree_lock locking (cherry picked from commit 420428718da769ea72d3f18ed8eba7c3d998b1c8) M sys/kern/tty.c M sys/kern/tty_pts.c M sys/sys/tty.h _____________________________________________________________________________________________________________ Commit: 2469f84bec79b090b261a6b075c76304541e2070 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2469f84bec79b090b261a6b075c76304541e2070 Author: Gleb Popov (Mon 3 Aug 2026 20:23:11 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:46 BST) kern/tty.c: Exterrorize returns (cherry picked from commit 62ccaec3dba6272590d97cc0aa0df28fd3d08d1c) M lib/libc/gen/exterr_cat_filenames.h M sys/kern/tty.c M sys/sys/exterr_cat.h _____________________________________________________________________________________________________________ Commit: 5362192f9df36eafa45d889a237778f1045707e6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5362192f9df36eafa45d889a237778f1045707e6 Author: Konstantin Belousov (Mon 24 Aug 2026 15:18:35 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:46 BST) tty: make tty_wait_background() aware of proctree_lock ownership (cherry picked from commit 824f934bf9d5fcb34dd6c97d650a26823158abf1) M sys/kern/tty.c M sys/kern/tty_ttydisc.c M sys/sys/tty.h _____________________________________________________________________________________________________________ Commit: a58557090670d61358b97eab285dcbde2402ad97 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a58557090670d61358b97eab285dcbde2402ad97 Author: Konstantin Belousov (Tue 25 Aug 2026 09:19:32 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:45 BST) tty: add tty_wait_proctree(9) (cherry picked from commit 9bd3fe5712217ef8ae4cebba8be82c45be0c72e6) M sys/kern/tty.c _____________________________________________________________________________________________________________ Commit: 124ccedff25e9a19c4203fb72ba5e0bd646595a8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=124ccedff25e9a19c4203fb72ba5e0bd646595a8 Author: Konstantin Belousov (Tue 25 Aug 2026 09:23:47 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:45 BST) condvar.9: document cv_wait_sig_unblock(9) (cherry picked from commit a15c71254afa25ce008334d63fb6feecd68605f8) M share/man/man9/condvar.9 _____________________________________________________________________________________________________________ Commit: 3867241ba06304309f014e7480a2481774660820 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3867241ba06304309f014e7480a2481774660820 Author: Konstantin Belousov (Tue 25 Aug 2026 09:18:35 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:44 BST) condvars(9): add cv_wait_sig_unlock() (cherry picked from commit 0cc6c442964d6294b796537522d9e462656bf16f) M sys/kern/kern_condvar.c M sys/sys/condvar.h _____________________________________________________________________________________________________________ Commit: 5b10e1c349f99ea56eafbceb95828a058f2102ea URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5b10e1c349f99ea56eafbceb95828a058f2102ea Author: Konstantin Belousov (Mon 31 Aug 2026 00:46:27 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:44 BST) tests/sys/kern/procdesc.c: mark grandchild var in pdopenpid_capmode() as volatile (cherry picked from commit b3734c1386dd2b0ade1a7f20d9ebf5f62c01819e) M tests/sys/kern/procdesc.c _____________________________________________________________________________________________________________ Commit: 2fbb853ec71e71bfa6e6194781ffc66f1fde9968 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2fbb853ec71e71bfa6e6194781ffc66f1fde9968 Author: Konstantin Belousov (Fri 28 Aug 2026 09:37:19 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:44 BST) sys/tests/kern/pdopenpid: pdopenpid(2) is allowed in cap mode (cherry picked from commit ddf62c83fc0aca39a1bfd8346ad6e925bfb2290e) M tests/sys/kern/procdesc.c _____________________________________________________________________________________________________________ Commit: 201fd5bc466185321d7fdfc4d49cc7f784095863 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=201fd5bc466185321d7fdfc4d49cc7f784095863 Author: Konstantin Belousov (Wed 8 Jul 2026 00:51:15 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:43 BST) pdfork.2: document cap mode, namely pdopenpid(2) and pdptrace(2) errors (cherry picked from commit 1ac08a43cf657564ebc2e036434e89552a6d3829) M lib/libsys/pdfork.2 M lib/libsys/ptrace.2 _____________________________________________________________________________________________________________ Commit: 665a5f0f45846c27e6fd253b4adbe5b6193cecb8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=665a5f0f45846c27e6fd253b4adbe5b6193cecb8 Author: Konstantin Belousov (Mon 13 Jul 2026 15:00:47 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:43 BST) Regen M sys/compat/freebsd32/freebsd32_sysent.c M sys/kern/init_sysent.c _____________________________________________________________________________________________________________ Commit: fe56ee28349cbc8e35c898864077aa844a155e61 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fe56ee28349cbc8e35c898864077aa844a155e61 Author: Konstantin Belousov (Tue 1 Sep 2026 23:14:58 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:43 BST) ptrace(2): allow ptrace(PT_TRACE_ME) in cap mode (cherry picked from commit c8f8d00c2422bf7eca71b7b41e9d586ca25c4b8a) M sys/kern/sys_process.c _____________________________________________________________________________________________________________ Commit: c09ee2f0cca6b7ce34d98dc8cc31cafa34fb9322 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c09ee2f0cca6b7ce34d98dc8cc31cafa34fb9322 Author: Konstantin Belousov (Fri 28 Aug 2026 18:54:02 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:42 BST) pdopenpid(2): in cap mode, translate all errors from pdopenpid1() to ECAPMODE (cherry picked from commit 326ab530dcabe70ab48728cad0465f35b30dbf60) M sys/kern/sys_procdesc.c _____________________________________________________________________________________________________________ Commit: 74145b2f9f980ea1c8f455f6b97d5a88e0564dc9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=74145b2f9f980ea1c8f455f6b97d5a88e0564dc9 Author: Konstantin Belousov (Wed 8 Jul 2026 00:46:56 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:42 BST) pdopenpid(2): allow in capability mode with restrictions (cherry picked from commit 73c92a978ccef5e1683914510ea35e6e338646d1) M sys/kern/sys_procdesc.c M sys/kern/syscalls.master _____________________________________________________________________________________________________________ Commit: 1cab7e212476174fc749627cc5114ebaf3f92590 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1cab7e212476174fc749627cc5114ebaf3f92590 Author: Konstantin Belousov (Wed 8 Jul 2026 00:46:56 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:41 BST) pdptrace(2): allow debugging in capability mode (cherry picked from commit 7006cb7bd22d07d2ce30b0fb7ebfe58771b2a32f) M sys/compat/freebsd32/freebsd32_misc.c M sys/kern/sys_process.c M sys/kern/syscalls.master _____________________________________________________________________________________________________________ Commit: 5e9d42f6aa710d71d1c054fa34e984d37447a850 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5e9d42f6aa710d71d1c054fa34e984d37447a850 Author: Konstantin Belousov (Tue 14 Jul 2026 17:59:17 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:41 BST) kern: add p_canopen() (cherry picked from commit 68d4b311270ecca80bbb887a5e502e2caacebc98) M sys/kern/kern_prot.c M sys/kern/sys_process.c M sys/sys/proc.h M sys/sys/ptrace.h _____________________________________________________________________________________________________________ Commit: 547bce66c47788f76720c3e7fd873a7f6424e3a5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=547bce66c47788f76720c3e7fd873a7f6424e3a5 Author: Konstantin Belousov (Sun 23 Aug 2026 00:04:32 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:41 BST) ptrace.2: document PT_GET_ABI_NAME (cherry picked from commit 3dfd63b58463e8982af2e45fc6dc1d5b03a88535) M lib/libsys/ptrace.2 _____________________________________________________________________________________________________________ Commit: 39321b7a14620485f1fd9ff7b769398cfda2dfdb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=39321b7a14620485f1fd9ff7b769398cfda2dfdb Author: Konstantin Belousov (Sat 22 Aug 2026 23:53:14 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:40 BST) ptrace(2): add PT_GET_ABI_NAME request (cherry picked from commit 6b9ef5dfc903c29e1d23bb6369b762251f2608f7) M sys/compat/freebsd32/freebsd32_misc.c M sys/kern/sys_process.c M sys/sys/ptrace.h _____________________________________________________________________________________________________________ Commit: bba959f73e52e284432b2a9569ce2f6f386d502d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bba959f73e52e284432b2a9569ce2f6f386d502d Author: Konstantin Belousov (Fri 28 Aug 2026 09:35:54 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:40 BST) tests/sys/kern/pdwait: adjust test for the addition of CAP_PTRACE (cherry picked from commit 5f5910ba3826435391d3e5b9ba9155376ec0b39d) M tests/sys/kern/pdwait.c _____________________________________________________________________________________________________________ Commit: 48e709bbbda209d46183a42e74b4dd1bda5ec12f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=48e709bbbda209d46183a42e74b4dd1bda5ec12f Author: Konstantin Belousov (Sun 19 Jul 2026 23:56:32 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:40 BST) pdfork.2, rights.4: document pdptrace(2), CAP_PTRACE, and pdfork(PD_PTRACE_CAP) (cherry picked from commit 45633600acade39cccc3b8daace7b3aeeb1f5b07) M lib/libsys/pdfork.2 M lib/libsys/ptrace.2 M share/man/man4/rights.4 _____________________________________________________________________________________________________________ Commit: c3d0110e12f053277ad9e22ac38b321bc0a261fe URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c3d0110e12f053277ad9e22ac38b321bc0a261fe Author: Konstantin Belousov (Fri 21 Aug 2026 10:39:34 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:39 BST) Regen M lib/libsys/_libsys.h M lib/libsys/syscalls.map M sys/compat/freebsd32/freebsd32_proto.h M sys/compat/freebsd32/freebsd32_syscall.h M sys/compat/freebsd32/freebsd32_syscalls.c M sys/compat/freebsd32/freebsd32_sysent.c M sys/compat/freebsd32/freebsd32_systrace_args.c M sys/kern/init_sysent.c M sys/kern/syscalls.c M sys/kern/systrace_args.c M sys/sys/syscall.h M sys/sys/syscall.mk M sys/sys/sysproto.h _____________________________________________________________________________________________________________ Commit: fbf7d1651e9abe2f34c545d9f7f891c41ad236b0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fbf7d1651e9abe2f34c545d9f7f891c41ad236b0 Author: Konstantin Belousov (Fri 21 Aug 2026 10:42:54 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:39 BST) lib/libsys: export pdptrace(2) (cherry picked from commit 6d17a04fc61c63182809dd41515e6a2c4aa0de63) M lib/libsys/Symbol.sys.map M sys/sys/procdesc.h _____________________________________________________________________________________________________________ Commit: 74883c24a04ac0cdf7facd8b80ec536d50ee8c4c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=74883c24a04ac0cdf7facd8b80ec536d50ee8c4c Author: Konstantin Belousov (Sun 19 Jul 2026 22:33:54 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:38 BST) Add pdptrace(2) (cherry picked from commit f8c0616052e2befaf7271fa82b212ff34a7913af) M sys/compat/freebsd32/freebsd32_misc.c M sys/kern/sys_process.c M sys/kern/syscalls.master M sys/sys/ptrace.h _____________________________________________________________________________________________________________ Commit: f83c2423ce0f24ff68cf12da01419c4ab09ad4ca URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f83c2423ce0f24ff68cf12da01419c4ab09ad4ca Author: Konstantin Belousov (Sun 19 Jul 2026 22:33:54 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:38 BST) ptrace: split sys_ptrace()/freebsd32_ptrace() (cherry picked from commit 9cea869940f197d558f640b6851d44a213be9e8a) M sys/compat/freebsd32/freebsd32_misc.c M sys/kern/sys_process.c M sys/sys/ptrace.h _____________________________________________________________________________________________________________ Commit: 06259de78fa0e3a5799f42a0c6e92f52857a257b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=06259de78fa0e3a5799f42a0c6e92f52857a257b Author: Konstantin Belousov (Fri 21 Aug 2026 10:50:49 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:38 BST) sys/bsm/audit_kevents.h: add AUE_PDPTRACE (cherry picked from commit b2f300ee8fc03a05376e1c28a625d701f6d3e0ce) M sys/bsm/audit_kevents.h _____________________________________________________________________________________________________________ Commit: 73e3e21d32855569fe1315f739746e9e321c7c4a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=73e3e21d32855569fe1315f739746e9e321c7c4a Author: Konstantin Belousov (Wed 8 Jul 2026 00:46:56 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:38 BST) pdfork(2): add PD_PTRACE_CAP flag (cherry picked from commit e8c313204887e7ba47b5c349acbe37d64a3162a1) M sys/kern/kern_fork.c M sys/kern/sys_procdesc.c M sys/sys/procdesc.h _____________________________________________________________________________________________________________ Commit: 34bc2da3ac66f3a1890c9a70713a1c6c8ee3f879 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=34bc2da3ac66f3a1890c9a70713a1c6c8ee3f879 Author: Konstantin Belousov (Wed 8 Jul 2026 00:46:28 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:37 BST) capsicum: add CAP_PTRACE (cherry picked from commit 5f82dd8e91610ceafe7ddbc702d97ffe7573f53f) M sys/kern/subr_capability.c M sys/sys/caprights.h M sys/sys/capsicum.h _____________________________________________________________________________________________________________ Commit: 2eff633de3b36b1188676e46edafd0a266520fc3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2eff633de3b36b1188676e46edafd0a266520fc3 Author: Konstantin Belousov (Wed 8 Jul 2026 18:18:51 BST) Committer: Konstantin Belousov (Sat 5 Sep 2026 01:33:37 BST) kern/kern_descrip.c: export filecaps_fill() (cherry picked from commit 8c911d9a9890128ef8f20ead1748ffcbd9f24577) M sys/kern/kern_descrip.c M sys/sys/filedesc.h _____________________________________________________________________________________________________________ Commit: 23621baf099d7ace6cb6445cab9ca6a811f25e80 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=23621baf099d7ace6cb6445cab9ca6a811f25e80 Author: Kevin Bowling (Sat 22 Aug 2026 04:14:37 BST) Committer: Kevin Bowling (Sat 5 Sep 2026 01:29:55 BST) pci: Expose a VF's owning PF to bus subclasses ofw_pcibus now uses pci_iov_get_pf() to inherit PF locality for VFs, but the accessor was inadvertently left in an uncommited ACPI change. This breaks powerpc builds. Expose the accessor from the PCI core and provide a stub when PCI_IOV is omitted. Record VF ownership before pci_add_child() so child added callbacks can safely query it, and remove the later redundant assignment. Sponsored by: BBOX.io (cherry picked from commit 3481a9cdc4dc26ef583bb0f46a04d5d059cde466) M sys/dev/pci/pci.c M sys/dev/pci/pci_iov.c M sys/dev/pci/pci_private.h _____________________________________________________________________________________________________________ Commit: 0b94a7648ff989095ee29e1ca8031b05b27f2d15 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0b94a7648ff989095ee29e1ca8031b05b27f2d15 Author: Kevin Bowling (Sat 22 Aug 2026 02:24:28 BST) Committer: Kevin Bowling (Sat 5 Sep 2026 01:29:29 BST) e1000: Limit the TSO sentinel to lem(4) controllers The TSO workaround splits the final DMA segment to create a four byte sentinel descriptor. Intel documents the premature descriptor writeback erratum and this workaround in the 82540EP and 82545GM specification updates (erratum 3) and the 82546GB specification update (erratum 1). Limit the workaround and its preceding TSO state to the legacy PCI and PCI-X controllers so PCIe controllers retain their natural descriptor layout using one fewer descriptor per TSO packet, no split of the final segment, and one less four byte DMA. Sponsored by: BBOX.io (cherry picked from commit 2a7af8ebcf90af83f01f9523b25bfc6e58c7b809) M sys/dev/e1000/em_txrx.c _____________________________________________________________________________________________________________ Commit: 6878cf03baab0a647bf68186333c7a6037026e30 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6878cf03baab0a647bf68186333c7a6037026e30 Author: Kevin Bowling (Fri 21 Aug 2026 04:08:13 BST) Committer: Kevin Bowling (Sat 5 Sep 2026 01:29:17 BST) ofw_pcibus: Honor device proximity for DMA tags BUS_GET_DOMAIN can report a PCI function's firmware locality, including an SR-IOV VF's inherited PF locality, but ordinary OFW PCI functions still use the shared bus DMA tag. Consequently, busdma metadata and coherent memory can be allocated from the bus's domain instead of the function's domain. Create and cache a child tag for each function that requests a DMA tag and apply its reported domain without modifying the shared parent tag. Apply the same domain to the private IOMMU tag already created by the pSeries PCI bus. Destroy cached tags when PCI children are removed so VF create and destroy cycles do not leak them. Reviewed by: PowerPC (jhibbits) Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59065 (cherry picked from commit df6bbc9b17dcb75e220b9ab44f5a6483b47c562e) M sys/powerpc/ofw/ofw_pcibus.c M sys/powerpc/pseries/plpar_pcibus.c _____________________________________________________________________________________________________________ Commit: 985a4791a80c433ebd211e5e0aadbf109df11e1f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=985a4791a80c433ebd211e5e0aadbf109df11e1f Author: Kevin Bowling (Fri 21 Aug 2026 03:45:33 BST) Committer: Kevin Bowling (Sat 5 Sep 2026 01:29:04 BST) ofw_pcibus: Inherit PF locality for SR-IOV VFs PCI VFs are allocated dynamically and have no corresponding OFW node. The zero-filled OFW PCI devinfo currently leaves obd_node as 0, which is not the invalid-node sentinel and can send NUMA lookup through an unrelated firmware node. Initialize dynamically allocated devinfo with an invalid OFW node. For VF locality queries, use the owning PF's node when it exists. Fall back to the PCI bus when neither the VF nor PF has a firmware node. This preserves existing CPU-locality behavior for ordinary PCI devices while making VF domain and interrupt placement follow their PF. Reviewed by: PowerPC (jhibbits) Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D59064 (cherry picked from commit f003e86335c9c16c6769ef8f0c091d425dba7ef9) M sys/powerpc/ofw/ofw_pcibus.c _____________________________________________________________________________________________________________ Commit: 6f16db3a09536c3bd18ca4c967bd8f048920f001 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6f16db3a09536c3bd18ca4c967bd8f048920f001 Author: Abdelkader Boudih (Mon 17 Aug 2026 04:12:00 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:01 BST) asmc: prefer MMIO backend over PIO when both are present T2, T1, and some pre-T1 Macs advertise a legacy PIO range in the SMC ACPI _CRS alongside a live MMIO window, but the silicon behind the PIO range is bogus. Try MMIO first, validate via LDKN >= 2, fall back to PIO if that fails or no MMIO resource is present. Drop "(T2)" from the backend message since MMIO isn't T2-exclusive. MFC: 1 week Reviewed by: ngie Differential Revision: https://reviews.freebsd.org/D58839 (cherry picked from commit 37826269b41b46c72264191d35b09baf24e055b9) M sys/dev/asmc/asmc.c M sys/dev/asmc/asmcmmio.c _____________________________________________________________________________________________________________ Commit: 9c9a06e0c0953caa58da9486298bd6aaa99b405e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9c9a06e0c0953caa58da9486298bd6aaa99b405e Author: Abdelkader Boudih (Wed 1 Jul 2026 01:15:51 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:01 BST) asmc: deduplicate sensor converters and cause sysctls Replace per-type spXX_to_milli() functions with a table-driven asmc_sensor_convert() that looks up the divisor by SMC type string. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57854 (cherry picked from commit 126f82a3eb613976f477aa8326a208459f60465d) M sys/dev/asmc/asmc.c _____________________________________________________________________________________________________________ Commit: 4fb3fae62393f02b21e499b2c0cbb28b5a7089ac URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4fb3fae62393f02b21e499b2c0cbb28b5a7089ac Author: Abdelkader Boudih (Wed 1 Jul 2026 01:15:24 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:01 BST) asmc: add system state and board identity sysctls Add dev.asmc.0.system subtree with read-only sysctls for SMC diagnostic and identity keys: shutdown_cause (MSSD), sleep_cause (MSSP), thermal_status (MSAL), time_of_day (CLKT), power_state (MSPS), board_id (RPlt), and chip_gen (RGEN). Each sysctl is registered only if the key exists on the hardware. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57853 (cherry picked from commit 6a1bd5212f290933d1429a6d4787394ee53e3181) M sys/dev/asmc/asmc.c M sys/dev/asmc/asmcvar.h _____________________________________________________________________________________________________________ Commit: b6fb80014c4660d51712bcc375d0154bf76912f7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b6fb80014c4660d51712bcc375d0154bf76912f7 Author: Abdelkader Boudih (Wed 1 Jul 2026 01:13:42 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:01 BST) asmc: try PIO before MMIO to avoid false T2 detection Add hw.asmc.system-state and hw.asmc.board-id read-only sysctls to expose the T2 system state register and Mac board identifier via SMC. Try PIO access before MMIO during probe to prevent false T2 detection on Macs that happen to have something mapped at the T2 BAR address. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57844 (cherry picked from commit bb1e071be47fa03accadace587784c85654de91e) M sys/dev/asmc/asmc.c M sys/dev/asmc/asmcmmio.c M sys/dev/asmc/asmcvar.h _____________________________________________________________________________________________________________ Commit: c4595b2f9590f082310ab8c9b03b641bd56bf44b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c4595b2f9590f082310ab8c9b03b641bd56bf44b Author: Abdelkader Boudih (Thu 25 Jun 2026 03:06:34 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:01 BST) asmc: Refactor sensor detection and sysctl registration Replace repeated per-sensor-type blocks for voltage, current, power, and ambient light sensors with table-driven loops. Reviewed by: ngie, adrian Differential Revision: https://reviews.freebsd.org/D57595 (cherry picked from commit 104b311a03e45ebb8fd7a93e4ac26644bbae9bae) M sys/dev/asmc/asmc.c _____________________________________________________________________________________________________________ Commit: f79bf36c37d5ab29a1feafcddb9e8277f45fe4e4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f79bf36c37d5ab29a1feafcddb9e8277f45fe4e4 Author: Abdelkader Boudih (Sun 14 Jun 2026 21:55:12 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:01 BST) asmc: fix asmc_key_dump() page fault on T2 MMIO backend asmc_key_dump() used I/O port macros (ASMC_DATAPORT_WRITE/READ, asmc_command()) unconditionally. On T2 Macs, sc_ioport is NULL (MMIO backend is used instead), causing a page fault when ASMC_DEBUG triggers asmc_dumpall() during attach. Add an MMIO guard at the top of asmc_key_dump(): delegate to asmc_key_dump_by_index() + asmc_key_read() for MMIO devices, consistent with the rest of the T2 code paths. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D56748 (cherry picked from commit e37e49bfaa2763f0ce522a3e54de9b494e346465) M sys/dev/asmc/asmc.c _____________________________________________________________________________________________________________ Commit: da7f30bc7487a13945779cb691b4653e8cde8a9c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=da7f30bc7487a13945779cb691b4653e8cde8a9c Author: Abdelkader Boudih (Wed 3 Jun 2026 06:57:49 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:00 BST) asmc: add MMIO backend for T2 Macs T2 Macs (2018+) expose the SMC via memory-mapped registers instead of I/O ports. Add asmcmmio.c/asmcmmio.h implementing the MMIO transport: key read/write, getinfo, getbyindex, and a poll-based wait with exponential backoff. The driver probes for MMIO at attach time by checking the LDKN firmware version key; if MMIO is available it is used, otherwise the standard I/O port backend is used. T2 fan speeds use IEEE 754 floats instead of fpe2 fixed-point. Per-fan manual mode uses F%dMd keys instead of the FS! bitmask. Battery charge limit is exposed via dev.asmc.N.battery_charge_limit. Tested on: MacBookPro16,2 (A2251, iBridge2,10) MacBookPro15,4 (A2159, iBridge2,8) MacBookAir8,2 (A1932, iBridge2,5) Mac mini 8,1 (A1993, iBridge2,7) iMac20,2 (A2115, iBridge2,16) iMacPro1,1 (A1862, iBridge1,1) MFC after: 2 weeks Reviewed by: ngie, adrian Differential Revision: https://reviews.freebsd.org/D57086 (cherry picked from commit a48b900300ebdbd5c47e664b4cc06e705da91bd8) M sys/conf/files.amd64 M sys/dev/asmc/asmc.c A sys/dev/asmc/asmcmmio.c A sys/dev/asmc/asmcmmio.h M sys/dev/asmc/asmcvar.h M sys/modules/asmc/Makefile _____________________________________________________________________________________________________________ Commit: 0fb34d22351e2816082047bf0b586af50db3caba URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0fb34d22351e2816082047bf0b586af50db3caba Author: Abdelkader Boudih (Mon 4 May 2026 15:26:44 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:00 BST) asmc: rename wol sysctl to auto_poweron Older SMC firmware exposed AUPO as a Wake-on-LAN control. On updated firmware, the key controls automatic power-on when AC power is restored after a power loss; WoL is handled by the GBE controller instead. Rename the sysctl to reflect the current semantics. No compatibility alias is provided as the sysctl has not appeared in any release. Reviewed by: ziaee, adrian Differential Revision: https://reviews.freebsd.org/D56747 (cherry picked from commit 36b399f55e3fa16063188b6f8ad8eaaf8c2215ab) M share/man/man4/asmc.4 M sys/dev/asmc/asmc.c M sys/dev/asmc/asmcvar.h _____________________________________________________________________________________________________________ Commit: 0e7752e16c313b70e747f31fa64376311a2bb1d7 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0e7752e16c313b70e747f31fa64376311a2bb1d7 Author: Abdelkader Boudih (Thu 30 Apr 2026 01:38:38 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:00 BST) asmc: replace hardcoded model table with universal probing Probe SMC keys at attach time to detect hardware capabilities, supporting all Intel Apple machines without per-model entries. Sensors are discovered by scanning sorted SMC key ranges for known prefixes and types. Capabilities such as SMS, fan safe speed, and ambient light are detected by key presence. A global key description table provides human-readable names for well-known temperature sensors. Tested on: - MacBook Pro (Early 2007, Mid 2014, Mid 2015) - MacBook Air (Early 2015, Mid 2017) - iMac (Mid 2011, Late 2013) - Mac mini (Mid 2011) Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D56405 (cherry picked from commit e7f4269dbfad02119934c35d523cb33ff8c93493) M sys/dev/asmc/asmc.c M sys/dev/asmc/asmcvar.h _____________________________________________________________________________________________________________ Commit: 7d2303e4b8275725b12f9816d6a7d81608e6c5b1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7d2303e4b8275725b12f9816d6a7d81608e6c5b1 Author: Abdelkader Boudih (Fri 17 Apr 2026 03:31:21 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:00 BST) asmc: add automatic voltage/current/power/ambient sensor detection Apple SMCs contain numerous undocumented voltage, current, power, and ambient light sensors. This change adds automatic detection and registration of these sensors as sysctls. New sysctl trees: dev.asmc.0.voltage.* - Voltage sensors (millivolts) dev.asmc.0.current.* - Current sensors (milliamps) dev.asmc.0.power.* - Power sensors (milliwatts) dev.asmc.0.ambient.* - Ambient light sensors Implementation: - Scans all SMC keys at attach time via asmc_key_dump_by_index() - Identifies sensors by key prefix patterns: - Voltage: VC*, VD*, VG*, VP*, VI* - Current: I{C,D,G,M,N,O,H,P,B,A,L}* - Power: P{C,D,N,S,T,H,F,Z,z}* - Light: ALV*, ALS* - Dynamically creates sysctls for detected sensors - Supports 8 fixed-point SMC data types: - sp78, sp87, sp4b, sp5a, sp69, sp96, sp2d, ui16 - Auto-converts all values to milli-units (mV, mA, mW) On Mac Mini 5,1, detects: - 7 voltage sensors - 18 current sensors - 27 power sensors - 2 ambient light sensors Enables power consumption monitoring, voltage rail debugging, and ambient light detection without hardcoding model-specific sensor lists. Tested on: - Mac Mini 5,1 (2011) running FreeBSD 15.0-RELEASE - 54 sensors auto-detected and exposed via sysctl - All sensor types verified with multimeter readings - Fixed-point conversions validated against known values - Memory management tested (malloc/free on detach) Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D55807 (cherry picked from commit aae9068404947dd9ffd8522359d0f9dffaa70414) M sys/dev/asmc/asmc.c M sys/dev/asmc/asmcvar.h _____________________________________________________________________________________________________________ Commit: 8424a1497459318eae816266499f8dab5688bc6c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8424a1497459318eae816266499f8dab5688bc6c Author: Marcus Gartner (Sat 11 Apr 2026 03:03:18 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:00 BST) asmc: add support for MacBookPro13,1 This commit adds support for the MacBookPro13,1 (late 2016, 13-inch). The SMC keys were collected from https://logi.wiki/index.php/SMC_Sensor_Codes. Two temperature keys are omitted because they fail to be read: TI0P (IO Proximity) and Ta0P (Ambient Air). Note that the with this model the `dev.asmc.0.fan.0.minspeed` setting only applies when the fans have been activated by the system. In my testing, the fans did not spin up until CPU temperatures hit about 80C. At lower temperatures, the fans will happily ignore the minimum speed and remain at 0 rpm. Reviewed by: imp Pull Request: https://github.com/freebsd/freebsd-src/pull/2137 (cherry picked from commit b5b9c65a689457e608cc31831ed690d303d63ffa) M sys/dev/asmc/asmc.c M sys/dev/asmc/asmcvar.h _____________________________________________________________________________________________________________ Commit: f497d93a32d84db8dfa4aa979a80621df428ae87 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f497d93a32d84db8dfa4aa979a80621df428ae87 Author: Abdelkader Boudih (Wed 15 Apr 2026 05:20:52 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:07:00 BST) asmc: add raw SMC key read/write interface This patch adds a debugging interface to read and write arbitrary Apple SMC keys by name through sysctl, enabling hardware exploration and control of undocumented features. The interface provides four sysctls under dev.asmc.0.raw.*: - key - Set the 4-character SMC key name (e.g., "AUPO") - value - Read/write key value as a hex string - len - Auto-detected key value length (can be overridden) - type - Read-only 4-character type string (e.g., "ui8", "flt") Implementation includes a new asmc_key_getinfo() function using SMC command 0x13 to query key metadata. The interface automatically detects key lengths and types, uses hex string encoding for arbitrary binary values, and is safe for concurrent access via CTLFLAG_NEEDGIANT. This interface was essential for discovering that the AUPO key enables Wake-on-LAN from S5 state, and for mapping all 297 SMC keys on Mac Mini 5,1. Reviewed by: ngie, adrian, markj Differential Revision: https://reviews.freebsd.org/D54441 (cherry picked from commit 3e27114a7f961aac49d75a663a55332375d0bef3) M share/man/man4/asmc.4 M sys/dev/asmc/asmc.c M sys/dev/asmc/asmcvar.h _____________________________________________________________________________________________________________ Commit: 7b3d39ef34c24a25b782a6898ca4501f78de9134 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7b3d39ef34c24a25b782a6898ca4501f78de9134 Author: Vladimir Kondratyev (Sun 29 Mar 2026 20:00:59 BST) Committer: Enji Cooper (Sat 5 Sep 2026 00:06:45 BST) asmc(4): Add support for backlight(9) interface MFC after: 1 month (cherry picked from commit 5d7862fb998f48ba71dac7e34106aaad350db348) M share/man/man4/asmc.4 M sys/dev/asmc/asmc.c M sys/dev/asmc/asmcvar.h M sys/modules/asmc/Makefile _____________________________________________________________________________________________________________ Commit: 96dfa566fc168fa386710451e5d1f036ac387cf6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=96dfa566fc168fa386710451e5d1f036ac387cf6 Author: ShengYi Hung (Mon 24 Aug 2026 18:51:41 BST) Committer: Kyle Evans (Fri 4 Sep 2026 18:56:15 BST) xhci: Only reset the data toggle value when the USB stack asks for it The previous patch assumes that we don't want to reset toggle bit in STOPPED_STEP. However, a device can explicitly call usbd_clear_data_toggle if necessary. As a result, instead of not dropping the bit unconditionally, we added a field in xhci to specify that we want to drop it, so that usbd_clear_data_toggle can handle it correctly. Reported by: oh Reviewed by: kevans Tested by: oh Fixes: 28d85db46b48 ("xhci: Do not drop and add bits in xhci") (cherry picked from commit 0f59df83869d3734a33d96b01381823e6a3ef3ff) M sys/dev/usb/controller/xhci.c M sys/dev/usb/controller/xhci.h _____________________________________________________________________________________________________________ Commit: 6b1371fca772dd4583e2ba257b3237bad8c57cab URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6b1371fca772dd4583e2ba257b3237bad8c57cab Author: Etienne Bonnand (Thu 18 Jun 2026 17:37:31 BST) Committer: Kyle Evans (Fri 4 Sep 2026 16:33:04 BST) stand: set st_dev/st_ino in the loader's ZFS stat for veriexec The loader's ZFS implementation never set st_dev or st_ino in zfs_dnode_stat(). With an uninitialized struct stat, veriexec's device comparison in lib/libsecureboot/veopen.c read stack garbage and skipped the matching manifest entry, failing with a spurious "no entry" on ZFS root under UEFI Secure Boot. Rather than zeroing the device (which would break veriexec's ability to tell apart the same path on different datasets), populate st_dev and st_ino with the same intrinsic identifiers the kernel uses: - st_dev = the dataset's ds_fsid_guid (as the kernel does via dmu_objset_fsid_guid()/dsl_dataset_fsid_guid()), already read in zfs_mount_dataset() and now propagated through struct zfsmount. - st_ino = the object number resolved in zfs_lookup(), propagated through struct file (the loader's equivalent of the kernel's z_id). dev_t and ino_t are 64-bit on FreeBSD, so both are assigned directly with no hashing. A memset() at the top of zfs_dnode_stat() zeroes the remaining fields so they no longer hold stack garbage. Tested on 16.0-CURRENT (amd64), ZFS-on-GELI root: rebuilt and re-signed the EFI loader; the system boots under UEFI Secure Boot with mac_veriexec active. (boot1 segment was modified by kevans) PR: 295935 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295935 ) Sponsored by: Defenso Reviewed-by: kevans Pull-Request: https://github.com/freebsd/freebsd-src/pull/2271 (cherry picked from commit b567434a592e1a35b20c5a39c4ccc2ea9e00601d) M stand/efi/boot1/zfs_module.c M stand/libsa/zfs/zfs.c M stand/libsa/zfs/zfsimpl.c _____________________________________________________________________________________________________________ Commit: 8db4de3a74fd4fee04c6c1c317d5281e1f2b0774 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8db4de3a74fd4fee04c6c1c317d5281e1f2b0774 Author: Kyle Evans (Tue 11 Aug 2026 02:26:47 BST) Committer: Kyle Evans (Fri 4 Sep 2026 16:33:00 BST) usb: xhci: allow up to 1s for SET_ADDRESS Some devices take a little longer, and the spec doesn't really seem to mandate a maximum. The common path in usbd_req_set_address() has already been bumped to 1s and I have a headset (Logitech H390) that does need a little bit longer, so let's match it in xhci. Reviewed by: aokblast (cherry picked from commit 135df778543123a7dea08553c78da1b51a6b3098) M sys/dev/usb/controller/xhci.c _____________________________________________________________________________________________________________ Commit: 48c56b559248295da78ce2a8ec5549afd8cd4d20 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=48c56b559248295da78ce2a8ec5549afd8cd4d20 Author: Kyle Evans (Sat 8 Aug 2026 05:06:33 BST) Committer: Kyle Evans (Fri 4 Sep 2026 16:32:45 BST) kern: fix oversight in security.bsd.unprivileged_kenv_read It was intended that one could close the hole back in loader, but the sysctl was actually not marked TUNABLE. The hardening menu option thus did nothing, because we wouldn't read the value from kenv. Reported by: markj Fixes: 6e81fbf5833d ("bsdinstall: add a hardening knob [...]") Fixes: 4fd518fcb2bb ("kern: add a security knob to disable [...]") (cherry picked from commit 8befc9e8b194d874d00239568584552279bebddd) M sys/kern/kern_environment.c _____________________________________________________________________________________________________________ Commit: 8d227fc5ddf95a6f7f270779ae45f5943db6ad56 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8d227fc5ddf95a6f7f270779ae45f5943db6ad56 Author: Kyle Evans (Fri 7 Aug 2026 02:54:04 BST) Committer: Kyle Evans (Fri 4 Sep 2026 16:32:39 BST) prometheus_sysctl_exporter: don't abort on bad labels We can probaby consider these kernel bugs, in which case asserting is not the most helpful thing we can do. Let's emit the necessary details to stderr and exit non-zero to aid debugging these without completely blocking the ability to export all of the well-formed metrics. Reviewed by: rew (cherry picked from commit 4f42ec2f38ee4a4eba8f3298e7968f0523f87aa0) M usr.sbin/prometheus_sysctl_exporter/prometheus_sysctl_exporter.8 M usr.sbin/prometheus_sysctl_exporter/prometheus_sysctl_exporter.c _____________________________________________________________________________________________________________ Commit: 240bea933ddd3ad296695fc520405bcc4d92be75 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=240bea933ddd3ad296695fc520405bcc4d92be75 Author: Kyle Evans (Fri 7 Aug 2026 00:41:43 BST) Committer: Kyle Evans (Fri 4 Sep 2026 16:32:21 BST) bsdinstall: add a hardening knob for unprivileged kenv access It makes sense. Reviewed by: zleei (cherry picked from commit 6e81fbf5833d43529fd8a253b592af9666b04e8e) M usr.sbin/bsdinstall/scripts/hardening _____________________________________________________________________________________________________________ Commit: 7d87c1ba6c4ad73d02ffbfe7dd67c1bcf7c392f1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7d87c1ba6c4ad73d02ffbfe7dd67c1bcf7c392f1 Author: Enji Cooper (Thu 16 Jul 2026 22:48:37 BST) Committer: Enji Cooper (Fri 4 Sep 2026 07:01:27 BST) libproc: link against libctf if MK_CTF != no instead of MK_CDDL != no Logic prior to this change would incorrectly try linking when MK_CDDL != no, instead of MK_CTF != no, which could result in the library and the tests being broken if/when MK_CTF == no and MK_CDDL != no (an uncommon, but possible combination with today's build knobs). This change updates the conditional to correctly track the value of MK_CTF, which in turn is properly toggled to no if/when MK_CDDL == no as it's a dependent build knob. This [niche] build bug has been present in FreeBSD since 2014. MFC after: 1 week (cherry picked from commit f2e6a8b9e50c7552037cb635f17b955ead84a813) M lib/libproc/Makefile M share/mk/src.libnames.mk _____________________________________________________________________________________________________________ Commit: 46c155b1a3108f9f6afbfc053c072b190088497a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=46c155b1a3108f9f6afbfc053c072b190088497a Author: Enji Cooper (Thu 16 Jul 2026 17:24:54 BST) Committer: Enji Cooper (Fri 4 Sep 2026 06:58:27 BST) rc.d/dumpon: minor hardening/tightening up - Scope local variables properly to each function. - Quote variables that should be treated as single words. - Replace `${cmd}; if [ $? -eq 0 ]` with `if ${cmd}` for simplicity. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D57899 (cherry picked from commit fc186c24b1e72fa3eba91c166f7a554a5cea5828) M libexec/rc/rc.d/dumpon _____________________________________________________________________________________________________________ Commit: 49a0bf45cb1b3ceb1170ebccb935e37faba257c0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=49a0bf45cb1b3ceb1170ebccb935e37faba257c0 Author: Enji Cooper (Tue 21 Jul 2026 17:08:44 BST) Committer: Enji Cooper (Fri 4 Sep 2026 06:56:19 BST) linux_firmware: reformat error print-out This makes it easier to grep for the error message to better understand the call stack when loading firmware modules fails. Fix a cosmetic-only style(9) bug while here in the same function related to another logging message. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D58380 (cherry picked from commit a594783bac906ecc4f6528d7d576215f85a21bda) M sys/compat/linuxkpi/common/src/linux_firmware.c _____________________________________________________________________________________________________________ Commit: 8c0ae18f7e0e6fd888077e6b6c7e52ef4a87a33e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8c0ae18f7e0e6fd888077e6b6c7e52ef4a87a33e Author: Enji Cooper (Sat 25 Jul 2026 17:51:53 BST) Committer: Enji Cooper (Fri 4 Sep 2026 06:55:57 BST) [test] libatexit: leverage __{BEGIN,END}_DECLS This change converts the longhand form of `extern "C" {` and its corresponding `}` into `__BEGIN_DECLS` and `__END_DECLS`, respectively. The new form is much easier to grep for and is a best practice to use in the FreeBSD tree. This is meant to be a non-functional change. MFC after: 1 week (cherry picked from commit bc81728c00b200297ac556974b5373c804077a17) M lib/libc/tests/stdlib/libatexit/libatexit.cc _____________________________________________________________________________________________________________ Commit: 59ee4abcdbba8ae333211baf964c46f1a62c51f6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=59ee4abcdbba8ae333211baf964c46f1a62c51f6 Author: Enji Cooper (Sun 9 Aug 2026 06:31:20 BST) Committer: Enji Cooper (Fri 4 Sep 2026 06:54:14 BST) cpuset(9): correct markup - Remove `\(em` from .Nm section as it's not valid mandoc markup. - Remove the section from the .Nm directive (it's handled under the .Dt directive). MFC after: 1 week Reported by: make manlint (cherry picked from commit 5007a5d682d3737fe9b49c4cd69e04d025d209ec) M share/man/man9/cpuset.9 _____________________________________________________________________________________________________________ Commit: afdf887bbf170278d2696e6f3f24e0501596509b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=afdf887bbf170278d2696e6f3f24e0501596509b Author: Enji Cooper (Sun 9 Aug 2026 06:28:35 BST) Committer: Enji Cooper (Fri 4 Sep 2026 06:53:22 BST) DB_COMMAND(9): correct mdoc markup for .Nm entries Add missing commas after .Nm entries. MFC after: 1 week Reported by: make manlint (cherry picked from commit b96a063f61001e60ac282eb3500e703c7c3faf9c) M share/man/man9/DB_COMMAND.9 _____________________________________________________________________________________________________________ Commit: a151a01fdece08445486d9cb277eb3ba6dd2db37 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a151a01fdece08445486d9cb277eb3ba6dd2db37 Author: Enji Cooper (Wed 19 Aug 2026 08:57:27 BST) Committer: Enji Cooper (Fri 4 Sep 2026 06:49:00 BST) contrib/netbsd-tests: lib/libc/c063: sync with NetBSD This change syncs the lib/libc/c063 NetBSD tests with FreeBSD. This does two things: - Addresses bogus tautologically true assertions flagged by clang and gcc with ATF 0.22+ [1]. - Brings in some new test coverage. Obtained from: NetBSD (date tag: `20260818UTC`) MFC after: 2 weeks 1. https://github.com/freebsd/atf/pull/72 (cherry picked from commit 8109a5c0fba0d015354a69b40e6682d5e8c0f638) M contrib/netbsd-tests/lib/libc/c063/t_faccessat.c M contrib/netbsd-tests/lib/libc/c063/t_fchmodat.c M contrib/netbsd-tests/lib/libc/c063/t_mkfifoat.c M contrib/netbsd-tests/lib/libc/c063/t_utimensat.c _____________________________________________________________________________________________________________ Commit: 0d7fc3ad6fa662e81b2b0e86affa97df2c0f5bfc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0d7fc3ad6fa662e81b2b0e86affa97df2c0f5bfc Author: Enji Cooper (Sun 9 Aug 2026 06:04:15 BST) Committer: Enji Cooper (Fri 4 Sep 2026 06:47:34 BST) alq(9): add missing .Nm entry for ALQ(9) MFC after: 1 week Reported by: make manlint (cherry picked from commit 4fa245edc7ad426ebde7a316191b579e62fe795f) M share/man/man9/alq.9 _____________________________________________________________________________________________________________ Commit: 2ed7da9400376427d27129ea5083c0e295f39aa8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2ed7da9400376427d27129ea5083c0e295f39aa8 Author: Enji Cooper (Mon 10 Aug 2026 00:20:46 BST) Committer: Enji Cooper (Fri 4 Sep 2026 06:45:03 BST) acl(9): fix typo (ACL_ACL -> ACL) MFC after: 1 week (cherry picked from commit 9fd963b0a149357b6fbc16ef0b999e6b487e513a) M share/man/man9/acl.9 _____________________________________________________________________________________________________________ Commit: 20b68f03d8f133b2c150520bd16aa462dc4f0223 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=20b68f03d8f133b2c150520bd16aa462dc4f0223 Author: Enji Cooper (Sun 9 Aug 2026 06:02:13 BST) Committer: Enji Cooper (Fri 4 Sep 2026 06:44:34 BST) atomic(9): add missing .Nm entries MFC after: 1 week Reported by: make manlint (cherry picked from commit 8eced03c369a6f8aad0013604f790bafd4526848) M share/man/man9/atomic.9 _____________________________________________________________________________________________________________ Commit: e5a9ad7cbf24230bbde0882f3ed618719e2fc106 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e5a9ad7cbf24230bbde0882f3ed618719e2fc106 Author: Pouria Mousavizadeh Tehrani (Sat 22 Aug 2026 21:37:58 BST) Committer: Pouria Mousavizadeh Tehrani (Fri 4 Sep 2026 00:00:54 BST) route/fib_algo: Free leaked radix_masks in radix_lockless radix_lockless algorithm creates its own radix tree and allocates its own radix_masks by directly calling rnh_addaddr(). However, during destruction, it only frees the radix_tree without freeing its allocated radix_masks. Fix the leak by calling rn_delete() during radix_destroy(). PR: 297339 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297339 ) Reviewed by: melifaro MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D59112 (cherry picked from commit 790817f5a7a640c9ceb5c2ad99135f1a69aeb77d) M sys/netinet/in_fib_algo.c M sys/netinet6/in6_fib_algo.c _____________________________________________________________________________________________________________ Commit: 10ebbeb4d78cebdf6398e224a94edf8373de5c88 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=10ebbeb4d78cebdf6398e224a94edf8373de5c88 Author: Mitchell Horne (Mon 13 Jul 2026 20:49:32 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:32:44 BST) subr_physmem_test: add tests for two edge-cases Help validate my assertion that "physmem will never report empty ranges". Part of this is covered by the existing tests, which check the merging of adjacent/overlapping regions. The other part is to ensure that addition of zero-sized ranges is ignored. The physmem implementation also includes logic to ignore the first physical page of memory (physical addresses 0 to PAGE_SIZE-1). Add a second test case for this. Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D45914 (cherry picked from commit 1b5ec2e466ee100161017ae2618f91829310f1d6) M tests/sys/kern/subr_physmem_test.c _____________________________________________________________________________________________________________ Commit: 261d589694875521d241b73d23c376e786d735e3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=261d589694875521d241b73d23c376e786d735e3 Author: Mitchell Horne (Mon 13 Jul 2026 20:15:49 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:32:36 BST) g_eli: disambiguate CPU-bound worker creation This makes an effort to clarify and correct the intent of the code, which is to either: 1. Create one software crypto worker thread for each CPU, to be pinned later 2. Create the number of threads requested by the kern.geom.eli.threads tunable This is as described in geli(8). If a CPU were somehow* absent, it should be skipped, but not in the second case when creating a set number of threads. To achieve this cleanly and correctly: - split worker creation logic into a helper function - keep the loops separate - debug message for absent CPUs is dropped - add a short explanatory comment - style, rename local var to 'nthreads' *Practically, it is impossible today to get a bootable system with a sparsely populated CPU map. Thus these concerns are hypothetical and this change should have no functional effect. Finally, while here, guard the sc->sc_workers list insertion with the appropriate mutex. The code is safe from races today, but this gives a better guarantee. Reviewed by: kib MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58214 (cherry picked from commit 185039d27252ae4ce7d6e3d68ba74907091cd565) M sys/geom/eli/g_eli.c _____________________________________________________________________________________________________________ Commit: 64dd924bf7712eb72d32ca75dc409ef6e0eb3fdd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=64dd924bf7712eb72d32ca75dc409ef6e0eb3fdd Author: Mitchell Horne (Mon 13 Jul 2026 20:15:38 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:32:36 BST) sched/lapic: remove sched_do_timer_accounting() The check is always true, especially after the removal of hlt_cpus_mask from sched_4bsd. Reviewed by: olce, kib MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58159 (cherry picked from commit 01f165c68103df22cebe26d410c1d4a0e5fae377) M sys/kern/sched_4bsd.c M sys/kern/sched_shim.c M sys/kern/sched_ule.c M sys/sys/sched.h M sys/x86/x86/local_apic.c _____________________________________________________________________________________________________________ Commit: ce2e423045c228d75aa4ff2f26215e63d5371316 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ce2e423045c228d75aa4ff2f26215e63d5371316 Author: Mitchell Horne (Mon 13 Jul 2026 20:15:19 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:32:36 BST) smp: remove unused hlt_cpus_mask It is a relic, apparently once populated by a machdep.hlt_cpus sysctl. The sysctl was removed, and ULE has never honored this mask. It is now safe to remove. Remove the mask, and its few remaining references in: sched_4bsd(4), hwpmc(4), and hwt(4). Reviewed by: olce, kib MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58158 (cherry picked from commit df0aca0d73064a1a199dbae3857012951f96cf2d) M sys/dev/hwt/hwt_ioctl.c M sys/dev/hwt/hwt_vm.c M sys/kern/kern_pmc.c M sys/kern/sched_4bsd.c M sys/kern/subr_smp.c M sys/sys/smp.h _____________________________________________________________________________________________________________ Commit: 5ed83588dac8fb30e893f6dcd1a092116bf07366 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5ed83588dac8fb30e893f6dcd1a092116bf07366 Author: Mitchell Horne (Mon 13 Jul 2026 20:15:00 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:32:36 BST) g_eli: better handling of absent/disabled CPUs Checking hlt_cpus_mask is a no-op, and the mask will be removed in the next commit. However, we can use the more recent CPU_ABSENT() macro to check the status. Reviewed by: olce MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58157 (cherry picked from commit 63d4f044225d1bb86767759b18c0ae63b25a9c03) M sys/geom/eli/g_eli.c _____________________________________________________________________________________________________________ Commit: 3ef9ef5147d23d6bed18663f1836ad2f768fa1a8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3ef9ef5147d23d6bed18663f1836ad2f768fa1a8 Author: Mitchell Horne (Fri 21 Aug 2026 17:57:12 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:29:20 BST) libkern.h: remove HAVE_INLINE_* macros The final consumer of this was OpenZFS, fixed in ffaea0831973 (thanks mav@). That change has been present in all active OpenZFS release branches for at least 6 months. These can finally be retired. Reviewed by: mav MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55201 (cherry picked from commit 76f14217f6051df414e435c3388d3f4bb388cc22) M sys/sys/libkern.h _____________________________________________________________________________________________________________ Commit: 24db9837bee5ba35f7c84edded150d5a5a1bfa73 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=24db9837bee5ba35f7c84edded150d5a5a1bfa73 Author: Mitchell Horne (Sun 10 Aug 2025 18:16:11 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:29:13 BST) jh7110_gpio: remove unneeded cleanup Any failure within bus_alloc_resources() will call bus_release_resources(); thus the call is redundant here. MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit 2af2ec524957754ff356daea5fa7ee4990c1c3ea) M sys/riscv/starfive/jh7110_gpio.c _____________________________________________________________________________________________________________ Commit: a722716674ba883bfa4d5eac4b29363706023d33 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a722716674ba883bfa4d5eac4b29363706023d33 Author: Brian Scott (Fri 21 Aug 2026 17:27:00 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:29:08 BST) jh7110_gpio: driver enhancements Fix reporting of state and capabilities by the gpioctl command. Support selection of pull-up and pull-down resistors. Support second gpio device (AON - always on power domain) to allow attaching gpioled device to visionfive2 status LED or querying boot selection switches. Reviewed by: mhorne MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D58693 (cherry picked from commit 3d20f8a022435e8ed37e2c0ce8f66d4c1203ec1c) M sys/riscv/starfive/jh7110_gpio.c _____________________________________________________________________________________________________________ Commit: 66fb43c26b3ba9a86335f462ddb6e06b27323823 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=66fb43c26b3ba9a86335f462ddb6e06b27323823 Author: Mitchell Horne (Sun 10 Aug 2025 18:13:23 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:29:00 BST) jh7110_gpio: style - Fix whitespace - Replace JH7110_GPIO_READ with RD4 (and WR4) - Trim headers - Explicit conditional checks - Use correct method typedefs MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit 72216145d3e4e2460d48d279a339072e0be2cc74) M sys/riscv/starfive/jh7110_gpio.c _____________________________________________________________________________________________________________ Commit: 55e62f1eadae3206145ec1dae88bf9c00491b404 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=55e62f1eadae3206145ec1dae88bf9c00491b404 Author: Mitchell Horne (Mon 29 Jun 2026 16:24:19 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:28:01 BST) release/riscv: tweak GENERICSD partition placement Increase EFI partition size to begin rootfs at 64mb. I believe this was my original intention. I have a microSD card with 8mb block size which emits an advisory in verbose dmesg about the misaligned partition. MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit 49749f21284d817b5431255106c8c2da3afa9965) M release/riscv/GENERICSD.conf _____________________________________________________________________________________________________________ Commit: 4315454760788542e9f5b0f6a255d2a9a62acf9c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4315454760788542e9f5b0f6a255d2a9a62acf9c Author: Mitchell Horne (Thu 5 Feb 2026 18:52:36 GMT) Committer: Mitchell Horne (Thu 3 Sep 2026 17:27:46 BST) cdefs(9): document __nonstring Reviewed by: emaste Discussed with: imp Fixes: 802c6d5d61d1 ("cdefs.h: Introduce __nonstring attribute") MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58804 (cherry picked from commit 2ea905c875b6c89117023e240c3158f2da79bc52) M share/man/man9/cdefs.9 _____________________________________________________________________________________________________________ Commit: 84b241f1cc122a8735abffa74ea5f74b56b61648 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=84b241f1cc122a8735abffa74ea5f74b56b61648 Author: Andre Silva (Tue 11 Aug 2026 17:17:57 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:27:28 BST) hwpmc: fix false callchain assertion on the PMC_UR ring pmc_capture_user_callchain() asserts that TDP_CALLCHAIN is set on the current thread, but PMC_UR samples never set that flag -- only PMC_HR and PMC_SR do. That makes the assertion always fail for PMC_UR, panicking INVARIANTS kernels as soon as pmcstat -U is used. Skip the assertion for PMC_UR. No functional change on kernels built without INVARIANTS. Signed-off-by: Andre Silva Reviewed by: mhorne MFC after: 1 week Sponsored by: AMD Differential Revision: https://reviews.freebsd.org/D58572 (cherry picked from commit af3929c5152b47278c0b6ea66efbb782b9637495) M sys/dev/hwpmc/hwpmc_mod.c _____________________________________________________________________________________________________________ Commit: 92cf9e36ecf937618a5b977b53027a4d28efe0f2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=92cf9e36ecf937618a5b977b53027a4d28efe0f2 Author: Andre Silva (Tue 11 Aug 2026 17:16:20 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:27:28 BST) hwpmc: fix false runcount assertion in user callchain capture pmc_capture_user_callchain() checks a PMC's runcount before walking the user stack, but reads it without holding the spinlock that protects it. hardclock() can run on the same CPU during the capture and drop the runcount to zero in between, tripping the assertion and panicking INVARIANTS kernels under load. Move the check inside the existing spinlock, right where the code already confirms the sample is still valid. No functional change on kernels built without INVARIANTS. Signed-off-by: Andre Silva Reviewed by: mhorne MFC after: 1 week Sponsored by: AMD Differential Revision: https://reviews.freebsd.org/D58571 (cherry picked from commit 66118c3f1011d7852bce8b659899179a83781897) M sys/dev/hwpmc/hwpmc_mod.c _____________________________________________________________________________________________________________ Commit: 83b88ea4761ec55f924d1c964a56c5a91ca7457f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=83b88ea4761ec55f924d1c964a56c5a91ca7457f Author: Artem Bunichev (Mon 20 Jul 2026 18:29:51 BST) Committer: Mitchell Horne (Thu 3 Sep 2026 17:23:14 BST) vfs_unmountall.9: Fix an outdated .Xr to boot(9) boot.9 was moved to kern_reboot.9, but this reference was not changed appropriately. PR: 286013 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=286013 ) Reviewed by: mhorne, kib, emaste Fixes: 800e74955d4e ("boot(9): update to match reality") MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D58350 (cherry picked from commit 5b7d6a128bef464e7fd331d172e4cf25a5d122c3) M share/man/man9/vfs_unmountall.9 _____________________________________________________________________________________________________________ Commit: 678f107b5c7898570d33d9667217e8901fdc79c6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=678f107b5c7898570d33d9667217e8901fdc79c6 Author: Kristof Provost (Wed 26 Aug 2026 15:52:07 BST) Committer: Kristof Provost (Thu 3 Sep 2026 15:03:04 BST) pfctl: fix printing of wildcard anchors PR: 297839 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297839 ) MFC after: 1 week Obtained from: OpenBSD, henning , 5b6657d4d8 Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 5de5140f06959f2724c626c7fab3e1c9187beefb) M sbin/pfctl/pfctl.c M tests/sys/netpfil/pf/anchor.sh _____________________________________________________________________________________________________________ Commit: 2581bc3af3815e92b0eef44bee224fff92931de8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2581bc3af3815e92b0eef44bee224fff92931de8 Author: Glen Barber (Thu 3 Sep 2026 08:51:28 BST) Committer: Dag-Erling Smørgrav (Thu 3 Sep 2026 12:56:38 BST) hastd: Fix crash on empty message A HAST message can be empty, in which case ebuf_add_tail() does nothing and ebuf_data() returns NULL because the size of the ebuf is zero, but hast_proto_recv_hdr() asserts that the return value is not NULL, resulting in an immediate crash if hastctl or hastd receive an empty message. This is trivially reproducable by running `hastctl status` or `hastctl role init` (as the rc script does prior to stopping hastd). To avoid this, don't try to grow the ebuf or receive additional data if the header size is zero. PR: 298085 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298085 ) MFC after: 3 days Reviewed by: kevans, gjb Differential Revision: https://reviews.freebsd.org/D59306 (cherry picked from commit 8646d65b45339642d4aab1de35a2bc79fc45f09e) M sbin/hastd/hast_proto.c _____________________________________________________________________________________________________________ Commit: b6eb725e4b100ae3f4d120b5ec1a3ba1dc8bca53 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b6eb725e4b100ae3f4d120b5ec1a3ba1dc8bca53 Author: Dag-Erling Smørgrav (Tue 1 Sep 2026 13:49:24 BST) Committer: Dag-Erling Smørgrav (Thu 3 Sep 2026 12:56:38 BST) various: Fix nlist invocations Fix nlist(3) consumers that either expected our toolchain to prepend an underscore to symbol names or expected nlist(3) to ignore the mismatch, as it did until we overhauled it back in May. While here, also fix cases where the last element in the list had an empty string instead of NULL as sentinel. MFC after: 3 days Fixes: 4617a6cb82a6 ("nlist: Handle multiple symbol tables") Reviewed by: kib, jhb Differential Revision: https://reviews.freebsd.org/D59254 (cherry picked from commit cdfc673811aca2c6690f37bde9ef4896ea2e1d6b) M lib/libkvm/kvm_amd64.c M lib/libkvm/kvm_cptime.c M lib/libkvm/kvm_getloadavg.c M lib/libkvm/kvm_getswapinfo.c M lib/libkvm/kvm_i386.c M lib/libkvm/kvm_pcpu.c M lib/libkvm/kvm_proc.c M lib/libkvm/kvm_vnet.c M lib/libmemstat/memstat_malloc.c M lib/libmemstat/memstat_uma.c M sbin/ddb/ddb_capture.c M usr.bin/ktrdump/ktrdump.c M usr.bin/netstat/Makefile M usr.bin/netstat/nlist_symbols M usr.bin/vmstat/vmstat.c M usr.sbin/iostat/iostat.c M usr.sbin/pstat/pstat.c _____________________________________________________________________________________________________________ Commit: 17fb42865e0e0739f0e77dfa64b38298ae687f1c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=17fb42865e0e0739f0e77dfa64b38298ae687f1c Author: Kevin Bowling (Mon 17 Aug 2026 18:09:23 BST) Committer: Kevin Bowling (Thu 3 Sep 2026 01:53:46 BST) bhyve: Keep passthrough PCI power state virtual The passthrough Command register is emulated, but PMCSR writes were sent directly to the physical function. A guest D3hot-to-D0 transition can perform an internal reset and clear physical Command while its emulated copy remains enabled. Cache the Power Management capability and keep the physical D-state host-owned. Emulate the guest D-state and advertise No_Soft_Reset so the guest is not promised a function reset by a virtual power cycle. Restore the assignment-time virtual state after a managed FLR. Reviewed by: markj Sponsored by: BBOX.io (cherry picked from commit 3b90096cf9bcaec70b717e9ff0a9e23d14b600b6) M usr.sbin/bhyve/pci_passthru.c _____________________________________________________________________________________________________________ Commit: f44cde39f97d0e9e828ed709bd89e6bc6e1ddbb9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f44cde39f97d0e9e828ed709bd89e6bc6e1ddbb9 Author: Kevin Bowling (Sun 16 Aug 2026 00:47:33 BST) Committer: Kevin Bowling (Thu 3 Sep 2026 01:53:24 BST) bhyve: Manage passthrough devices across guest FLR bhyve emulates the guest PCI Command register so BAR sizing does not disable physical decoding. However, PCIe Device Control was passed through. A guest VFIO reset therefore performed a physical FLR, which cleared physical Command, while the guest restored only its emulated copy. The device remained assigned with bus mastering disabled and could not fetch DMA descriptors. Intercept guest FLR writes and issue a PPT-managed reset. Stop all vCPUs, verify ownership, quiesce the function, perform only an FLR, and restore the host-owned PCI configuration, decode, and bus-master state. Keep the IOMMU domain in place. bhyve removes guest BAR mappings before this ioctl; a later guest MEMEN write recreates them. Never escalate a guest FLR to a power reset. Reset the guest-owned Command, MSI, MSI-X, MSI-X table, INTx, and MRRS state. PCIe 6.2 section 6.6.2 explicitly preserves MPS across FLR. Virtualize MPS, MRRS, and Completion Timeout. Keep physical MPS and completion-timeout policy host-owned, and apply physical MRRS with MPS as its floor. Keep Phantom Functions Enable host-owned because it changes requester identities visible to the IOMMU. Serialize guest configuration transactions per function and gate trapped and direct BAR access across the reset. Handle byte, word, dword, and overlapping Device Control accesses. A guest FLR can sleep for at least 100 ms. Reserve the target function while dropping the global PPT lock so a guest cannot delay PPT lifecycle operations for other VMs. Operations on the target wait for its reset while other functions and VMs can proceed. Check pcie_flr_supported() before destructive preparation so PPT applies the generic PCI quirk policy. This includes VFs such as the 82599 which implement FLR without advertising it. Validated with two E610 VFs in a Linux 7.0 guest using VFIO no-IOMMU and DPDK testpmd with two queues per VF. Byte, word, dword, and overlapping FLR writes, 32 alternating resets, DPDK traffic, and ixgbevf reattachment all completed while the sibling VF and host PCIe remained healthy. This fixes Linux VFIO no-IOMMU with DPDK PMDs. Reviewed by: markj Sponsored by: BBOX.io (cherry picked from commit c8343ba84af75c3710a1c587ff9bd2165fcd37a9) M lib/libvmmapi/internal.h M lib/libvmmapi/ppt.c M lib/libvmmapi/vmmapi.h M sys/amd64/include/vmm.h M sys/amd64/include/vmm_dev.h M sys/amd64/vmm/io/ppt.c M sys/amd64/vmm/io/ppt.h M sys/amd64/vmm/vmm.c M sys/amd64/vmm/vmm_dev_machdep.c M usr.sbin/bhyve/pci_emul.c M usr.sbin/bhyve/pci_emul.h M usr.sbin/bhyve/pci_passthru.c _____________________________________________________________________________________________________________ Commit: 61b2ea4b897c03e15511afc277c498dde6874a55 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=61b2ea4b897c03e15511afc277c498dde6874a55 Author: Kevin Bowling (Sun 16 Aug 2026 08:11:57 BST) Committer: Kevin Bowling (Thu 3 Sep 2026 01:53:13 BST) e1000: Report 82571 packet buffer ECC errors The 82571 PBA_ECC register contains a 12-bit count of packet buffer ECC detections. The shared code enables single-bit correction, but neither FreeBSD nor the DPDK base driver consumes the counter. Sample it with the ordinary statistics timer, accumulate the value under dev.em.N.memory_errors.detected_packet_buffer, and clear the hardware counter while preserving correction and reserved register state. Do not enable its shared interrupt: the register does not distinguish corrected from uncorrectable events and does not provide a safe fatal recovery policy. Validated on a dual port 82571EB. Both functions reported zero after a clean boot, and a controlled link down/up cycle left the counter at zero while the management link recovered at 1 Gb/s without issue. Sponsored by: BBOX.io (cherry picked from commit aec0f1b85b54d14819747ed3364f366d21e76d88) M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: abf6f5aaed283a1cc23e5c4f6296c716c6863bce URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=abf6f5aaed283a1cc23e5c4f6296c716c6863bce Author: Mark Johnston (Tue 1 Sep 2026 17:07:09 BST) Committer: Mark Johnston (Wed 2 Sep 2026 18:40:37 BST) devstat: Fix a kernel stack disclosure The 16-byte "device_name" field was not zero-filled, so could contain uninitialized stack data. Zero the whole struct, as that's the prevailing pattern for this kind of conversion code, and it's more robust in the face of future revisions to struct devstat. Reviewed by: olce, kib Reported by: Reo Shiseki Fixes: a11d132f6c62 ("devstat: Provide 32-bit compatibility") MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59309 (cherry picked from commit 7cb1a76f88158fb690418336b736e66c238cd4f7) M sys/kern/subr_devstat.c _____________________________________________________________________________________________________________ Commit: d489039602a4b1730cfa018c0e982d20e1f496bb URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d489039602a4b1730cfa018c0e982d20e1f496bb Author: Mark Johnston (Mon 17 Aug 2026 19:15:17 BST) Committer: Mark Johnston (Wed 2 Sep 2026 18:40:28 BST) malloc: Use ckdint.h helpers instead of WOULD_OVERFLOW This serves to demonstrate some usage of the ckdint.h helpers. The new version also generates better machine code on amd64 and arm64. Reviewed by: kib, emaste MFC after: 2 weeks Sponsored by: The FreeBSD Foundation (cherry picked from commit 2d67765f10e7da43ba2d4a7fc074c15d5354684b) M sys/kern/kern_malloc.c _____________________________________________________________________________________________________________ Commit: bc63853a10ff9a81db695b60ab14b39cf840daf0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bc63853a10ff9a81db695b60ab14b39cf840daf0 Author: Abhijeet Sharma (Wed 19 Aug 2026 13:19:27 BST) Committer: Mark Johnston (Wed 2 Sep 2026 18:40:28 BST) tools/build: stage stdckdint.h's dependencies for non-FreeBSD hosts 37bd69d43c7 gave stdckdint.h two new includes, and . Neither reaches a non-FreeBSD host: _visible.h is staged only under ${.MAKE.OS} == "FreeBSD" and ckdint.h is not staged at all, so the libc bootstrap fails on reallocarray.o when cross-building from macOS. Both headers are self-contained; stage them alongside stdckdint.h. Fixes: 37bd69d43c7 ("sys: Add sys/ckdint.h") Reviewed by: rpaulo, markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58943 (cherry picked from commit 805c5004fa86e26486175cd3a0bb253dcb8ec7e0) M tools/build/Makefile _____________________________________________________________________________________________________________ Commit: b955d36a9b36b04b9d434a12aac3dcd31a7574ad URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b955d36a9b36b04b9d434a12aac3dcd31a7574ad Author: Mark Johnston (Mon 17 Aug 2026 18:06:04 BST) Committer: Mark Johnston (Wed 2 Sep 2026 18:40:28 BST) sys: Add sys/ckdint.h We have a C23 stdckdint.h header for userspace, which provides checked addition, subtraction and multiplication. We lack similar helpers in the kernel, where they are regularly needed. Let's just adopt the C23 macros. For bonus points, I added a wrapper to ensure that ignored an return value is raised as an error by the compiler. Reviewed by: kib, emaste MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58773 (cherry picked from commit 37bd69d43c70346b9191f7ce07ee9ed783ce528f) M include/stdckdint.h A sys/sys/ckdint.h _____________________________________________________________________________________________________________ Commit: fcd26df9e24ffc9dfad42105b95026f23ec23e3f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fcd26df9e24ffc9dfad42105b95026f23ec23e3f Author: Mark Johnston (Tue 7 Oct 2025 14:53:54 BST) Committer: Mark Johnston (Wed 2 Sep 2026 18:40:28 BST) tools/build: Bring in stdckdint.h if needed This is needed when bootstrapping libc, reallocarray.c and recallocarray.c include stdckdint.h now. Reviewed by: emaste Fixes: 7233893e9496 ("lib{c,openbsd}: use ckd_mul() for overflow checking in re(c)allocarray") Differential Revision: https://reviews.freebsd.org/D52932 (cherry picked from commit 687cb66411c7bc220ccb90cedc2f7486567d55b6) M tools/build/Makefile _____________________________________________________________________________________________________________ Commit: 6391876d20ba14de3ee0704e6f77d6d14ef8d672 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6391876d20ba14de3ee0704e6f77d6d14ef8d672 Author: Andrew Griffiths (Thu 20 Aug 2026 15:30:03 BST) Committer: Mark Johnston (Wed 2 Sep 2026 18:40:28 BST) rsu: add a runtime TX buffer bound check for a kernel buffer overflow The rsu driver currently relies on a `KASSERT` to prove that the mbuf payload plus TX descriptor fits in the per-transfer USB TX buffer. On production kernels without `INVARIANTS`, an oversized raw 802.11 frame can reach `m_copydata()` and overwrite past that buffer, causing local kernel memory corruption. This suggested patch replaces the assertion-only guard with a runtime size check before the copy. Oversized frames return `EMSGSIZE`, leaving the existing caller cleanup paths responsible for freeing `m0`, `ni`, and the unused transfer buffer. Reachable via root / bpf access Reviewed by: bz, adrian MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D58898 (cherry picked from commit 81a67bfebc60055bbf19ce6e39537fb5f53eeee5) M sys/dev/usb/wlan/if_rsu.c _____________________________________________________________________________________________________________ Commit: 6484d5547fb00aa65d5abdf203c21d4486ad771a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6484d5547fb00aa65d5abdf203c21d4486ad771a Author: Andrew Griffiths (Thu 20 Aug 2026 15:29:53 BST) Committer: Mark Johnston (Wed 2 Sep 2026 18:40:28 BST) mtw: fix zero-length queue array that can corrupt struct mtw_softc The mtw softc declares sc_epq with MTW_BULK_RX even though MTW_BULK_RX is enum value 0, while initialization and queue handling index up to MTW_EP_QUEUES; attaching a matching USB WLAN device can drive writes past the absent array and corrupt adjacent softc fields. This suggested patch sizes sc_epq with MTW_EP_QUEUES so the softc contains the endpoint queues the driver initializes and uses. Fixes: c14b01624261 ("mt7601U: Importing if_mtw from OpenBSD") Reviewed by: bz MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D58897 (cherry picked from commit 7e9e72bee359437b9f78c6a4056ef0a90337f341) M sys/dev/usb/wlan/if_mtwvar.h _____________________________________________________________________________________________________________ Commit: 8b4365741e839683f49f812f2b116549cded7412 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8b4365741e839683f49f812f2b116549cded7412 Author: Mark Johnston (Fri 31 Jul 2026 13:56:45 BST) Committer: Mark Johnston (Wed 2 Sep 2026 18:40:28 BST) amd64: Mark the trapframe as initialized in ipi_bitmap_handler() Fixes: fdc1f3450634 ("x86: change signatures of ipi_{bitmap,swi}_handler() to take pointer") MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit b566e0a7232b4989e79df95c2f02bdedef3ac4e7) M sys/x86/x86/mp_x86.c _____________________________________________________________________________________________________________ Commit: 8af9d5e04a21be6160a8d55f7d04526646ef56e2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8af9d5e04a21be6160a8d55f7d04526646ef56e2 Author: Nimish Jain (Tue 18 Aug 2026 15:41:38 BST) Committer: Mark Johnston (Wed 2 Sep 2026 18:40:28 BST) virtio_p9fs: Disallow detach if a session is in progress PR: 295453 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295453 ) Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D57500 (cherry picked from commit b39457bb1566912062b2df551b7b8d429b8ba0da) M sys/dev/virtio/p9fs/virtio_p9fs.c _____________________________________________________________________________________________________________ Commit: e2315ce0b6df8a0347e32e2c8b6f02a457b564da URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e2315ce0b6df8a0347e32e2c8b6f02a457b564da Author: Cy Schubert (Wed 11 Feb 2026 19:30:38 GMT) Committer: Cy Schubert (Wed 2 Sep 2026 15:13:13 BST) ipfilter: Avoid negative array indicies Array indices must always be posive. We avoid this by making each index unsigned. This mitigates out-of-bounds reads and writes. Reported by: Ilja Van Sprundel Reviewed by: glebius Differential revision: https://reviews.freebsd.org/D55260 (cherry picked from commit 3fdbd8a07a2dcb8fe3cec19fc59ef064453e4755) M sys/netpfil/ipfilter/netinet/fil.c M sys/netpfil/ipfilter/netinet/ip_fil.h M sys/netpfil/ipfilter/netinet/ip_state.c _____________________________________________________________________________________________________________ Commit: eab989e6a1aa563c255d61cec67cbd9d16a4d85d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=eab989e6a1aa563c255d61cec67cbd9d16a4d85d Author: John Baldwin (Thu 25 Jun 2026 16:37:55 BST) Committer: Ed Maste (Wed 2 Sep 2026 14:52:31 BST) makefs: Fix build on systems without st_birthtime such as Linux Reviewed by: emaste Fixes: 0a301f33306c ("makefs cd9660: Populate creation time stamps in RockRidge extensions") Pull Request: https://github.com/freebsd/freebsd-src/pull/2297 (cherry picked from commit 4e57c2aa307d34ca6e44f01c6fd671734ed5e486) M usr.sbin/makefs/cd9660/iso9660_rrip.c _____________________________________________________________________________________________________________ Commit: fd5a8d6911072c2fa9f42fa3495dd03da75878a1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fd5a8d6911072c2fa9f42fa3495dd03da75878a1 Author: John Baldwin (Tue 23 Jun 2026 16:51:43 BST) Committer: Ed Maste (Wed 2 Sep 2026 14:52:31 BST) makefs cd9660: Populate creation time stamps in RockRidge extensions Differential Revision: https://reviews.freebsd.org/D57527 (cherry picked from commit 0a301f33306c07e629a2423827238aaef85f5d68) M usr.sbin/makefs/cd9660/iso9660_rrip.c _____________________________________________________________________________________________________________ Commit: de60db7469f057748435281d147143f3c8b35474 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=de60db7469f057748435281d147143f3c8b35474 Author: Xuqing Yang (Tue 18 Aug 2026 21:17:44 BST) Committer: Christos Margiolis (Wed 2 Sep 2026 10:38:58 BST) bcm2835_audio: Comment out vchi_service_release() bcm2835_audio_release() calls vchi_service_close() and then unconditionally calls vchi_service_release() with the same service handle. In the VCHI shim implementation, a successful vchi_service_close() calls service_free(service). The subsequent vchi_service_release() therefore dereferences a freed SHIM_SERVICE_T object when it reads service->handle, resulting in a use-after-free panic. vchi_service_release(), however, releases a reference which might block vchi_service_close() from completing successfuly, so comment it out instead of removing it altogether, until further testing is done. PR: 297187 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297187 ) MFC after: 2 weeks Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D58921 (cherry picked from commit 95c04b25323d59da43203a08e56db141ac37181b) M sys/arm/broadcom/bcm2835/bcm2835_audio.c _____________________________________________________________________________________________________________ Commit: 61c2141f50e689f835d0f2c15a98930c66ec917c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=61c2141f50e689f835d0f2c15a98930c66ec917c Author: Ed Maste (Tue 18 Nov 2025 13:21:03 GMT) Committer: Ed Maste (Tue 1 Sep 2026 15:01:56 BST) diff3: Use a format string to quiet a compiler warning And bump WARNS to 2 (cherry picked from commit fd52a9becc62f721ad6a61c7301559afaedee010) M contrib/diff/src/diff3.c M gnu/usr.bin/diff3/Makefile _____________________________________________________________________________________________________________ Commit: 30211e66b98991aca28b61ec6b28ed108702d14f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=30211e66b98991aca28b61ec6b28ed108702d14f Author: Steve Kargl (Wed 29 Jul 2026 12:45:42 BST) Committer: Robert Clausecker (Tue 1 Sep 2026 10:37:28 BST) msun: add asinpi, acospi, and atanpi This commit implements the inverse half-cycle trigonometric functions: asinpi(x) = asin(x) / pi Eq. (1) acospi(x) = acos(x) / pi atanpi(x) = atan(x) / pi Implemention details are contained in src/s_asinpi.c and src/a_atanpi.c, where the details for acospi(x) appear in the former. ************* CAVEAT EMPTOR: The ld128 code has been only compiled. It has not been tested for correctness due to lack of hardware. ************* Code compiled on AMD Ryzen 7 7700X system run FreeBSD 16.0-CURRENT main-n284956-de9fe28ab847. Exhaustive testing of acospif(x), asinpif(x), and atanpif(x) on the indicated intervals yields % ./tlibm acospi -fPE -x 0x1p-120 -X 1 Interval tested for acospif: [7.52316e-37,1] ulp <= 0.5: 99.627% 1002878299 | 99.627% 1002878299 0.5 < ulp <= 0.6: 0.277% 2789599 | 99.904% 1005667898 0.6 < ulp <= 0.7: 0.096% 965062 | 100.000% 1006632960 Max ulp: 0.63661975 at 5.96046412e-08 0x1.fffffep-25 % ./tlibm asinpi -fPED -x 0x1p-120f -X 1.f Interval tested for asinpif: [7.52316e-37,1] ulp <= 0.5: 99.851% 1005129353 | 99.851% 1005129353 0.5 < ulp <= 0.6: 0.149% 1501097 | 100.000% 1006630450 0.6 < ulp <= 0.7: 0.000% 2510 | 100.000% 1006632960 Max ulp: 0.68957579 at 5.04878759e-01 0x1.027f78p-1 % ./tlibm atanpi -fPE -x 0x1p-120 -X max > zatanpif.txt & Interval tested for atanpif: [7.52316e-37,3.40282e+38] ulp <= 0.5: 99.865% 2077574602 | 99.865% 2077574602 0.5 < ulp <= 0.6: 0.131% 2735011 | 99.997% 2080309613 0.6 < ulp <= 0.7: 0.003% 65170 | 100.000% 2080374783 Max ulp: 0.68433094 at 5.01186252e-01 0x1.009b7cp-1 Testing the double and long double version cannot be done in an exhaustive manner. For 300 M values, uniformily distributed in the indicated interals, one finds the max ULP: Interval tested for acospi: [9.31323e-10,0.25] xm = 2.4423788416892520e-01, /* 0x3fcf432f, 0xde79920f */ libm = 4.2146222480005391e-01, /* 0x3fdaf93c, 0xb201001c */ mpfr = 4.2146222480005396e-01, /* 0x3fdaf93c, 0xb201001d */ ULP = 0.50499351466286857 Interval tested for acospi: [0.25,0.5] xm = 4.9689430915631438e-01, /* 0x3fdfcd1d, 0xc9d945c6 */ libm = 3.3447366122373884e-01, /* 0x3fd56804, 0x371513ef */ mpfr = 3.3447366122373889e-01, /* 0x3fd56804, 0x371513f0 */ ULP = 0.57195275455053829 Interval tested for acospi: [0.5,0.75] xm = 5.0238623667462079e-01, /* 0x3fe0138c, 0x4d0f4be0 */ libm = 3.3245556599062825e-01, /* 0x3fd546f3, 0xb5d36303 */ mpfr = 3.3245556599062820e-01, /* 0x3fd546f3, 0xb5d36302 */ ULP = 0.63427929243758807 Interval tested for acospi: [0.75,1] xm = 7.5853651919512177e-01, /* 0x3fe845ee, 0x60d8789f */ libm = 2.2591472240382732e-01, /* 0x3fcceac6, 0x0c3465ce */ mpfr = 2.2591472240382729e-01, /* 0x3fcceac6, 0x0c3465cd */ ULP = 0.56915750216472161 Interval tested for asinpi: [9.31323e-10,0.25] xm = 1.9502362835488171e-01, /* 0x3fc8f688, 0xc4dda0fb */ libm = 6.2478354989018887e-02, /* 0x3faffd29, 0xb6c57c61 */ mpfr = 6.2478354989018881e-02, /* 0x3faffd29, 0xb6c57c60 */ ULP = 0.52347765415885006 Interval tested for asinpi: [0.25,0.5] xm = 4.9937103583123676e-01, /* 0x3fdff5b1, 0xeeddbf62 */ libm = 1.6643553767987129e-01, /* 0x3fc54dc2, 0x7b9d15a4 */ mpfr = 1.6643553767987126e-01, /* 0x3fc54dc2, 0x7b9d15a3 */ ULP = 0.66214688371031072 Interval tested for asinpi: [0.5,0.75] xm = 5.0228515250761718e-01, /* 0x3fe012b8, 0x4fe92bbb */ libm = 1.6750722213679006e-01, /* 0x3fc570e0, 0x6c75edd5 */ mpfr = 1.6750722213679009e-01, /* 0x3fc570e0, 0x6c75edd6 */ ULP = 0.78223048105528226 Interval tested for asinpi: [0.75,1] xm = 7.5425933001419776e-01, /* 0x3fe822e4, 0x7663a4aa */ libm = 2.7200385380185182e-01, /* 0x3fd16882, 0xda1dc13b */ mpfr = 2.7200385380185188e-01, /* 0x3fd16882, 0xda1dc13c */ ULP = 0.53747973176773822 Interval tested for atanpi: [9.31323e-10,0.25] xm = 1.9666113418757322e-01, /* 0x3fc92c31, 0x29dd6d2f */ libm = 6.1810387818117797e-02, /* 0x3fafa59c, 0x7476baa5 */ mpfr = 6.1810387818117804e-02, /* 0x3fafa59c, 0x7476baa6 */ ULP = 0.54674297446584263 Interval tested for atanpi: [0.25,0.5] xm = 4.1312119637707068e-01, /* 0x3fda7093, 0xe2ee5494 */ libm = 1.2470309560460152e-01, /* 0x3fbfec8a, 0xc554ebec */ mpfr = 1.2470309560460154e-01, /* 0x3fbfec8a, 0xc554ebed */ ULP = 0.73116638175113347 Interval tested for atanpi: [0.5,0.75] xm = 5.0018949583396499e-01, /* 0x3fe0018d, 0x66cd1b82 */ libm = 1.4763186871058706e-01, /* 0x3fc2e599, 0xdffacb8f */ mpfr = 1.4763186871058709e-01, /* 0x3fc2e599, 0xdffacb90 */ ULP = 0.69192753950764663 Interval tested for atanpi: [0.75,1] xm = 7.5007880583359599e-01, /* 0x3fe800a5, 0x448f4c03 */ libm = 2.0484881828445453e-01, /* 0x3fca387c, 0x6f93f71f */ mpfr = 2.0484881828445450e-01, /* 0x3fca387c, 0x6f93f71e */ ULP = 0.65765471872064396 Interval tested for atanpi: [1,2] xm = 1.0103228000344093e+00, /* 0x3ff02a48, 0x3d88d0a2 */ libm = 2.5163447403817019e-01, /* 0x3fd01ac7, 0x7b229108 */ mpfr = 2.5163447403817013e-01, /* 0x3fd01ac7, 0x7b229107 */ ULP = 0.67409519689166042 Interval tested for atanpi: [2,4] xm = 2.0231383267437946e+00, /* 0x40002f63, 0x25a530a9 */ libm = 3.5387589538123299e-01, /* 0x3fd6a5e7, 0x156053c6 */ mpfr = 3.5387589538123293e-01, /* 0x3fd6a5e7, 0x156053c5 */ ULP = 0.69695587476021503 Interval tested for atanpi: [4,1.79769e+308] xm = 4.0000000000000000e+00, /* 0x40100000, 0x00000000 */ libm = 4.2202086962263069e-01, /* 0x3fdb0263, 0xd2508e31 */ mpfr = 4.2202086962263069e-01, /* 0x3fdb0263, 0xd2508e31 */ ULP = 0.27709400511686716 PR: 295884 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295884 ) MFC after: 1 month Reviewed by: fuz (cherry picked from commit ae417b3194e76ce26065dc20281493ee83619879) M lib/msun/Makefile M lib/msun/Symbol.map A lib/msun/ld128/s_asinpil.c A lib/msun/ld128/s_atanpil.c A lib/msun/ld80/s_asinpil.c A lib/msun/ld80/s_atanpil.c A lib/msun/man/acospi.3 A lib/msun/man/asinpi.3 A lib/msun/man/atanpi.3 M lib/msun/src/math.h M lib/msun/src/math_private.h A lib/msun/src/s_asinpi.c A lib/msun/src/s_asinpif.c A lib/msun/src/s_atanpi.c A lib/msun/src/s_atanpif.c _____________________________________________________________________________________________________________ Commit: fb1a13fbc12e5edf6ea76954d3961b366a9a2a3f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fb1a13fbc12e5edf6ea76954d3961b366a9a2a3f Author: Faraz Vahedi (Sat 27 Jun 2026 14:34:21 BST) Committer: Robert Clausecker (Tue 1 Sep 2026 10:36:42 BST) libc: Add strfromd, strfromf, and strfroml per C23 strfromd(), strfromf(), and strfroml() are implemented directly in terms of gdtoa. If a non-conforming format string is passed, the string "EDOOFUS" is returned and errno set to EDOOFUS as an extension. Reviewed by: fuz MFC after: 1 month Pull-Request: https://github.com/freebsd/freebsd-src/pull/2301 Signed-off-by: Faraz Vahedi (cherry picked from commit f68d7bfc1479042184e09431bd55771c50c47f68) M include/stdlib.h M lib/libc/stdlib/Makefile.inc M lib/libc/stdlib/Symbol.map A lib/libc/stdlib/strfrom.c A lib/libc/stdlib/strfrom.h A lib/libc/stdlib/strfromd.3 A lib/libc/stdlib/strfromd.c A lib/libc/stdlib/strfromf.c A lib/libc/stdlib/strfroml.c M lib/libc/tests/stdlib/Makefile A lib/libc/tests/stdlib/strfrom_test.c _____________________________________________________________________________________________________________ Commit: aa85e7aa36bb9651130ea6f25e830235db4e5f5c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=aa85e7aa36bb9651130ea6f25e830235db4e5f5c Author: Sobczyk, Pawel (Tue 18 Aug 2026 09:10:54 BST) Committer: Krzysztof Galazka (Tue 1 Sep 2026 10:03:21 BST) ix(4): Sanitize negative error codes Due to development history FreeBSD driver error codes are reported the same way as in Linux (as negatives) which is inconsistent with FreeBSD standard. It may cause unexpected behavior when driver errors are interpreted by a kernel as syscall handler return values. This patch converts error codes from negative to positive values for NVM access functions. Signed-off-by: Pawel Sobczyk Reviewed by: kbowling, erj, milosz.linkiewicz_intel.com Tested by: Mateusz Moga Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D57642 (cherry picked from commit 33e2eac3e3e738daa95a06f42d6c661b87ad9aac) M sys/dev/ixgbe/if_ix.c _____________________________________________________________________________________________________________ Commit: 63e9ab9f31df52ddf11146b9cb04ac041dcfec61 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=63e9ab9f31df52ddf11146b9cb04ac041dcfec61 Author: Krzysztof Galazka (Mon 17 Aug 2026 10:17:46 BST) Committer: Krzysztof Galazka (Tue 1 Sep 2026 10:02:57 BST) ix(4): Remove workaround for 2.5/5G speeds on E610 The problem observed on X550 adapters with 2.5 and 5 Gbps speeds negotiation on some switches is not affecting E610 adapters. Remove workaround, which omitted those speeds in the list of initially advertised speeds and advertise all speeds supported by adapter. Signed-off-by: Krzysztof Galazka Reviewed by: kbowling Tested by: Mateusz Moga Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D57339 (cherry picked from commit 62d5d119ee7d935ac05966f1c7c4333c33c4f3a9) M sys/dev/ixgbe/ixgbe_e610.c _____________________________________________________________________________________________________________ Commit: 793abbf91f7fe16c435c415c41b52c4e918e4204 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=793abbf91f7fe16c435c415c41b52c4e918e4204 Author: Siva Mahadevan (Thu 20 Aug 2026 05:18:43 BST) Committer: Siva Mahadevan (Tue 1 Sep 2026 10:02:12 BST) tarfs: allow mounting inside jails Reviewed by: des MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58833 (cherry picked from commit ba99013a4464c2f3e8cc0a89c23d03810dc2d37e) M sys/fs/tarfs/tarfs_vfsops.c M usr.sbin/jail/jail.8 _____________________________________________________________________________________________________________ Commit: 57bc966e65aeba3273fe0c860e23af439af524ba URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=57bc966e65aeba3273fe0c860e23af439af524ba Author: Siva Mahadevan (Thu 20 Aug 2026 05:17:45 BST) Committer: Siva Mahadevan (Tue 1 Sep 2026 10:02:12 BST) tarfs: remove PRIV_VFS_MOUNT_PERM check The backing file is already opened successfully, so there is no need to override the permissions. Reviewed by: des MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58832 (cherry picked from commit 4d524915233092d71b309b49d9743012cb05c11e) M sys/fs/tarfs/tarfs_vfsops.c _____________________________________________________________________________________________________________ Commit: f659997ccee7f74a310412e4e95086fbc35a4145 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f659997ccee7f74a310412e4e95086fbc35a4145 Author: Siva Mahadevan (Wed 12 Aug 2026 19:45:52 BST) Committer: Siva Mahadevan (Tue 1 Sep 2026 10:02:12 BST) rc_subr_test: ignore stderr in no_cycles test nuageinit_user_data_script references 'firstboot_freebsd_update' and 'firstboot_pkg_upgrade', which are from Ports. In a default base system test without sysutils/firstboot-freebsd-update and sysutils/firstboot-pkg-upgrade, rcorder will warn on "unknown provisions" to stderr, but is otherwise harmless. Reviewed by: arrowd Fixes: 16e47f317c4ce2be5fed530bf8a9af9f9bf55364 MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit 3c33729ce2f421e2a583f19f85a181968aa310de) M libexec/rc/tests/rc_subr_test.sh _____________________________________________________________________________________________________________ Commit: fd35c63a351ec80d31a2c6b46283e9eded9e64f8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fd35c63a351ec80d31a2c6b46283e9eded9e64f8 Author: Krzysztof Galazka (Mon 17 Aug 2026 16:46:39 BST) Committer: Krzysztof Galazka (Tue 1 Sep 2026 09:53:14 BST) ice(4): Add two more 4-part IDs for E835 adapters Two additional subdevice IDs were introduced to distinguish between adapters with and without manageability over USB support. Signed-off-by: Krzysztof Galazka Reviewed by: erj Tested by: Mateusz Moga Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D57337 (cherry picked from commit f370d9e4d5844daa06d77e57236e03bd7c5f4ba1) M sys/dev/ice/ice_drv_info.h _____________________________________________________________________________________________________________ Commit: ecc16dd11ba2d8f8468396327cba512867693b09 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ecc16dd11ba2d8f8468396327cba512867693b09 Author: Enji Cooper (Sat 29 Aug 2026 03:26:19 BST) Committer: Enji Cooper (Tue 1 Sep 2026 09:16:05 BST) crypto/openssl: add manpages missed in related commit MFC with: 78e936b2d Fixes: 0d4d0f3a9 ("crypto/openssl: update generated content ...") Reported by: Jenkins CI (cherry picked from commit 19c1fe2d0c8f0001558c20f134be624241418191) A secure/lib/libcrypto/man/man3/NAME_CONSTRAINTS_check.3 A secure/lib/libcrypto/man/man3/OPENSSL_armcap.3 _____________________________________________________________________________________________________________ Commit: a281913660fe7b162a230d2455536013a0e041b1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a281913660fe7b162a230d2455536013a0e041b1 Author: Enji Cooper (Sat 29 Aug 2026 02:41:30 BST) Committer: Enji Cooper (Tue 1 Sep 2026 09:16:05 BST) crypto/openssl: update generated content to match 3.5.8 release This contains 2 new manpages as well as some minor manpage content changes. MFC with: 78e936b2d (cherry picked from commit 0d4d0f3a9f229f9e822b43234b0ff72e7223f19f) M crypto/openssl/exporters/libcrypto.pc M crypto/openssl/exporters/libssl.pc M crypto/openssl/exporters/openssl.pc M crypto/openssl/include/openssl/opensslv.h M crypto/openssl/include/openssl/ssl.h M secure/lib/libcrypto/man/man3/ADMISSIONS.3 M secure/lib/libcrypto/man/man3/ASN1_EXTERN_FUNCS.3 M secure/lib/libcrypto/man/man3/ASN1_INTEGER_get_int64.3 M secure/lib/libcrypto/man/man3/ASN1_INTEGER_new.3 M secure/lib/libcrypto/man/man3/ASN1_ITEM_lookup.3 M secure/lib/libcrypto/man/man3/ASN1_OBJECT_new.3 M secure/lib/libcrypto/man/man3/ASN1_STRING_TABLE_add.3 M secure/lib/libcrypto/man/man3/ASN1_STRING_length.3 M secure/lib/libcrypto/man/man3/ASN1_STRING_new.3 M secure/lib/libcrypto/man/man3/ASN1_STRING_print_ex.3 M secure/lib/libcrypto/man/man3/ASN1_TIME_set.3 M secure/lib/libcrypto/man/man3/ASN1_TYPE_get.3 M secure/lib/libcrypto/man/man3/ASN1_aux_cb.3 M secure/lib/libcrypto/man/man3/ASN1_generate_nconf.3 M secure/lib/libcrypto/man/man3/ASN1_item_d2i_bio.3 M secure/lib/libcrypto/man/man3/ASN1_item_new.3 M secure/lib/libcrypto/man/man3/ASN1_item_sign.3 M secure/lib/libcrypto/man/man3/ASYNC_WAIT_CTX_new.3 M secure/lib/libcrypto/man/man3/ASYNC_start_job.3 M secure/lib/libcrypto/man/man3/BF_encrypt.3 M secure/lib/libcrypto/man/man3/BIO_ADDR.3 M secure/lib/libcrypto/man/man3/BIO_ADDRINFO.3 M secure/lib/libcrypto/man/man3/BIO_connect.3 M secure/lib/libcrypto/man/man3/BIO_ctrl.3 M secure/lib/libcrypto/man/man3/BIO_f_base64.3 M secure/lib/libcrypto/man/man3/BIO_f_buffer.3 M secure/lib/libcrypto/man/man3/BIO_f_cipher.3 M secure/lib/libcrypto/man/man3/BIO_f_md.3 M secure/lib/libcrypto/man/man3/BIO_f_null.3 M secure/lib/libcrypto/man/man3/BIO_f_prefix.3 M secure/lib/libcrypto/man/man3/BIO_f_readbuffer.3 M secure/lib/libcrypto/man/man3/BIO_f_ssl.3 M secure/lib/libcrypto/man/man3/BIO_find_type.3 M secure/lib/libcrypto/man/man3/BIO_get_data.3 M secure/lib/libcrypto/man/man3/BIO_get_ex_new_index.3 M secure/lib/libcrypto/man/man3/BIO_get_rpoll_descriptor.3 M secure/lib/libcrypto/man/man3/BIO_meth_new.3 M secure/lib/libcrypto/man/man3/BIO_new.3 M secure/lib/libcrypto/man/man3/BIO_new_CMS.3 M secure/lib/libcrypto/man/man3/BIO_parse_hostserv.3 M secure/lib/libcrypto/man/man3/BIO_printf.3 M secure/lib/libcrypto/man/man3/BIO_push.3 M secure/lib/libcrypto/man/man3/BIO_read.3 M secure/lib/libcrypto/man/man3/BIO_s_accept.3 M secure/lib/libcrypto/man/man3/BIO_s_bio.3 M secure/lib/libcrypto/man/man3/BIO_s_connect.3 M secure/lib/libcrypto/man/man3/BIO_s_core.3 M secure/lib/libcrypto/man/man3/BIO_s_datagram.3 M secure/lib/libcrypto/man/man3/BIO_s_dgram_pair.3 M secure/lib/libcrypto/man/man3/BIO_s_fd.3 M secure/lib/libcrypto/man/man3/BIO_s_file.3 M secure/lib/libcrypto/man/man3/BIO_s_mem.3 M secure/lib/libcrypto/man/man3/BIO_s_null.3 M secure/lib/libcrypto/man/man3/BIO_s_socket.3 M secure/lib/libcrypto/man/man3/BIO_sendmmsg.3 M secure/lib/libcrypto/man/man3/BIO_set_callback.3 M secure/lib/libcrypto/man/man3/BIO_set_flags.3 M secure/lib/libcrypto/man/man3/BIO_should_retry.3 M secure/lib/libcrypto/man/man3/BIO_socket_wait.3 M secure/lib/libcrypto/man/man3/BN_BLINDING_new.3 M secure/lib/libcrypto/man/man3/BN_CTX_new.3 M secure/lib/libcrypto/man/man3/BN_CTX_start.3 M secure/lib/libcrypto/man/man3/BN_add.3 M secure/lib/libcrypto/man/man3/BN_add_word.3 M secure/lib/libcrypto/man/man3/BN_bn2bin.3 M secure/lib/libcrypto/man/man3/BN_cmp.3 M secure/lib/libcrypto/man/man3/BN_copy.3 M secure/lib/libcrypto/man/man3/BN_generate_prime.3 M secure/lib/libcrypto/man/man3/BN_mod_exp_mont.3 M secure/lib/libcrypto/man/man3/BN_mod_inverse.3 M secure/lib/libcrypto/man/man3/BN_mod_mul_montgomery.3 M secure/lib/libcrypto/man/man3/BN_mod_mul_reciprocal.3 M secure/lib/libcrypto/man/man3/BN_new.3 M secure/lib/libcrypto/man/man3/BN_num_bytes.3 M secure/lib/libcrypto/man/man3/BN_rand.3 M secure/lib/libcrypto/man/man3/BN_security_bits.3 M secure/lib/libcrypto/man/man3/BN_set_bit.3 M secure/lib/libcrypto/man/man3/BN_swap.3 M secure/lib/libcrypto/man/man3/BN_zero.3 M secure/lib/libcrypto/man/man3/BUF_MEM_new.3 M secure/lib/libcrypto/man/man3/CMAC_CTX.3 M secure/lib/libcrypto/man/man3/CMS_EncryptedData_decrypt.3 M secure/lib/libcrypto/man/man3/CMS_EncryptedData_encrypt.3 M secure/lib/libcrypto/man/man3/CMS_EncryptedData_set1_key.3 M secure/lib/libcrypto/man/man3/CMS_EnvelopedData_create.3 M secure/lib/libcrypto/man/man3/CMS_add0_cert.3 M secure/lib/libcrypto/man/man3/CMS_add1_recipient_cert.3 M secure/lib/libcrypto/man/man3/CMS_add1_signer.3 M secure/lib/libcrypto/man/man3/CMS_compress.3 M secure/lib/libcrypto/man/man3/CMS_data_create.3 M secure/lib/libcrypto/man/man3/CMS_decrypt.3 M secure/lib/libcrypto/man/man3/CMS_digest_create.3 M secure/lib/libcrypto/man/man3/CMS_encrypt.3 M secure/lib/libcrypto/man/man3/CMS_final.3 M secure/lib/libcrypto/man/man3/CMS_get0_RecipientInfos.3 M secure/lib/libcrypto/man/man3/CMS_get0_SignerInfos.3 M secure/lib/libcrypto/man/man3/CMS_get0_type.3 M secure/lib/libcrypto/man/man3/CMS_get1_ReceiptRequest.3 M secure/lib/libcrypto/man/man3/CMS_sign.3 M secure/lib/libcrypto/man/man3/CMS_sign_receipt.3 M secure/lib/libcrypto/man/man3/CMS_signed_get_attr.3 M secure/lib/libcrypto/man/man3/CMS_uncompress.3 M secure/lib/libcrypto/man/man3/CMS_verify.3 M secure/lib/libcrypto/man/man3/CMS_verify_receipt.3 M secure/lib/libcrypto/man/man3/COMP_CTX_new.3 M secure/lib/libcrypto/man/man3/CONF_modules_free.3 M secure/lib/libcrypto/man/man3/CONF_modules_load_file.3 M secure/lib/libcrypto/man/man3/CRYPTO_THREAD_run_once.3 M secure/lib/libcrypto/man/man3/CRYPTO_get_ex_new_index.3 M secure/lib/libcrypto/man/man3/CRYPTO_memcmp.3 M secure/lib/libcrypto/man/man3/CTLOG_STORE_get0_log_by_id.3 M secure/lib/libcrypto/man/man3/CTLOG_STORE_new.3 M secure/lib/libcrypto/man/man3/CTLOG_new.3 M secure/lib/libcrypto/man/man3/CT_POLICY_EVAL_CTX_new.3 M secure/lib/libcrypto/man/man3/DEFINE_STACK_OF.3 M secure/lib/libcrypto/man/man3/DES_random_key.3 M secure/lib/libcrypto/man/man3/DH_generate_key.3 M secure/lib/libcrypto/man/man3/DH_generate_parameters.3 M secure/lib/libcrypto/man/man3/DH_get0_pqg.3 M secure/lib/libcrypto/man/man3/DH_get_1024_160.3 M secure/lib/libcrypto/man/man3/DH_meth_new.3 M secure/lib/libcrypto/man/man3/DH_new.3 M secure/lib/libcrypto/man/man3/DH_new_by_nid.3 M secure/lib/libcrypto/man/man3/DH_set_method.3 M secure/lib/libcrypto/man/man3/DH_size.3 M secure/lib/libcrypto/man/man3/DSA_SIG_new.3 M secure/lib/libcrypto/man/man3/DSA_do_sign.3 M secure/lib/libcrypto/man/man3/DSA_dup_DH.3 M secure/lib/libcrypto/man/man3/DSA_generate_key.3 M secure/lib/libcrypto/man/man3/DSA_generate_parameters.3 M secure/lib/libcrypto/man/man3/DSA_get0_pqg.3 M secure/lib/libcrypto/man/man3/DSA_meth_new.3 M secure/lib/libcrypto/man/man3/DSA_new.3 M secure/lib/libcrypto/man/man3/DSA_set_method.3 M secure/lib/libcrypto/man/man3/DSA_sign.3 M secure/lib/libcrypto/man/man3/DSA_size.3 M secure/lib/libcrypto/man/man3/DTLS_get_data_mtu.3 M secure/lib/libcrypto/man/man3/DTLS_set_timer_cb.3 M secure/lib/libcrypto/man/man3/DTLSv1_get_timeout.3 M secure/lib/libcrypto/man/man3/DTLSv1_handle_timeout.3 M secure/lib/libcrypto/man/man3/DTLSv1_listen.3 M secure/lib/libcrypto/man/man3/ECDSA_SIG_new.3 M secure/lib/libcrypto/man/man3/ECDSA_sign.3 M secure/lib/libcrypto/man/man3/ECPKParameters_print.3 M secure/lib/libcrypto/man/man3/EC_GFp_simple_method.3 M secure/lib/libcrypto/man/man3/EC_GROUP_copy.3 M secure/lib/libcrypto/man/man3/EC_GROUP_new.3 M secure/lib/libcrypto/man/man3/EC_KEY_get_enc_flags.3 M secure/lib/libcrypto/man/man3/EC_KEY_new.3 M secure/lib/libcrypto/man/man3/EC_POINT_add.3 M secure/lib/libcrypto/man/man3/EC_POINT_new.3 M secure/lib/libcrypto/man/man3/ENGINE_add.3 M secure/lib/libcrypto/man/man3/ERR_GET_LIB.3 M secure/lib/libcrypto/man/man3/ERR_clear_error.3 M secure/lib/libcrypto/man/man3/ERR_error_string.3 M secure/lib/libcrypto/man/man3/ERR_get_error.3 M secure/lib/libcrypto/man/man3/ERR_load_crypto_strings.3 M secure/lib/libcrypto/man/man3/ERR_load_strings.3 M secure/lib/libcrypto/man/man3/ERR_new.3 M secure/lib/libcrypto/man/man3/ERR_print_errors.3 M secure/lib/libcrypto/man/man3/ERR_put_error.3 M secure/lib/libcrypto/man/man3/ERR_remove_state.3 M secure/lib/libcrypto/man/man3/ERR_set_mark.3 M secure/lib/libcrypto/man/man3/EVP_ASYM_CIPHER_free.3 M secure/lib/libcrypto/man/man3/EVP_BytesToKey.3 M secure/lib/libcrypto/man/man3/EVP_CIPHER_CTX_get_app_data.3 M secure/lib/libcrypto/man/man3/EVP_CIPHER_CTX_get_cipher_data.3 M secure/lib/libcrypto/man/man3/EVP_CIPHER_CTX_get_original_iv.3 M secure/lib/libcrypto/man/man3/EVP_CIPHER_meth_new.3 M secure/lib/libcrypto/man/man3/EVP_DigestInit.3 M secure/lib/libcrypto/man/man3/EVP_DigestSignInit.3 M secure/lib/libcrypto/man/man3/EVP_DigestVerifyInit.3 M secure/lib/libcrypto/man/man3/EVP_EncodeInit.3 M secure/lib/libcrypto/man/man3/EVP_EncryptInit.3 M secure/lib/libcrypto/man/man3/EVP_KDF.3 M secure/lib/libcrypto/man/man3/EVP_KEM_free.3 M secure/lib/libcrypto/man/man3/EVP_KEYEXCH_free.3 M secure/lib/libcrypto/man/man3/EVP_KEYMGMT.3 M secure/lib/libcrypto/man/man3/EVP_MAC.3 M secure/lib/libcrypto/man/man3/EVP_MD_meth_new.3 M secure/lib/libcrypto/man/man3/EVP_OpenInit.3 M secure/lib/libcrypto/man/man3/EVP_PBE_CipherInit.3 M secure/lib/libcrypto/man/man3/EVP_PKEY2PKCS8.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_ASN1_METHOD.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_ctrl.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_get0_libctx.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_get0_pkey.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_get_algor.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_new.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set1_pbe_pass.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_hkdf_md.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_params.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_rsa_pss_keygen_md.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_scrypt_N.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_CTX_set_tls1_prf_md.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_asn1_get_count.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_check.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_copy_parameters.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_decapsulate.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_decrypt.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_derive.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_digestsign_supports_digest.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_encapsulate.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_encrypt.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_fromdata.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_attr.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_default_digest_nid.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_field_type.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_group_name.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_get_size.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_gettable_params.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_is_a.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_keygen.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_meth_get_count.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_meth_new.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_new.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_print_private.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_set1_RSA.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_set1_encoded_public_key.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_set_type.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_settable_params.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_sign.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_todata.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_verify.3 M secure/lib/libcrypto/man/man3/EVP_PKEY_verify_recover.3 M secure/lib/libcrypto/man/man3/EVP_RAND.3 M secure/lib/libcrypto/man/man3/EVP_SIGNATURE.3 M secure/lib/libcrypto/man/man3/EVP_SKEY.3 M secure/lib/libcrypto/man/man3/EVP_SKEYMGMT.3 M secure/lib/libcrypto/man/man3/EVP_SealInit.3 M secure/lib/libcrypto/man/man3/EVP_SignInit.3 M secure/lib/libcrypto/man/man3/EVP_VerifyInit.3 M secure/lib/libcrypto/man/man3/EVP_aes_128_gcm.3 M secure/lib/libcrypto/man/man3/EVP_aria_128_gcm.3 M secure/lib/libcrypto/man/man3/EVP_bf_cbc.3 M secure/lib/libcrypto/man/man3/EVP_blake2b512.3 M secure/lib/libcrypto/man/man3/EVP_camellia_128_ecb.3 M secure/lib/libcrypto/man/man3/EVP_cast5_cbc.3 M secure/lib/libcrypto/man/man3/EVP_chacha20.3 M secure/lib/libcrypto/man/man3/EVP_des_cbc.3 M secure/lib/libcrypto/man/man3/EVP_desx_cbc.3 M secure/lib/libcrypto/man/man3/EVP_idea_cbc.3 M secure/lib/libcrypto/man/man3/EVP_md2.3 M secure/lib/libcrypto/man/man3/EVP_md4.3 M secure/lib/libcrypto/man/man3/EVP_md5.3 M secure/lib/libcrypto/man/man3/EVP_mdc2.3 M secure/lib/libcrypto/man/man3/EVP_rc2_cbc.3 M secure/lib/libcrypto/man/man3/EVP_rc4.3 M secure/lib/libcrypto/man/man3/EVP_rc5_32_12_16_cbc.3 M secure/lib/libcrypto/man/man3/EVP_ripemd160.3 M secure/lib/libcrypto/man/man3/EVP_seed_cbc.3 M secure/lib/libcrypto/man/man3/EVP_set_default_properties.3 M secure/lib/libcrypto/man/man3/EVP_sha1.3 M secure/lib/libcrypto/man/man3/EVP_sha224.3 M secure/lib/libcrypto/man/man3/EVP_sha3_224.3 M secure/lib/libcrypto/man/man3/EVP_sm3.3 M secure/lib/libcrypto/man/man3/EVP_sm4_cbc.3 M secure/lib/libcrypto/man/man3/EVP_whirlpool.3 M secure/lib/libcrypto/man/man3/GENERAL_NAME.3 M secure/lib/libcrypto/man/man3/HMAC.3 M secure/lib/libcrypto/man/man3/MD5.3 M secure/lib/libcrypto/man/man3/MDC2_Init.3 M secure/lib/libcrypto/man/man3/Makefile M secure/lib/libcrypto/man/man3/NCONF_new_ex.3 M secure/lib/libcrypto/man/man3/OBJ_nid2obj.3 M secure/lib/libcrypto/man/man3/OCSP_REQUEST_new.3 M secure/lib/libcrypto/man/man3/OCSP_cert_to_id.3 M secure/lib/libcrypto/man/man3/OCSP_request_add1_nonce.3 M secure/lib/libcrypto/man/man3/OCSP_resp_find_status.3 M secure/lib/libcrypto/man/man3/OCSP_response_status.3 M secure/lib/libcrypto/man/man3/OCSP_sendreq_new.3 M secure/lib/libcrypto/man/man3/OPENSSL_Applink.3 M secure/lib/libcrypto/man/man3/OPENSSL_FILE.3 M secure/lib/libcrypto/man/man3/OPENSSL_LH_COMPFUNC.3 M secure/lib/libcrypto/man/man3/OPENSSL_LH_stats.3 M secure/lib/libcrypto/man/man3/OPENSSL_config.3 M secure/lib/libcrypto/man/man3/OPENSSL_fork_prepare.3 M secure/lib/libcrypto/man/man3/OPENSSL_gmtime.3 M secure/lib/libcrypto/man/man3/OPENSSL_hexchar2int.3 M secure/lib/libcrypto/man/man3/OPENSSL_ia32cap.3 M secure/lib/libcrypto/man/man3/OPENSSL_init_crypto.3 M secure/lib/libcrypto/man/man3/OPENSSL_init_ssl.3 M secure/lib/libcrypto/man/man3/OPENSSL_instrument_bus.3 M secure/lib/libcrypto/man/man3/OPENSSL_load_builtin_modules.3 M secure/lib/libcrypto/man/man3/OPENSSL_load_u16_le.3 M secure/lib/libcrypto/man/man3/OPENSSL_malloc.3 M secure/lib/libcrypto/man/man3/OPENSSL_ppccap.3 M secure/lib/libcrypto/man/man3/OPENSSL_riscvcap.3 M secure/lib/libcrypto/man/man3/OPENSSL_s390xcap.3 M secure/lib/libcrypto/man/man3/OPENSSL_secure_malloc.3 M secure/lib/libcrypto/man/man3/OPENSSL_strcasecmp.3 M secure/lib/libcrypto/man/man3/OSSL_ALGORITHM.3 M secure/lib/libcrypto/man/man3/OSSL_CALLBACK.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_ATAV_set0.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_CTX_new.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_HDR_get0_transactionID.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_ITAV_new_caCerts.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_ITAV_set0.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_MSG_get0_header.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_MSG_http_perform.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_SRV_CTX_new.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_STATUSINFO_new.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_exec_certreq.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_log_open.3 M secure/lib/libcrypto/man/man3/OSSL_CMP_validate_msg.3 M secure/lib/libcrypto/man/man3/OSSL_CORE_MAKE_FUNC.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_MSG_get0_tmpl.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_MSG_set0_validity.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_MSG_set1_regCtrl_regToken.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_MSG_set1_regInfo_certReq.3 M secure/lib/libcrypto/man/man3/OSSL_CRMF_pbmp_new.3 M secure/lib/libcrypto/man/man3/OSSL_DECODER.3 M secure/lib/libcrypto/man/man3/OSSL_DECODER_CTX.3 M secure/lib/libcrypto/man/man3/OSSL_DECODER_CTX_new_for_pkey.3 M secure/lib/libcrypto/man/man3/OSSL_DECODER_from_bio.3 M secure/lib/libcrypto/man/man3/OSSL_DISPATCH.3 M secure/lib/libcrypto/man/man3/OSSL_ENCODER.3 M secure/lib/libcrypto/man/man3/OSSL_ENCODER_CTX.3 M secure/lib/libcrypto/man/man3/OSSL_ENCODER_CTX_new_for_pkey.3 M secure/lib/libcrypto/man/man3/OSSL_ENCODER_to_bio.3 M secure/lib/libcrypto/man/man3/OSSL_ERR_STATE_save.3 M secure/lib/libcrypto/man/man3/OSSL_ESS_check_signing_certs.3 M secure/lib/libcrypto/man/man3/OSSL_GENERAL_NAMES_print.3 M secure/lib/libcrypto/man/man3/OSSL_HPKE_CTX_new.3 M secure/lib/libcrypto/man/man3/OSSL_HTTP_REQ_CTX.3 M secure/lib/libcrypto/man/man3/OSSL_HTTP_parse_url.3 M secure/lib/libcrypto/man/man3/OSSL_HTTP_transfer.3 M secure/lib/libcrypto/man/man3/OSSL_IETF_ATTR_SYNTAX.3 M secure/lib/libcrypto/man/man3/OSSL_IETF_ATTR_SYNTAX_print.3 M secure/lib/libcrypto/man/man3/OSSL_INDICATOR_set_callback.3 M secure/lib/libcrypto/man/man3/OSSL_ITEM.3 M secure/lib/libcrypto/man/man3/OSSL_LIB_CTX.3 M secure/lib/libcrypto/man/man3/OSSL_LIB_CTX_set_conf_diagnostics.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_BLD.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_allocate_from_text.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_dup.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_int.3 M secure/lib/libcrypto/man/man3/OSSL_PARAM_print_to_bio.3 M secure/lib/libcrypto/man/man3/OSSL_PROVIDER.3 M secure/lib/libcrypto/man/man3/OSSL_QUIC_client_method.3 M secure/lib/libcrypto/man/man3/OSSL_SELF_TEST_new.3 M secure/lib/libcrypto/man/man3/OSSL_SELF_TEST_set_callback.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_INFO.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_LOADER.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_SEARCH.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_attach.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_expect.3 M secure/lib/libcrypto/man/man3/OSSL_STORE_open.3 M secure/lib/libcrypto/man/man3/OSSL_sleep.3 M secure/lib/libcrypto/man/man3/OSSL_trace_enabled.3 M secure/lib/libcrypto/man/man3/OSSL_trace_get_category_num.3 M secure/lib/libcrypto/man/man3/OSSL_trace_set_channel.3 M secure/lib/libcrypto/man/man3/OpenSSL_add_all_algorithms.3 M secure/lib/libcrypto/man/man3/OpenSSL_version.3 M secure/lib/libcrypto/man/man3/PBMAC1_get1_pbkdf2_param.3 M secure/lib/libcrypto/man/man3/PEM_X509_INFO_read_bio_ex.3 M secure/lib/libcrypto/man/man3/PEM_bytes_read_bio.3 M secure/lib/libcrypto/man/man3/PEM_read.3 M secure/lib/libcrypto/man/man3/PEM_read_CMS.3 M secure/lib/libcrypto/man/man3/PEM_read_bio_PrivateKey.3 M secure/lib/libcrypto/man/man3/PEM_read_bio_ex.3 M secure/lib/libcrypto/man/man3/PEM_write_bio_CMS_stream.3 M secure/lib/libcrypto/man/man3/PEM_write_bio_PKCS7_stream.3 M secure/lib/libcrypto/man/man3/PKCS12_PBE_keyivgen.3 M secure/lib/libcrypto/man/man3/PKCS12_SAFEBAG_create_cert.3 M secure/lib/libcrypto/man/man3/PKCS12_SAFEBAG_get0_attrs.3 M secure/lib/libcrypto/man/man3/PKCS12_SAFEBAG_get1_cert.3 M secure/lib/libcrypto/man/man3/PKCS12_SAFEBAG_set0_attrs.3 M secure/lib/libcrypto/man/man3/PKCS12_add1_attr_by_NID.3 M secure/lib/libcrypto/man/man3/PKCS12_add_CSPName_asc.3 M secure/lib/libcrypto/man/man3/PKCS12_add_cert.3 M secure/lib/libcrypto/man/man3/PKCS12_add_friendlyname_asc.3 M secure/lib/libcrypto/man/man3/PKCS12_add_localkeyid.3 M secure/lib/libcrypto/man/man3/PKCS12_add_safe.3 M secure/lib/libcrypto/man/man3/PKCS12_create.3 M secure/lib/libcrypto/man/man3/PKCS12_decrypt_skey.3 M secure/lib/libcrypto/man/man3/PKCS12_gen_mac.3 M secure/lib/libcrypto/man/man3/PKCS12_get_friendlyname.3 M secure/lib/libcrypto/man/man3/PKCS12_init.3 M secure/lib/libcrypto/man/man3/PKCS12_item_decrypt_d2i.3 M secure/lib/libcrypto/man/man3/PKCS12_key_gen_utf8_ex.3 M secure/lib/libcrypto/man/man3/PKCS12_newpass.3 M secure/lib/libcrypto/man/man3/PKCS12_pack_p7encdata.3 M secure/lib/libcrypto/man/man3/PKCS12_parse.3 M secure/lib/libcrypto/man/man3/PKCS5_PBE_keyivgen.3 M secure/lib/libcrypto/man/man3/PKCS5_PBKDF2_HMAC.3 M secure/lib/libcrypto/man/man3/PKCS7_decrypt.3 M secure/lib/libcrypto/man/man3/PKCS7_encrypt.3 M secure/lib/libcrypto/man/man3/PKCS7_get_octet_string.3 M secure/lib/libcrypto/man/man3/PKCS7_sign.3 M secure/lib/libcrypto/man/man3/PKCS7_sign_add_signer.3 M secure/lib/libcrypto/man/man3/PKCS7_type_is_other.3 M secure/lib/libcrypto/man/man3/PKCS7_verify.3 M secure/lib/libcrypto/man/man3/PKCS8_encrypt.3 M secure/lib/libcrypto/man/man3/PKCS8_pkey_add1_attr.3 M secure/lib/libcrypto/man/man3/RAND_add.3 M secure/lib/libcrypto/man/man3/RAND_bytes.3 M secure/lib/libcrypto/man/man3/RAND_cleanup.3 M secure/lib/libcrypto/man/man3/RAND_egd.3 M secure/lib/libcrypto/man/man3/RAND_get0_primary.3 M secure/lib/libcrypto/man/man3/RAND_load_file.3 M secure/lib/libcrypto/man/man3/RAND_set_DRBG_type.3 M secure/lib/libcrypto/man/man3/RAND_set_rand_method.3 M secure/lib/libcrypto/man/man3/RC4_set_key.3 M secure/lib/libcrypto/man/man3/RIPEMD160_Init.3 M secure/lib/libcrypto/man/man3/RSA_blinding_on.3 M secure/lib/libcrypto/man/man3/RSA_check_key.3 M secure/lib/libcrypto/man/man3/RSA_generate_key.3 M secure/lib/libcrypto/man/man3/RSA_get0_key.3 M secure/lib/libcrypto/man/man3/RSA_meth_new.3 M secure/lib/libcrypto/man/man3/RSA_new.3 M secure/lib/libcrypto/man/man3/RSA_padding_add_PKCS1_type_1.3 M secure/lib/libcrypto/man/man3/RSA_print.3 M secure/lib/libcrypto/man/man3/RSA_private_encrypt.3 M secure/lib/libcrypto/man/man3/RSA_public_encrypt.3 M secure/lib/libcrypto/man/man3/RSA_set_method.3 M secure/lib/libcrypto/man/man3/RSA_sign.3 M secure/lib/libcrypto/man/man3/RSA_sign_ASN1_OCTET_STRING.3 M secure/lib/libcrypto/man/man3/RSA_size.3 M secure/lib/libcrypto/man/man3/SCT_new.3 M secure/lib/libcrypto/man/man3/SCT_print.3 M secure/lib/libcrypto/man/man3/SCT_validate.3 M secure/lib/libcrypto/man/man3/SHA256_Init.3 M secure/lib/libcrypto/man/man3/SMIME_read_ASN1.3 M secure/lib/libcrypto/man/man3/SMIME_read_CMS.3 M secure/lib/libcrypto/man/man3/SMIME_read_PKCS7.3 M secure/lib/libcrypto/man/man3/SMIME_write_ASN1.3 M secure/lib/libcrypto/man/man3/SMIME_write_CMS.3 M secure/lib/libcrypto/man/man3/SMIME_write_PKCS7.3 M secure/lib/libcrypto/man/man3/SRP_Calc_B.3 M secure/lib/libcrypto/man/man3/SRP_VBASE_new.3 M secure/lib/libcrypto/man/man3/SRP_create_verifier.3 M secure/lib/libcrypto/man/man3/SRP_user_pwd_new.3 M secure/lib/libcrypto/man/man3/SSL_CIPHER_get_name.3 M secure/lib/libcrypto/man/man3/SSL_COMP_add_compression_method.3 M secure/lib/libcrypto/man/man3/SSL_CONF_CTX_new.3 M secure/lib/libcrypto/man/man3/SSL_CONF_CTX_set1_prefix.3 M secure/lib/libcrypto/man/man3/SSL_CONF_CTX_set_flags.3 M secure/lib/libcrypto/man/man3/SSL_CONF_CTX_set_ssl_ctx.3 M secure/lib/libcrypto/man/man3/SSL_CONF_cmd.3 M secure/lib/libcrypto/man/man3/SSL_CONF_cmd_argv.3 M secure/lib/libcrypto/man/man3/SSL_CTX_add1_chain_cert.3 M secure/lib/libcrypto/man/man3/SSL_CTX_add_extra_chain_cert.3 M secure/lib/libcrypto/man/man3/SSL_CTX_add_session.3 M secure/lib/libcrypto/man/man3/SSL_CTX_config.3 M secure/lib/libcrypto/man/man3/SSL_CTX_ctrl.3 M secure/lib/libcrypto/man/man3/SSL_CTX_dane_enable.3 M secure/lib/libcrypto/man/man3/SSL_CTX_flush_sessions.3 M secure/lib/libcrypto/man/man3/SSL_CTX_free.3 M secure/lib/libcrypto/man/man3/SSL_CTX_get0_param.3 M secure/lib/libcrypto/man/man3/SSL_CTX_get_verify_mode.3 M secure/lib/libcrypto/man/man3/SSL_CTX_has_client_custom_ext.3 M secure/lib/libcrypto/man/man3/SSL_CTX_load_verify_locations.3 M secure/lib/libcrypto/man/man3/SSL_CTX_new.3 M secure/lib/libcrypto/man/man3/SSL_CTX_sess_number.3 M secure/lib/libcrypto/man/man3/SSL_CTX_sess_set_cache_size.3 M secure/lib/libcrypto/man/man3/SSL_CTX_sess_set_get_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_sessions.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set0_CA_list.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set1_cert_comp_preference.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set1_curves.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set1_sigalgs.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set1_verify_cert_store.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_alpn_select_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_cert_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_cert_store.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_cert_verify_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_cipher_list.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_client_cert_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_client_hello_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_ct_validation_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_ctlog_list_file.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_default_passwd_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_domain_flags.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_generate_session_id.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_info_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_keylog_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_max_cert_list.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_min_proto_version.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_mode.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_msg_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_new_pending_conn_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_num_tickets.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_options.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_psk_client_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_quiet_shutdown.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_read_ahead.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_record_padding_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_security_level.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_session_cache_mode.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_session_id_context.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_session_ticket_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_split_send_fragment.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_srp_password.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_ssl_version.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_stateless_cookie_generate_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_timeout.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_servername_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_status_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_ticket_key_cb.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tlsext_use_srtp.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tmp_dh_callback.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_tmp_ecdh.3 M secure/lib/libcrypto/man/man3/SSL_CTX_set_verify.3 M secure/lib/libcrypto/man/man3/SSL_CTX_use_certificate.3 M secure/lib/libcrypto/man/man3/SSL_CTX_use_psk_identity_hint.3 M secure/lib/libcrypto/man/man3/SSL_CTX_use_serverinfo.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_free.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get0_cipher.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get0_hostname.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get0_id_context.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get0_peer.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get_compress_id.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get_protocol_version.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_get_time.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_has_ticket.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_is_resumable.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_print.3 M secure/lib/libcrypto/man/man3/SSL_SESSION_set1_id.3 M secure/lib/libcrypto/man/man3/SSL_accept.3 M secure/lib/libcrypto/man/man3/SSL_accept_stream.3 M secure/lib/libcrypto/man/man3/SSL_alert_type_string.3 M secure/lib/libcrypto/man/man3/SSL_alloc_buffers.3 M secure/lib/libcrypto/man/man3/SSL_check_chain.3 M secure/lib/libcrypto/man/man3/SSL_clear.3 M secure/lib/libcrypto/man/man3/SSL_connect.3 M secure/lib/libcrypto/man/man3/SSL_do_handshake.3 M secure/lib/libcrypto/man/man3/SSL_export_keying_material.3 M secure/lib/libcrypto/man/man3/SSL_extension_supported.3 M secure/lib/libcrypto/man/man3/SSL_free.3 M secure/lib/libcrypto/man/man3/SSL_get0_connection.3 M secure/lib/libcrypto/man/man3/SSL_get0_group_name.3 M secure/lib/libcrypto/man/man3/SSL_get0_peer_rpk.3 M secure/lib/libcrypto/man/man3/SSL_get0_peer_scts.3 M secure/lib/libcrypto/man/man3/SSL_get1_builtin_sigalgs.3 M secure/lib/libcrypto/man/man3/SSL_get_SSL_CTX.3 M secure/lib/libcrypto/man/man3/SSL_get_all_async_fds.3 M secure/lib/libcrypto/man/man3/SSL_get_certificate.3 M secure/lib/libcrypto/man/man3/SSL_get_ciphers.3 M secure/lib/libcrypto/man/man3/SSL_get_client_random.3 M secure/lib/libcrypto/man/man3/SSL_get_conn_close_info.3 M secure/lib/libcrypto/man/man3/SSL_get_current_cipher.3 M secure/lib/libcrypto/man/man3/SSL_get_default_timeout.3 M secure/lib/libcrypto/man/man3/SSL_get_error.3 M secure/lib/libcrypto/man/man3/SSL_get_event_timeout.3 M secure/lib/libcrypto/man/man3/SSL_get_extms_support.3 M secure/lib/libcrypto/man/man3/SSL_get_fd.3 M secure/lib/libcrypto/man/man3/SSL_get_handshake_rtt.3 M secure/lib/libcrypto/man/man3/SSL_get_peer_cert_chain.3 M secure/lib/libcrypto/man/man3/SSL_get_peer_certificate.3 M secure/lib/libcrypto/man/man3/SSL_get_peer_signature_nid.3 M secure/lib/libcrypto/man/man3/SSL_get_peer_tmp_key.3 M secure/lib/libcrypto/man/man3/SSL_get_psk_identity.3 M secure/lib/libcrypto/man/man3/SSL_get_rbio.3 M secure/lib/libcrypto/man/man3/SSL_get_rpoll_descriptor.3 M secure/lib/libcrypto/man/man3/SSL_get_session.3 M secure/lib/libcrypto/man/man3/SSL_get_shared_sigalgs.3 M secure/lib/libcrypto/man/man3/SSL_get_stream_id.3 M secure/lib/libcrypto/man/man3/SSL_get_stream_read_state.3 M secure/lib/libcrypto/man/man3/SSL_get_value_uint.3 M secure/lib/libcrypto/man/man3/SSL_get_verify_result.3 M secure/lib/libcrypto/man/man3/SSL_get_version.3 M secure/lib/libcrypto/man/man3/SSL_group_to_name.3 M secure/lib/libcrypto/man/man3/SSL_handle_events.3 M secure/lib/libcrypto/man/man3/SSL_in_init.3 M secure/lib/libcrypto/man/man3/SSL_inject_net_dgram.3 M secure/lib/libcrypto/man/man3/SSL_key_update.3 M secure/lib/libcrypto/man/man3/SSL_library_init.3 M secure/lib/libcrypto/man/man3/SSL_load_client_CA_file.3 M secure/lib/libcrypto/man/man3/SSL_new.3 M secure/lib/libcrypto/man/man3/SSL_new_domain.3 M secure/lib/libcrypto/man/man3/SSL_new_listener.3 M secure/lib/libcrypto/man/man3/SSL_new_stream.3 M secure/lib/libcrypto/man/man3/SSL_pending.3 M secure/lib/libcrypto/man/man3/SSL_poll.3 M secure/lib/libcrypto/man/man3/SSL_read.3 M secure/lib/libcrypto/man/man3/SSL_read_early_data.3 M secure/lib/libcrypto/man/man3/SSL_rstate_string.3 M secure/lib/libcrypto/man/man3/SSL_session_reused.3 M secure/lib/libcrypto/man/man3/SSL_set1_host.3 M secure/lib/libcrypto/man/man3/SSL_set1_initial_peer_addr.3 M secure/lib/libcrypto/man/man3/SSL_set1_server_cert_type.3 M secure/lib/libcrypto/man/man3/SSL_set_async_callback.3 M secure/lib/libcrypto/man/man3/SSL_set_bio.3 M secure/lib/libcrypto/man/man3/SSL_set_blocking_mode.3 M secure/lib/libcrypto/man/man3/SSL_set_connect_state.3 M secure/lib/libcrypto/man/man3/SSL_set_default_stream_mode.3 M secure/lib/libcrypto/man/man3/SSL_set_fd.3 M secure/lib/libcrypto/man/man3/SSL_set_incoming_stream_policy.3 M secure/lib/libcrypto/man/man3/SSL_set_quic_tls_cbs.3 M secure/lib/libcrypto/man/man3/SSL_set_retry_verify.3 M secure/lib/libcrypto/man/man3/SSL_set_session.3 M secure/lib/libcrypto/man/man3/SSL_set_session_secret_cb.3 M secure/lib/libcrypto/man/man3/SSL_set_shutdown.3 M secure/lib/libcrypto/man/man3/SSL_set_verify_result.3 M secure/lib/libcrypto/man/man3/SSL_shutdown.3 M secure/lib/libcrypto/man/man3/SSL_state_string.3 M secure/lib/libcrypto/man/man3/SSL_stream_conclude.3 M secure/lib/libcrypto/man/man3/SSL_stream_reset.3 M secure/lib/libcrypto/man/man3/SSL_want.3 M secure/lib/libcrypto/man/man3/SSL_write.3 M secure/lib/libcrypto/man/man3/TS_RESP_CTX_new.3 M secure/lib/libcrypto/man/man3/TS_VERIFY_CTX.3 M secure/lib/libcrypto/man/man3/UI_STRING.3 M secure/lib/libcrypto/man/man3/UI_UTIL_read_pw.3 M secure/lib/libcrypto/man/man3/UI_create_method.3 M secure/lib/libcrypto/man/man3/UI_new.3 M secure/lib/libcrypto/man/man3/X509V3_EXT_print.3 M secure/lib/libcrypto/man/man3/X509V3_get_d2i.3 M secure/lib/libcrypto/man/man3/X509V3_set_ctx.3 M secure/lib/libcrypto/man/man3/X509_ACERT_add1_attr.3 M secure/lib/libcrypto/man/man3/X509_ACERT_add_attr_nconf.3 M secure/lib/libcrypto/man/man3/X509_ACERT_get0_holder_baseCertId.3 M secure/lib/libcrypto/man/man3/X509_ACERT_get_attr.3 M secure/lib/libcrypto/man/man3/X509_ACERT_print_ex.3 M secure/lib/libcrypto/man/man3/X509_ALGOR_dup.3 M secure/lib/libcrypto/man/man3/X509_ATTRIBUTE.3 M secure/lib/libcrypto/man/man3/X509_CRL_get0_by_serial.3 M secure/lib/libcrypto/man/man3/X509_EXTENSION_set_object.3 M secure/lib/libcrypto/man/man3/X509_LOOKUP.3 M secure/lib/libcrypto/man/man3/X509_LOOKUP_hash_dir.3 M secure/lib/libcrypto/man/man3/X509_LOOKUP_meth_new.3 M secure/lib/libcrypto/man/man3/X509_NAME_ENTRY_get_object.3 M secure/lib/libcrypto/man/man3/X509_NAME_add_entry_by_txt.3 M secure/lib/libcrypto/man/man3/X509_NAME_get0_der.3 M secure/lib/libcrypto/man/man3/X509_NAME_get_index_by_NID.3 M secure/lib/libcrypto/man/man3/X509_NAME_print_ex.3 M secure/lib/libcrypto/man/man3/X509_PUBKEY_new.3 M secure/lib/libcrypto/man/man3/X509_REQ_get_attr.3 M secure/lib/libcrypto/man/man3/X509_REQ_get_extensions.3 M secure/lib/libcrypto/man/man3/X509_SIG_get0.3 M secure/lib/libcrypto/man/man3/X509_STORE_CTX_get_by_subject.3 M secure/lib/libcrypto/man/man3/X509_STORE_CTX_get_error.3 M secure/lib/libcrypto/man/man3/X509_STORE_CTX_new.3 M secure/lib/libcrypto/man/man3/X509_STORE_CTX_set_verify_cb.3 M secure/lib/libcrypto/man/man3/X509_STORE_add_cert.3 M secure/lib/libcrypto/man/man3/X509_STORE_get0_param.3 M secure/lib/libcrypto/man/man3/X509_STORE_new.3 M secure/lib/libcrypto/man/man3/X509_STORE_set_verify_cb_func.3 M secure/lib/libcrypto/man/man3/X509_VERIFY_PARAM_set_flags.3 M secure/lib/libcrypto/man/man3/X509_add_cert.3 M secure/lib/libcrypto/man/man3/X509_check_ca.3 M secure/lib/libcrypto/man/man3/X509_check_host.3 M secure/lib/libcrypto/man/man3/X509_check_issued.3 M secure/lib/libcrypto/man/man3/X509_check_private_key.3 M secure/lib/libcrypto/man/man3/X509_check_purpose.3 M secure/lib/libcrypto/man/man3/X509_cmp.3 M secure/lib/libcrypto/man/man3/X509_cmp_time.3 M secure/lib/libcrypto/man/man3/X509_digest.3 M secure/lib/libcrypto/man/man3/X509_dup.3 M secure/lib/libcrypto/man/man3/X509_get0_distinguishing_id.3 M secure/lib/libcrypto/man/man3/X509_get0_notBefore.3 M secure/lib/libcrypto/man/man3/X509_get0_signature.3 M secure/lib/libcrypto/man/man3/X509_get0_uids.3 M secure/lib/libcrypto/man/man3/X509_get_default_cert_file.3 M secure/lib/libcrypto/man/man3/X509_get_extension_flags.3 M secure/lib/libcrypto/man/man3/X509_get_pubkey.3 M secure/lib/libcrypto/man/man3/X509_get_serialNumber.3 M secure/lib/libcrypto/man/man3/X509_get_subject_name.3 M secure/lib/libcrypto/man/man3/X509_get_version.3 M secure/lib/libcrypto/man/man3/X509_load_http.3 M secure/lib/libcrypto/man/man3/X509_new.3 M secure/lib/libcrypto/man/man3/X509_sign.3 M secure/lib/libcrypto/man/man3/X509_verify.3 M secure/lib/libcrypto/man/man3/X509_verify_cert.3 M secure/lib/libcrypto/man/man3/X509v3_get_ext_by_NID.3 M secure/lib/libcrypto/man/man3/b2i_PVK_bio_ex.3 M secure/lib/libcrypto/man/man3/d2i_PKCS8PrivateKey_bio.3 M secure/lib/libcrypto/man/man3/d2i_PrivateKey.3 M secure/lib/libcrypto/man/man3/d2i_RSAPrivateKey.3 M secure/lib/libcrypto/man/man3/d2i_SSL_SESSION.3 M secure/lib/libcrypto/man/man3/d2i_X509.3 M secure/lib/libcrypto/man/man3/i2d_CMS_bio_stream.3 M secure/lib/libcrypto/man/man3/i2d_PKCS7_bio_stream.3 M secure/lib/libcrypto/man/man3/i2d_re_X509_tbs.3 M secure/lib/libcrypto/man/man3/o2i_SCT_LIST.3 M secure/lib/libcrypto/man/man3/s2i_ASN1_IA5STRING.3 M secure/lib/libcrypto/man/man5/config.5 M secure/lib/libcrypto/man/man5/fips_config.5 M secure/lib/libcrypto/man/man5/x509v3_config.5 M secure/lib/libcrypto/man/man7/EVP_ASYM_CIPHER-RSA.7 M secure/lib/libcrypto/man/man7/EVP_ASYM_CIPHER-SM2.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-AES.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-ARIA.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-BLOWFISH.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-CAMELLIA.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-CAST.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-CHACHA.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-DES.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-IDEA.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-NULL.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-RC2.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-RC4.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-RC5.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-SEED.7 M secure/lib/libcrypto/man/man7/EVP_CIPHER-SM4.7 M secure/lib/libcrypto/man/man7/EVP_KDF-ARGON2.7 M secure/lib/libcrypto/man/man7/EVP_KDF-HKDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-HMAC-DRBG.7 M secure/lib/libcrypto/man/man7/EVP_KDF-KB.7 M secure/lib/libcrypto/man/man7/EVP_KDF-KRB5KDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-PBKDF1.7 M secure/lib/libcrypto/man/man7/EVP_KDF-PBKDF2.7 M secure/lib/libcrypto/man/man7/EVP_KDF-PKCS12KDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-PVKKDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-SCRYPT.7 M secure/lib/libcrypto/man/man7/EVP_KDF-SS.7 M secure/lib/libcrypto/man/man7/EVP_KDF-SSHKDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-TLS13_KDF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-TLS1_PRF.7 M secure/lib/libcrypto/man/man7/EVP_KDF-X942-ASN1.7 M secure/lib/libcrypto/man/man7/EVP_KDF-X942-CONCAT.7 M secure/lib/libcrypto/man/man7/EVP_KDF-X963.7 M secure/lib/libcrypto/man/man7/EVP_KEM-EC.7 M secure/lib/libcrypto/man/man7/EVP_KEM-ML-KEM.7 M secure/lib/libcrypto/man/man7/EVP_KEM-RSA.7 M secure/lib/libcrypto/man/man7/EVP_KEM-X25519.7 M secure/lib/libcrypto/man/man7/EVP_KEYEXCH-DH.7 M secure/lib/libcrypto/man/man7/EVP_KEYEXCH-ECDH.7 M secure/lib/libcrypto/man/man7/EVP_KEYEXCH-X25519.7 M secure/lib/libcrypto/man/man7/EVP_MAC-BLAKE2.7 M secure/lib/libcrypto/man/man7/EVP_MAC-CMAC.7 M secure/lib/libcrypto/man/man7/EVP_MAC-GMAC.7 M secure/lib/libcrypto/man/man7/EVP_MAC-HMAC.7 M secure/lib/libcrypto/man/man7/EVP_MAC-KMAC.7 M secure/lib/libcrypto/man/man7/EVP_MAC-Poly1305.7 M secure/lib/libcrypto/man/man7/EVP_MAC-Siphash.7 M secure/lib/libcrypto/man/man7/EVP_MD-BLAKE2.7 M secure/lib/libcrypto/man/man7/EVP_MD-KECCAK.7 M secure/lib/libcrypto/man/man7/EVP_MD-MD2.7 M secure/lib/libcrypto/man/man7/EVP_MD-MD4.7 M secure/lib/libcrypto/man/man7/EVP_MD-MD5-SHA1.7 M secure/lib/libcrypto/man/man7/EVP_MD-MD5.7 M secure/lib/libcrypto/man/man7/EVP_MD-MDC2.7 M secure/lib/libcrypto/man/man7/EVP_MD-NULL.7 M secure/lib/libcrypto/man/man7/EVP_MD-RIPEMD160.7 M secure/lib/libcrypto/man/man7/EVP_MD-SHA1.7 M secure/lib/libcrypto/man/man7/EVP_MD-SHA2.7 M secure/lib/libcrypto/man/man7/EVP_MD-SHA3.7 M secure/lib/libcrypto/man/man7/EVP_MD-SHAKE.7 M secure/lib/libcrypto/man/man7/EVP_MD-SM3.7 M secure/lib/libcrypto/man/man7/EVP_MD-WHIRLPOOL.7 M secure/lib/libcrypto/man/man7/EVP_MD-common.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-DH.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-DSA.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-EC.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-FFC.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-HMAC.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-ML-DSA.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-ML-KEM.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-RSA.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-SLH-DSA.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-SM2.7 M secure/lib/libcrypto/man/man7/EVP_PKEY-X25519.7 M secure/lib/libcrypto/man/man7/EVP_RAND-CRNG-TEST.7 M secure/lib/libcrypto/man/man7/EVP_RAND-CTR-DRBG.7 M secure/lib/libcrypto/man/man7/EVP_RAND-HASH-DRBG.7 M secure/lib/libcrypto/man/man7/EVP_RAND-HMAC-DRBG.7 M secure/lib/libcrypto/man/man7/EVP_RAND-JITTER.7 M secure/lib/libcrypto/man/man7/EVP_RAND-SEED-SRC.7 M secure/lib/libcrypto/man/man7/EVP_RAND-TEST-RAND.7 M secure/lib/libcrypto/man/man7/EVP_RAND.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-DSA.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-ECDSA.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-ED25519.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-HMAC.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-ML-DSA.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7 M secure/lib/libcrypto/man/man7/EVP_SIGNATURE-SLH-DSA.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-FIPS.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-base.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-default.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-legacy.7 M secure/lib/libcrypto/man/man7/OSSL_PROVIDER-null.7 M secure/lib/libcrypto/man/man7/OSSL_STORE-winstore.7 M secure/lib/libcrypto/man/man7/RAND.7 M secure/lib/libcrypto/man/man7/RSA-PSS.7 M secure/lib/libcrypto/man/man7/X25519.7 M secure/lib/libcrypto/man/man7/bio.7 M secure/lib/libcrypto/man/man7/ct.7 M secure/lib/libcrypto/man/man7/des_modes.7 M secure/lib/libcrypto/man/man7/evp.7 M secure/lib/libcrypto/man/man7/fips_module.7 M secure/lib/libcrypto/man/man7/life_cycle-cipher.7 M secure/lib/libcrypto/man/man7/life_cycle-digest.7 M secure/lib/libcrypto/man/man7/life_cycle-kdf.7 M secure/lib/libcrypto/man/man7/life_cycle-mac.7 M secure/lib/libcrypto/man/man7/life_cycle-pkey.7 M secure/lib/libcrypto/man/man7/life_cycle-rand.7 M secure/lib/libcrypto/man/man7/openssl-core.h.7 M secure/lib/libcrypto/man/man7/openssl-core_dispatch.h.7 M secure/lib/libcrypto/man/man7/openssl-core_names.h.7 M secure/lib/libcrypto/man/man7/openssl-env.7 M secure/lib/libcrypto/man/man7/openssl-glossary.7 M secure/lib/libcrypto/man/man7/openssl-qlog.7 M secure/lib/libcrypto/man/man7/openssl-quic-concurrency.7 M secure/lib/libcrypto/man/man7/openssl-quic.7 M secure/lib/libcrypto/man/man7/openssl-threads.7 M secure/lib/libcrypto/man/man7/openssl_user_macros.7 M secure/lib/libcrypto/man/man7/ossl-guide-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-libcrypto-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-libraries-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-libssl-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-migration.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-client-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-client-non-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-multi-stream.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-server-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-quic-server-non-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-tls-client-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-tls-client-non-block.7 M secure/lib/libcrypto/man/man7/ossl-guide-tls-introduction.7 M secure/lib/libcrypto/man/man7/ossl-guide-tls-server-block.7 M secure/lib/libcrypto/man/man7/ossl_store-file.7 M secure/lib/libcrypto/man/man7/ossl_store.7 M secure/lib/libcrypto/man/man7/passphrase-encoding.7 M secure/lib/libcrypto/man/man7/property.7 M secure/lib/libcrypto/man/man7/provider-asym_cipher.7 M secure/lib/libcrypto/man/man7/provider-base.7 M secure/lib/libcrypto/man/man7/provider-cipher.7 M secure/lib/libcrypto/man/man7/provider-decoder.7 M secure/lib/libcrypto/man/man7/provider-digest.7 M secure/lib/libcrypto/man/man7/provider-encoder.7 M secure/lib/libcrypto/man/man7/provider-kdf.7 M secure/lib/libcrypto/man/man7/provider-kem.7 M secure/lib/libcrypto/man/man7/provider-keyexch.7 M secure/lib/libcrypto/man/man7/provider-keymgmt.7 M secure/lib/libcrypto/man/man7/provider-mac.7 M secure/lib/libcrypto/man/man7/provider-object.7 M secure/lib/libcrypto/man/man7/provider-rand.7 M secure/lib/libcrypto/man/man7/provider-signature.7 M secure/lib/libcrypto/man/man7/provider-skeymgmt.7 M secure/lib/libcrypto/man/man7/provider-storemgmt.7 M secure/lib/libcrypto/man/man7/provider.7 M secure/lib/libcrypto/man/man7/proxy-certificates.7 M secure/lib/libcrypto/man/man7/x509.7 M secure/usr.bin/openssl/man/CA.pl.1 M secure/usr.bin/openssl/man/openssl-asn1parse.1 M secure/usr.bin/openssl/man/openssl-ca.1 M secure/usr.bin/openssl/man/openssl-ciphers.1 M secure/usr.bin/openssl/man/openssl-cmds.1 M secure/usr.bin/openssl/man/openssl-cmp.1 M secure/usr.bin/openssl/man/openssl-cms.1 M secure/usr.bin/openssl/man/openssl-crl.1 M secure/usr.bin/openssl/man/openssl-crl2pkcs7.1 M secure/usr.bin/openssl/man/openssl-dgst.1 M secure/usr.bin/openssl/man/openssl-dhparam.1 M secure/usr.bin/openssl/man/openssl-dsa.1 M secure/usr.bin/openssl/man/openssl-dsaparam.1 M secure/usr.bin/openssl/man/openssl-ec.1 M secure/usr.bin/openssl/man/openssl-ecparam.1 M secure/usr.bin/openssl/man/openssl-enc.1 M secure/usr.bin/openssl/man/openssl-engine.1 M secure/usr.bin/openssl/man/openssl-errstr.1 M secure/usr.bin/openssl/man/openssl-fipsinstall.1 M secure/usr.bin/openssl/man/openssl-format-options.1 M secure/usr.bin/openssl/man/openssl-gendsa.1 M secure/usr.bin/openssl/man/openssl-genpkey.1 M secure/usr.bin/openssl/man/openssl-genrsa.1 M secure/usr.bin/openssl/man/openssl-info.1 M secure/usr.bin/openssl/man/openssl-kdf.1 M secure/usr.bin/openssl/man/openssl-list.1 M secure/usr.bin/openssl/man/openssl-mac.1 M secure/usr.bin/openssl/man/openssl-namedisplay-options.1 M secure/usr.bin/openssl/man/openssl-nseq.1 M secure/usr.bin/openssl/man/openssl-ocsp.1 M secure/usr.bin/openssl/man/openssl-passphrase-options.1 M secure/usr.bin/openssl/man/openssl-passwd.1 M secure/usr.bin/openssl/man/openssl-pkcs12.1 M secure/usr.bin/openssl/man/openssl-pkcs7.1 M secure/usr.bin/openssl/man/openssl-pkcs8.1 M secure/usr.bin/openssl/man/openssl-pkey.1 M secure/usr.bin/openssl/man/openssl-pkeyparam.1 M secure/usr.bin/openssl/man/openssl-pkeyutl.1 M secure/usr.bin/openssl/man/openssl-prime.1 M secure/usr.bin/openssl/man/openssl-rand.1 M secure/usr.bin/openssl/man/openssl-rehash.1 M secure/usr.bin/openssl/man/openssl-req.1 M secure/usr.bin/openssl/man/openssl-rsa.1 M secure/usr.bin/openssl/man/openssl-rsautl.1 M secure/usr.bin/openssl/man/openssl-s_client.1 M secure/usr.bin/openssl/man/openssl-s_server.1 M secure/usr.bin/openssl/man/openssl-s_time.1 M secure/usr.bin/openssl/man/openssl-sess_id.1 M secure/usr.bin/openssl/man/openssl-skeyutl.1 M secure/usr.bin/openssl/man/openssl-smime.1 M secure/usr.bin/openssl/man/openssl-speed.1 M secure/usr.bin/openssl/man/openssl-spkac.1 M secure/usr.bin/openssl/man/openssl-srp.1 M secure/usr.bin/openssl/man/openssl-storeutl.1 M secure/usr.bin/openssl/man/openssl-ts.1 M secure/usr.bin/openssl/man/openssl-verification-options.1 M secure/usr.bin/openssl/man/openssl-verify.1 M secure/usr.bin/openssl/man/openssl-version.1 M secure/usr.bin/openssl/man/openssl-x509.1 M secure/usr.bin/openssl/man/openssl.1 M secure/usr.bin/openssl/man/tsget.1 _____________________________________________________________________________________________________________ Commit: 514ff9a982637aa7686c1862f44d90f9e7a2f4a1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=514ff9a982637aa7686c1862f44d90f9e7a2f4a1 Author: Enji Cooper (Sat 29 Aug 2026 02:28:12 BST) Committer: Enji Cooper (Tue 1 Sep 2026 09:16:05 BST) crypto/openssl: update to 3.5.8 This is a security bugfix release. Please see the related merge commit for more details. Maintainer note: `quic_ackm.h`'s conflict was resolved by taking the upstream version of the file verbatim. Conflicts: crypto/openssl/include/internal/quic_ackm.h MFC after: 3 days Merge commit '248da023ae5ea7292930ac5d715d88b87e2e6f46' (cherry picked from commit 78e936b2d0b5e6554425009199be31e76bc67c10) M crypto/openssl/CHANGES.md M crypto/openssl/CONTRIBUTING.md M crypto/openssl/NEWS.md M crypto/openssl/README-FIPS.md M crypto/openssl/VERSION.dat M crypto/openssl/apps/lib/apps.c M crypto/openssl/apps/lib/s_cb.c M crypto/openssl/apps/lib/vms_term_sock.c M crypto/openssl/apps/s_client.c D crypto/openssl/crypto/aes/aes_x86core.c M crypto/openssl/crypto/aes/asm/aesni-mb-x86_64.pl M crypto/openssl/crypto/aes/asm/aesni-sha1-x86_64.pl M crypto/openssl/crypto/aes/asm/aesni-sha256-x86_64.pl M crypto/openssl/crypto/aes/asm/aesni-xts-avx512.pl M crypto/openssl/crypto/armcap.c M crypto/openssl/crypto/asn1/a_d2i_fp.c M crypto/openssl/crypto/asn1/a_mbstr.c M crypto/openssl/crypto/asn1/asn1_gen.c M crypto/openssl/crypto/bio/bss_file.c M crypto/openssl/crypto/bn/asm/rsaz-2k-avx512.pl M crypto/openssl/crypto/bn/asm/rsaz-2k-avxifma.pl M crypto/openssl/crypto/bn/asm/rsaz-3k-avx512.pl M crypto/openssl/crypto/bn/asm/rsaz-3k-avxifma.pl M crypto/openssl/crypto/bn/asm/rsaz-4k-avx512.pl M crypto/openssl/crypto/bn/asm/rsaz-4k-avxifma.pl M crypto/openssl/crypto/bn/asm/rsaz-avx2.pl M crypto/openssl/crypto/bn/asm/rsaz-x86_64.pl M crypto/openssl/crypto/bn/asm/x86_64-mont.pl M crypto/openssl/crypto/bn/asm/x86_64-mont5.pl M crypto/openssl/crypto/bn/bn_add.c M crypto/openssl/crypto/bn/bn_exp.c M crypto/openssl/crypto/bn/bn_lib.c M crypto/openssl/crypto/chacha/asm/chacha-x86.pl M crypto/openssl/crypto/chacha/asm/chacha-x86_64.pl M crypto/openssl/crypto/cmp/cmp_protect.c M crypto/openssl/crypto/cmp/cmp_vfy.c M crypto/openssl/crypto/cms/cms_asn1.c M crypto/openssl/crypto/cms/cms_env.c M crypto/openssl/crypto/cms/cms_kari.c M crypto/openssl/crypto/cms/cms_local.h M crypto/openssl/crypto/cms/cms_pwri.c M crypto/openssl/crypto/cms/cms_smime.c M crypto/openssl/crypto/ct/ct_b64.c M crypto/openssl/crypto/ctype.c M crypto/openssl/crypto/dh/dh_backend.c M crypto/openssl/crypto/dh/dh_check.c M crypto/openssl/crypto/dsa/dsa_key.c M crypto/openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl M crypto/openssl/crypto/ec/asm/x25519-x86_64.pl M crypto/openssl/crypto/ec/ec_key.c M crypto/openssl/crypto/err/openssl.txt M crypto/openssl/crypto/evp/exchange.c M crypto/openssl/crypto/ffc/ffc_params_generate.c M crypto/openssl/crypto/hmac/hmac.c M crypto/openssl/crypto/http/http_lib.c M crypto/openssl/crypto/ml_dsa/ml_dsa_encoders.c M crypto/openssl/crypto/ml_dsa/ml_dsa_key.c M crypto/openssl/crypto/ml_dsa/ml_dsa_matrix.c M crypto/openssl/crypto/ml_dsa/ml_dsa_sample.c M crypto/openssl/crypto/ml_dsa/ml_dsa_sign.c M crypto/openssl/crypto/ml_dsa/ml_dsa_vector.h M crypto/openssl/crypto/ml_kem/ml_kem.c M crypto/openssl/crypto/modes/asm/aes-gcm-avx512.pl M crypto/openssl/crypto/modes/asm/aesni-gcm-x86_64.pl M crypto/openssl/crypto/modes/asm/ghash-x86_64.pl M crypto/openssl/crypto/pem/pvkfmt.c M crypto/openssl/crypto/pkcs12/p12_add.c M crypto/openssl/crypto/pkcs12/p12_decr.c M crypto/openssl/crypto/pkcs12/p12_utl.c M crypto/openssl/crypto/pkcs7/pk7_doit.c M crypto/openssl/crypto/pkcs7/pk7_lib.c M crypto/openssl/crypto/poly1305/asm/poly1305-x86.pl M crypto/openssl/crypto/poly1305/asm/poly1305-x86_64.pl M crypto/openssl/crypto/rand/rand_lib.c M crypto/openssl/crypto/rsa/rsa_gen.c M crypto/openssl/crypto/rsa/rsa_ossl.c M crypto/openssl/crypto/sha/asm/sha1-586.pl M crypto/openssl/crypto/sha/asm/sha1-mb-x86_64.pl M crypto/openssl/crypto/sha/asm/sha1-x86_64.pl M crypto/openssl/crypto/sha/asm/sha256-586.pl M crypto/openssl/crypto/sha/asm/sha256-mb-x86_64.pl M crypto/openssl/crypto/sha/asm/sha512-x86_64.pl M crypto/openssl/crypto/sha/sha_riscv.c M crypto/openssl/crypto/slh_dsa/slh_dsa.c M crypto/openssl/crypto/slh_dsa/slh_dsa_hash_ctx.c M crypto/openssl/crypto/slh_dsa/slh_dsa_key.c M crypto/openssl/crypto/slh_dsa/slh_dsa_local.h M crypto/openssl/crypto/slh_dsa/slh_fors.c M crypto/openssl/crypto/slh_dsa/slh_hash.c M crypto/openssl/crypto/slh_dsa/slh_hypertree.c M crypto/openssl/crypto/slh_dsa/slh_wots.c M crypto/openssl/crypto/slh_dsa/slh_xmss.c M crypto/openssl/crypto/threads_win.c M crypto/openssl/crypto/x509/by_dir.c M crypto/openssl/crypto/x509/pcy_cache.c M crypto/openssl/crypto/x509/v3_akid.c M crypto/openssl/crypto/x509/v3_ncons.c M crypto/openssl/crypto/x509/x509_err.c M crypto/openssl/crypto/x509/x509_lu.c M crypto/openssl/crypto/x509/x509_vfy.c M crypto/openssl/crypto/x509/x_crl.c M crypto/openssl/crypto/x509/x_pubkey.c M crypto/openssl/doc/build.info M crypto/openssl/doc/internal/man3/DEFINE_LIST_OF.pod M crypto/openssl/doc/man1/openssl-pkeyutl.pod.in M crypto/openssl/doc/man1/openssl.pod M crypto/openssl/doc/man3/ASN1_INTEGER_get_int64.pod M crypto/openssl/doc/man3/ASN1_aux_cb.pod M crypto/openssl/doc/man3/ASN1_item_d2i_bio.pod M crypto/openssl/doc/man3/BIO_s_datagram.pod M crypto/openssl/doc/man3/BIO_s_file.pod M crypto/openssl/doc/man3/BN_generate_prime.pod M crypto/openssl/doc/man3/CMS_EncryptedData_decrypt.pod A crypto/openssl/doc/man3/NAME_CONSTRAINTS_check.pod A crypto/openssl/doc/man3/OPENSSL_armcap.pod M crypto/openssl/doc/man3/OPENSSL_init_crypto.pod M crypto/openssl/doc/man3/SSL_CTX_set1_curves.pod M crypto/openssl/doc/man3/SSL_CTX_set_msg_callback.pod M crypto/openssl/doc/man3/SSL_CTX_set_verify.pod M crypto/openssl/doc/man3/SSL_get_value_uint.pod M crypto/openssl/doc/man3/SSL_new.pod M crypto/openssl/doc/man3/SSL_poll.pod M crypto/openssl/doc/man3/X509_get_default_cert_file.pod M crypto/openssl/doc/man3/X509_verify_cert.pod M crypto/openssl/doc/man7/EVP_CIPHER-SM4.pod M crypto/openssl/doc/man7/EVP_SIGNATURE-ECDSA.pod M crypto/openssl/doc/man7/EVP_SIGNATURE-RSA.pod M crypto/openssl/doc/man7/fips_module.pod M crypto/openssl/doc/man7/openssl-core_dispatch.h.pod M crypto/openssl/doc/man7/openssl-env.pod M crypto/openssl/doc/man7/openssl-quic-concurrency.pod M crypto/openssl/doc/man7/openssl-threads.pod M crypto/openssl/doc/man7/provider-kem.pod M crypto/openssl/doc/man7/provider-signature.pod M crypto/openssl/fuzz/provider.c M crypto/openssl/include/internal/hashtable.h M crypto/openssl/include/internal/list.h M crypto/openssl/include/internal/quic_ackm.h M crypto/openssl/include/internal/quic_port.h M crypto/openssl/include/internal/quic_record_rx.h M crypto/openssl/include/internal/quic_ssl.h M crypto/openssl/include/openssl/ssl.h.in M crypto/openssl/include/openssl/x509err.h M crypto/openssl/providers/baseprov.c M crypto/openssl/providers/defltprov.c M crypto/openssl/providers/fips-sources.checksums M crypto/openssl/providers/fips.checksum M crypto/openssl/providers/fips/fipsprov.c M crypto/openssl/providers/implementations/ciphers/cipher_aes_gcm_siv_hw.c M crypto/openssl/providers/implementations/ciphers/cipher_aes_ocb.c M crypto/openssl/providers/implementations/ciphers/cipher_chacha20_poly1305.c M crypto/openssl/providers/implementations/ciphers/cipher_chacha20_poly1305_hw.c M crypto/openssl/providers/implementations/ciphers/ciphercommon_ccm.c M crypto/openssl/providers/implementations/encode_decode/encode_key2ms.c M crypto/openssl/providers/implementations/kem/ml_kem_kem.c M crypto/openssl/providers/implementations/kem/mlx_kem.c M crypto/openssl/providers/implementations/kem/rsa_kem.c M crypto/openssl/providers/implementations/keymgmt/dh_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/ec_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/ecx_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/ml_dsa_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/ml_kem_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/mlx_kmgmt.c M crypto/openssl/providers/implementations/keymgmt/slh_dsa_kmgmt.c M crypto/openssl/providers/implementations/macs/cmac_prov.c M crypto/openssl/providers/implementations/macs/poly1305_prov.c M crypto/openssl/providers/implementations/rands/drbg_ctr.c M crypto/openssl/providers/implementations/rands/drbg_hash.c M crypto/openssl/providers/implementations/rands/drbg_hmac.c M crypto/openssl/providers/implementations/rands/seeding/rand_unix.c M crypto/openssl/providers/implementations/rands/test_rng.c M crypto/openssl/providers/implementations/signature/rsa_sig.c M crypto/openssl/providers/implementations/signature/slh_dsa_sig.c M crypto/openssl/providers/implementations/storemgmt/file_store_any2obj.c M crypto/openssl/ssl/quic/quic_ackm.c M crypto/openssl/ssl/quic/quic_impl.c M crypto/openssl/ssl/quic/quic_port.c M crypto/openssl/ssl/quic/quic_port_local.h M crypto/openssl/ssl/quic/quic_rx_depack.c M crypto/openssl/ssl/quic/quic_stream_map.c M crypto/openssl/ssl/record/methods/dtls_meth.c M crypto/openssl/ssl/record/methods/recmethod_local.h M crypto/openssl/ssl/record/methods/tls_common.c M crypto/openssl/ssl/record/rec_layer_s3.c M crypto/openssl/ssl/rio/poll_builder.c M crypto/openssl/ssl/rio/poll_builder.h M crypto/openssl/ssl/rio/poll_immediate.c M crypto/openssl/ssl/rio/rio_notifier.c M crypto/openssl/ssl/s3_lib.c M crypto/openssl/ssl/ssl_cert.c M crypto/openssl/ssl/ssl_lib.c M crypto/openssl/ssl/ssl_local.h M crypto/openssl/ssl/ssl_rsa.c M crypto/openssl/ssl/statem/extensions.c M crypto/openssl/ssl/statem/statem_clnt.c M crypto/openssl/ssl/statem/statem_lib.c M crypto/openssl/ssl/statem/statem_srvr.c M crypto/openssl/ssl/t1_lib.c M crypto/openssl/test/asn1_decode_test.c M crypto/openssl/test/build.info M crypto/openssl/test/ca_internals_test.c A crypto/openssl/test/certs/delta-crl-as-complete-ca.pem A crypto/openssl/test/certs/delta-crl-as-complete-delta-reasons.pem A crypto/openssl/test/certs/delta-crl-as-complete-delta.pem A crypto/openssl/test/certs/delta-crl-as-complete-leaf.pem A crypto/openssl/test/certs/server-ec-compressed-cert.pem A crypto/openssl/test/certs/server-ec-compressed-key.pem M crypto/openssl/test/cmp_client_test.c M crypto/openssl/test/cmp_protect_test.c M crypto/openssl/test/cmp_vfy_test.c M crypto/openssl/test/cmsapitest.c M crypto/openssl/test/crltest.c M crypto/openssl/test/endecode_test.c M crypto/openssl/test/evp_extra_test.c M crypto/openssl/test/evp_extra_test2.c A crypto/openssl/test/fipsidentity.cnf M crypto/openssl/test/helpers/quictestlib.c M crypto/openssl/test/helpers/quictestlib.h M crypto/openssl/test/helpers/ssltestlib.c M crypto/openssl/test/helpers/ssltestlib.h M crypto/openssl/test/hpke_test.c M crypto/openssl/test/http_test.c M crypto/openssl/test/list_test.c M crypto/openssl/test/p_test.c M crypto/openssl/test/pairwise_fail_test.c M crypto/openssl/test/pkcs12_api_test.c M crypto/openssl/test/pkcs7_test.c M crypto/openssl/test/punycode_test.c M crypto/openssl/test/quic_ackm_test.c M crypto/openssl/test/quic_multistream_test.c M crypto/openssl/test/quic_tserver_test.c M crypto/openssl/test/quicapitest.c M crypto/openssl/test/radix/quic_bindings.c M crypto/openssl/test/radix/quic_ops.c M crypto/openssl/test/radix/quic_tests.c A crypto/openssl/test/recipes/20-test_app_s_client.t M crypto/openssl/test/recipes/20-test_cli_fips.t M crypto/openssl/test/recipes/25-test_verify.t D crypto/openssl/test/recipes/30-test_evp_data/evprand.txt M crypto/openssl/test/recipes/30-test_pairwise_fail.t M crypto/openssl/test/recipes/65-test_cmp_msg.t A crypto/openssl/test/recipes/70-test_rio_poll_builder.t M crypto/openssl/test/recipes/70-test_sslrecords.t M crypto/openssl/test/recipes/80-test_cms.t A crypto/openssl/test/recipes/80-test_cms_data/authenticated_attrs.pem A crypto/openssl/test/recipes/80-test_cms_data/authenveloped_attrs.pem A crypto/openssl/test/recipes/80-test_cms_data/bad_authenveloped_attrs.pem M crypto/openssl/test/recipes/80-test_cmsapi.t M crypto/openssl/test/recipes/80-test_ssl_new.t A crypto/openssl/test/rio_poll_builder_test.c M crypto/openssl/test/rpktest.c M crypto/openssl/test/secmemtest.c A crypto/openssl/test/ssl-tests/33-compressed-spki.cnf A crypto/openssl/test/ssl-tests/33-compressed-spki.cnf.in M crypto/openssl/test/sslapitest.c M crypto/openssl/test/x509_test.c M crypto/openssl/util/missingcrypto.txt M crypto/openssl/util/other.syms M crypto/openssl/util/perl/TLSProxy/Proxy.pm _____________________________________________________________________________________________________________ Commit: 64d0098e311aa154d2c17328ea991efe1774099a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=64d0098e311aa154d2c17328ea991efe1774099a Author: Kevin Bowling (Tue 18 Aug 2026 01:33:46 BST) Committer: Kevin Bowling (Tue 1 Sep 2026 01:27:59 BST) bnxt(4): Cross-reference led(4) Point the identification LED documentation to led(4), which describes how to control /dev/led device nodes. Sponsored by: BBOX.io (cherry picked from commit af069400a8ea514c8e55f123cae478aee65e04d5) M share/man/man4/bnxt.4 _____________________________________________________________________________________________________________ Commit: 310c4c9bfb31371aa2f8f5355806631677f37420 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=310c4c9bfb31371aa2f8f5355806631677f37420 Author: Kevin Bowling (Wed 12 Aug 2026 02:29:31 BST) Committer: Kevin Bowling (Tue 1 Sep 2026 01:27:47 BST) ice: Add led(4) identification support Expose the firmware-controlled physical port identification LED through /dev/led/ice*. Use the AdminQ port-identification command to select blinking mode and restore the netlist-selected original mode before the interface is stopped. Sponsored by: BBOX.io (cherry picked from commit a781965b91ea390f9576ae42c35c842db74aab86) M share/man/man4/ice.4 M sys/dev/ice/ice_iflib.h M sys/dev/ice/if_ice_iflib.c _____________________________________________________________________________________________________________ Commit: b15ed4f7a75bd5f197202efc4023b2b87d3d95d3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b15ed4f7a75bd5f197202efc4023b2b87d3d95d3 Author: Nick Price (Sat 15 Aug 2026 03:05:59 BST) Committer: Ed Maste (Mon 31 Aug 2026 19:08:47 BST) aq(4): arm PHY thermal shutdown only where a sensor exists aq_fw2x_thermal_arm() reached for a copper PHY register that the fibre parts do not implement, so arming failed on every init and printed a warning for a capability the hardware cannot have. Return ENOTSUP when the firmware does not advertise a temperature sensor, matching aq_fw2x_get_temp(), and warn only for a genuine failure. Signed-off-by: Nick Price Accepted-by: adrian Approved-by: adrian (cherry picked from commit 6dbf809bafe1421fbf3cdd952748b15437b7c72a) M sys/dev/aq/aq_fw2x.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: af6139be560aec9bb76c0dbaf4724551a5125882 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=af6139be560aec9bb76c0dbaf4724551a5125882 Author: Nick Price (Sat 15 Aug 2026 03:05:07 BST) Committer: Ed Maste (Mon 31 Aug 2026 19:08:40 BST) aq(4): probe the D100 device ID The D100 device ID was defined and handled by aq_hw_capabilities(), but had no entry in aq_vendor_info_array[], so the driver never probed it and the card was left unattached. Add the missing entry; the table lists the fibre variant last within each group, so it follows D109 rather than sorting numerically. Signed-off-by: Nick Price Accepted-by: adrian Approved-by: adrian (cherry picked from commit 1a78f5ae3917b770bd958010dae86574b15d97ff) M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 5c644402109ea0e3a7f3e002006ac95a3d387344 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5c644402109ea0e3a7f3e002006ac95a3d387344 Author: Nick Price (Sun 9 Aug 2026 20:47:31 BST) Committer: Ed Maste (Mon 31 Aug 2026 19:07:57 BST) aq(4): report link transitions and previously silent failures A link flap left nothing in the log to work from. Both the link up and link down messages were gated on bootverbose while the message for a speed change that keeps carrier was not, so a default kernel was silent about a flap yet loud about a downshift -- the inverse of what an operator wants. The generic message from if_link_state_change() carries no speed, so gating the driver's own left the negotiated rate unrecorded. Report both transitions unconditionally. Say more than the rate. aq_hw_get_link_state() already negotiates flow control and throws it away, and Atlantic 2 reports duplex and EEE in the same link status word the rate comes from; decode them through a new get_link_info firmware op and name all of it on the up transition. EEE matters for a flap: low power idle transitions are a common source of marginal link trouble on multi-gigabit copper, and whether it was active is otherwise invisible. Give the down transition a cause. The PHY global fault code was only consulted from the thermal state machine, so an ordinary link loss reported nothing at all. Read the fault code, the firmware link state and the PHY temperature once per transition and append whatever is available. The firmware raises a fault one poll after it drops the link, so a thermal trip usually shows only its temperature here and aq_thermal_poll() names it on the following poll; the temperature alone is enough to separate a hot PHY from a cable event. Warn before the PHY trips rather than only after. The Atlantic 2 health monitor word carries a hot warning bit next to the ready and fault bits that nothing decoded. Report both edges of it from the thermal poll, so an adapter that is approaching its shutdown threshold says so while the link is still up. Expose the firmware's own link transition counters. The Atlantic 2 A0 statistics layout opens with link_up and link_down, which were read out of the firmware on every statistics poll and discarded. Publish them as dev.aq.N.fw_link_up and fw_link_down so a single flap can be told from a link that has been flapping all night. The B0 layout has no equivalent, so the op reports ENOTSUP there and the nodes are not created, matching how the temperature node is handled. Stop announcing a link state that was never read. The return value of aq_hw_get_link_state() was discarded, so a failed read would have been announced as link down. No firmware backend can fail that call today -- all three decode a register with no error path -- but the caller no longer depends on that, and it says so once if it ever starts failing. Report the hardware failures that were being discarded. The driver already reports the errors it keeps, so what stayed quiet was the set of calls whose result was never examined at all. None of these are expected to fail, which is precisely why a failure needs to say so: each one leaves the interface running but misconfigured in a way that presents as a network problem rather than a driver problem. aq_if_init() discarded aq_hw_start(), aq_hw_rss_hash_set(), aq_hw_rss_set() and aq_hw_udp_rss_enable(), so a datapath that never started or an indirection table that was never programmed showed up only as an interface that passes no traffic or delivers every flow to one queue. aq_mc_filter_apply() discarded aq_hw_mac_addr_set(), so a multicast address the stack believes is programmed could silently not be; report the address that failed and leave the filter slot for the next one instead of burning it. aq_update_vlan_filters() reported only the last of its three register writes. aq_if_stop() discarded both ring stop calls and the MAC reset, and a MAC that did not reset can still be mastering the bus. aq_if_detach() and aq_if_suspend() discarded aq_hw_deinit(). The interrupt moderation update on a link speed change was dropped as well; it runs only on a transition, so reporting it cannot become noisy. aq_if_attach_pre() discarded aq_hw_capabilities(), which is the only behavioral change here: it now fails the attach rather than continuing with an unset media type and an empty link speed mask, which would attach an interface that can never negotiate a link. It returns an error only for a device the probe table does not cover, so it is not reachable in practice. Document the resulting sysctls, along with the existing temperature and tracing nodes, which had no manual page coverage. Tested on an AQC113C (Atlantic 2 B0, firmware 1.5.38). Link up reports "speed=10000, full-duplex, flowcontrol none, EEE off", and "speed=1000" after a forced renegotiation, so the rate and duplex are read rather than assumed. A cable pull reports "link DOWN, F/W link state 0, temp 59 C" with the PHY fault clause correctly absent, which is what separates a cable event from a thermal trip. The B0 interface reports ENOTSUP for the link counters, so those two nodes are correctly not created. Traffic is unaffected: ten flows spread over all eight RX queues with no errors and no drops. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58749 Signed-off-by: Nick Price (cherry picked from commit af3f2dd124f07342c273dc017bc5e73639e446a5) M share/man/man4/aq.4 M sys/dev/aq/aq2_fw.c M sys/dev/aq/aq2_hw.h M sys/dev/aq/aq_device.h M sys/dev/aq/aq_fw.h M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_irq.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 098d9810d7da2f3f0c63e011741adebab9239049 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=098d9810d7da2f3f0c63e011741adebab9239049 Author: Nick Price (Sun 2 Aug 2026 23:45:03 BST) Committer: Ed Maste (Mon 31 Aug 2026 19:07:57 BST) aq(4): interface lifecycle and link-state fixes aq_if_init() programmed the address captured at attach, so an address set with "ifconfig ether" or by lagg(4) enslavement was never written to unicast filter slot 0: the interface transmitted with the new address but the MAC still filtered on the old one, so it received nothing. Copy the current if_getlladdr() the way the other iflib drivers do. The link state could latch UP forever. aq_if_stop() cleared linkup before calling aq_if_update_admin_status(), which suppressed the LINK_STATE_DOWN transition the "link was UP" branch would have made. Announce the down transition directly from aq_if_stop() instead, and do not poll the admin status there at all: the MAC has just been reset, so a stale link reading would re-announce the link as up. The admin task itself had to stop reporting a link on a stopped interface. iflib runs it while either IFF_DRV_RUNNING or IFF_DRV_OACTIVE is set, and iflib_stop() sets OACTIVE, so the task kept polling after the stop and re-announced LINK_STATE_UP behind the driver's back. Treat a non-running interface as having no link. A lagg(4) parent otherwise keeps hashing flows onto a port whose carrier is gone, because LAGG_PORTACTIVE tests if_link_state together with IFF_UP. Stop the rest of the task there as well: the PHY thermal poll and the initialization retry both end in iflib_request_reset(), and _task_fn_admin() acts on that with no test of its own, so either could re-initialize an interface the operator had just taken down. aq_if_update_admin_status() also only reacted to transitions in and out of zero speed, so an autoneg downshift that kept the link up left if_baudrate, ifmedia, RX pause and interrupt moderation programmed for the old speed. Track the announced speed and re-run that work when it changes. aq_if_suspend() resets the MAC and stops the rings, but iflib_device_suspend() only calls IFDI_SUSPEND and never stops the interface, leaving IFF_DRV_RUNNING set over a suspended device. Clear it. Signed-off-by: Nick Price Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58473 (cherry picked from commit c956cc0f033a4050fbca4e39fdace7276a588e15) M sys/dev/aq/aq_device.h M sys/dev/aq/aq_irq.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 9a9026fac352ffa05b1b6b1bffab411e056f1f5b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9a9026fac352ffa05b1b6b1bffab411e056f1f5b Author: Nick Price (Sun 2 Aug 2026 23:44:53 BST) Committer: Ed Maste (Mon 31 Aug 2026 19:07:57 BST) aq(4): mailbox, flow-control and firmware error-handling fixes Fold the whole-driver-review correctness and hardening fixes for the firmware and hardware layers. Advance the firmware-mailbox address per word in aq_hw_fw_downld_dwords(): on B1 silicon each loop iteration waits for the mailbox address register to differ from the expected address, but it was set once and never moved, so after the first word every wait returned immediately and read stale data. Advance it four bytes per word. B0 is unaffected (it polls the busy bit). The same function also left err set to ETIMEDOUT after successfully force-recovering the RAM CPU semaphore; the transfer loop is guarded by "--cnt && !err", so it ran zero iterations and returned a timeout with an untouched buffer, making the recovery path dead code. aq_hw_get_mac_permanent() ignored the get_mac_addr() error and then examined a buffer the firmware op never wrote on failure. A fresh softc is zero, so the "invalid address" test fired, a random locally administered MAC was substituted, and err was overwritten with 0 -- a transient mailbox failure produced a card that attached with a different MAC every boot. Fail instead; the random-address fallback still covers a genuinely blank or multicast burned-in address. aq_fw1x_reset() discarded the same download's return value and then read transaction_id out of an uninitialized stack struct, so propagate that error too. Encode RX-only flow control as PAUSE|ASYM_PAUSE rather than PAUSE alone: firmware 2.x/3.x has no independent RX-only bit, so the old encoding advertised symmetric pause when RX-only was requested. The MPI_INIT path also never cleared the pause bits before OR-ing in the requested ones, so flow control could be enabled and never disabled; clear them first, as the Atlantic 2 and Linux implementations do. Reject single-vector MSI in aq_if_attach_post() the same way legacy INTx is rejected: ift_legacy_intr is NULL, so no driver filter would acknowledge the not-clear-on-read, auto-masked device interrupt status; every supported Atlantic device provides MSI-X. Propagate firmware and MDIO errors instead of discarding them. The fw2x MDIO primitive returned a data word with no way to report a controller timeout; give aq_fw2x_mdio_op() a status return and a data out-parameter, propagate it through phy_write/read/reset/thermal_arm, and stop advancing the thermal recovery state machine when a PHY reset fails. Use that error to end the PHY address scan early: aq_fw2x_init_phy_id() probed all 32 MDIO ports even when the controller itself was timing out, spending up to ten seconds under fw_mtx and the iflib context lock. aq_fw2x_reset() also drove the shared MIF mailbox without fw_mtx, unlike every other fw2x mailbox user, so it could interleave with the temperature sysctl and load the capability mask from the wrong window. aq_hw_mpi_set() can return ETIMEDOUT when the Atlantic 2 shared firmware buffer is not acknowledged; aq_hw_init() now aborts through its error path rather than enabling rings with an unaccepted link state, and aq_if_init() logs the later link-speed error. Retry a failed initialization instead of leaving the link down. ifdi_init has no return value, so iflib marks the interface running once aq_if_init() returns; a propagated firmware-ack failure would otherwise leave it running with no initialized hardware and no recovery. Record the failure and retry from the admin task via iflib_request_reset(), paced by the once-per-second timer, giving up after a bounded number of attempts. Ring and queue start failures are deliberately left to the existing diagnostic, since they leave the remaining queues usable. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58437 (cherry picked from commit b445000158d39a126f5fcd6e18bbc32248f0bc68) M sys/dev/aq/aq_device.h M sys/dev/aq/aq_fw1x.c M sys/dev/aq/aq_fw2x.c M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_irq.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 8ac0e35d6b5bd0584abc1262be6874dd98512649 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8ac0e35d6b5bd0584abc1262be6874dd98512649 Author: Nick Price (Sun 2 Aug 2026 23:44:43 BST) Committer: Ed Maste (Mon 31 Aug 2026 19:07:57 BST) aq(4): clean up diagnostics and remove dead code Non-functional cleanup, no change in behavior. device_printf() already prefixes each line with the device name, so the inline "atlantic:" token in the status and error messages produced a doubled prefix and diverged from the trace macros; remove it so all output carries one uniform "aqN:" prefix. Compile the RX/TX descriptor tracers only when AQ_CFG_DEBUG_LVL > 2 and make them no-op macros otherwise, so the default build no longer pays a cross-TU call plus argument evaluation per descriptor. Drop enum aq_dev_state, struct aq_rx_filters, and struct aq_vlan_tag, which have no remaining references now that VLAN state lives in a bitstr_t. Replace the four identical aq_sysctl_print_{tx,rx}_{head,tail} handlers, each carrying a dead write path on a read-only oid, with one aq_sysctl_print_ring_ptr that selects the accessor from arg2. Reduce the thermal and PHY-recovery comments to single terse lines that keep the load-bearing register numbers and the A1-vs-A2 recovery difference. Signed-off-by: Nick Price Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58436 (cherry picked from commit ae7e2c9170f6f7e39ab3132eb72c89f9f6e3a4d6) M sys/dev/aq/aq_dbg.c M sys/dev/aq/aq_dbg.h M sys/dev/aq/aq_device.h M sys/dev/aq/aq_irq.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: fa12e6e1dee7a8e1a43aaaead07e4f32e58bb881 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fa12e6e1dee7a8e1a43aaaead07e4f32e58bb881 Author: Nick Price (Sun 2 Aug 2026 23:44:33 BST) Committer: Ed Maste (Mon 31 Aug 2026 19:07:57 BST) aq(4): PHY thermal-shutdown handling and correctness fixes Fold the thermal-protection work and the correctness fixes that landed alongside it. Report and auto-recover from PHY thermal shutdown. The Atlantic PHYs can autonomously shut down on over-temperature, latching global fault 0x8007 and dropping the link; Atlantic 2 ships this armed, Atlantic 1 disabled. Arm it on Atlantic 1 at interface init (1E.C478.A via the MAC's MDIO controller), and recover from a trip automatically: the admin-status poll detects the fault, logs the shutdown limit and measured temperature, and holds the link down until the PHY cools, then restores it -- Atlantic 1 needs a PHY reset (1E.2681.0) with the MAC firmware running plus a full re-init, Atlantic 2 recovers on the re-init alone. New firmware ops get_phy_fault, phy_reset, thermal_arm, and get_thermal_limit back the state machine in aq_if_update_admin_status(). Make that Atlantic 1 thermal MDIO path address-correct and fail-safe. The direct-MDIO helpers hardcoded the Clause-45 port address to 0, but it is strap-selectable: on a board whose PHY answers elsewhere every thermal op targeted nothing, so arming silently no-oped and the post-trip reset never cleared the latch. Discover the address by scanning ports 0..31 for a PMA/PMD identifier and form it as (phy_id << 5) | mmd, marking it valid only when a PHY actually answers. aq_fw2x_phy_read also returned 0 on a semaphore timeout, indistinguishable from a real 1E.C478 == 0, so thermal_arm could zero live provisioning bits; give the read an error return and gate thermal_arm and get_thermal_limit on it. Bound the multicast filter slot index. aq_mc_filter_apply() programmed slot count + 1 and bailed only at count == AQ_HW_MAC_MAX (33), one address too late, so a 33rd entry raced in between the if_llmaddr_count() snapshot and the if_foreach_llmaddr() walk drove an out-of-bounds MMIO write to slot 33. Fire the guard at AQ_HW_MAC_MAX - 1, and also reject index >= AQ_HW_MAC_MAX in aq_hw_mac_addr_set() where the slot becomes an RPF register offset. Correctness and safety fixes: initialize the sysctl context in attach_pre so the iflib fail-path detach cannot sysctl_ctx_free() an uninitialized list (a page fault when MSI/MSI-X is denied); range-check the Atlantic 2 action-resolver table index, taken verbatim from a firmware-supplied base, before writing the ART registers; and accumulate statistics deltas as unsigned, since AQ_SDELTA discarded a forward delta of 2^31 or more at 10G across a stretched admin poll. Signed-off-by: Nick Price Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58435 (cherry picked from commit b68f4667612ff8cde2fefc94f8b31377b128ea7e) M sys/dev/aq/aq2_fw.c M sys/dev/aq/aq2_hw.h M sys/dev/aq/aq_device.h M sys/dev/aq/aq_fw.h M sys/dev/aq/aq_fw2x.c M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_irq.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 4c44da6e965e6a13ea75e3b3f9a2b5ee771c9b95 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4c44da6e965e6a13ea75e3b3f9a2b5ee771c9b95 Author: Nick Price (Sun 2 Aug 2026 23:44:16 BST) Committer: Ed Maste (Mon 31 Aug 2026 19:07:57 BST) aq(4): observability controls and sysctl/header hygiene Fold the driver's observability and infrastructure work. Make aq_device.h self-contained: it declares struct aq_dev in terms of iflib, bitstring, socket, and ethernet types but included none of the headers that define them, compiling only because every includer happened to pull those first. Include what it uses. No functional change. Make the debug controls per-instance. The debug and debug_categories sysctls were registered per device but pointed at file-scope globals, so writing dev.aq.1.debug also changed dev.aq.0.debug and a card could not be traced in isolation. Move the level and category mask into struct aq_dev, reach them through the aq_dev back-pointer in struct aq_hw (wired up in attach_pre before the first firmware trace and guarded against a NULL deref), emit through device_printf() so each line carries its unit, and seed initial values from per-unit device hints so attach can be traced. Expose the PHY die temperature as dev.aq.N.temperature through a new firmware get_temp op: Atlantic 1 v2 reads it through the mailbox MPI control/state toggle, Atlantic 2 from the phy_health_monitor block in the OUT window (located at 0x13620 and confirmed by its ready bit). Atlantic 1 v1 has no sensor and exposes no node. Because this is the first firmware accessor iflib does not serialise, add a per-instance mutex in struct aq_hw and take it across the v2 read-modify-write in set_mode(), get_stats(), get_mode(), and get_temp(); the v1 and Atlantic 2 paths do not need it and say so. Trace the Atlantic 2 firmware path, which previously emitted nothing at any debug level (aq2_fw.c did not even include aq_dbg.h): the boot handshake, reset policy, MAC address, and link mode set/read, using the existing dbg_init and dbg_fw categories, with the per-poll mode read at detail level. Scope the driver sysctls to a context freed at detach. They were registered on the device newbus context, which newbus tears down only after DEVICE_DETACH returns, yet iflib frees the rings and softc inside DEVICE_DETACH -- a sysctl read racing detach could touch freed memory. Give the driver its own sysctl_ctx_list and free it at the start of aq_if_detach, draining in-flight readers first. Signed-off-by: Nick Price Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58434 (cherry picked from commit 9e067f207dc2da57df49812809cc5034030f61d1) M sys/dev/aq/aq2_fw.c M sys/dev/aq/aq2_hw.h M sys/dev/aq/aq_dbg.c M sys/dev/aq/aq_dbg.h M sys/dev/aq/aq_device.h M sys/dev/aq/aq_fw.c M sys/dev/aq/aq_fw.h M sys/dev/aq/aq_fw1x.c M sys/dev/aq/aq_fw2x.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_main.c M sys/dev/aq/aq_ring.c _____________________________________________________________________________________________________________ Commit: 66375270f087f8a6d87670cc0b7dcced2259065f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=66375270f087f8a6d87670cc0b7dcced2259065f Author: Nick Price (Mon 20 Jul 2026 23:11:51 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:40:14 BST) aq(4): Document the Atlantic 2 (AQC113/114/115/116) devices List every AQC part aq_vendor_info_array[] probes, each with the maximum speed aq_hw_capabilities() grants it. Only the Atlantic 2 parts link at 10 Megabit. The AQC100 and AQC100S are the only SFP+ controllers; the rest are twisted pair. Reviewed by: adrian, ziaee Signed-off-by: Nick Price Differential Revision: https://reviews.freebsd.org/D58144 (cherry picked from commit 1d89845e90867e2f970c651c342eb07da847b6e9) M share/man/man4/aq.4 _____________________________________________________________________________________________________________ Commit: 7d9bb766b5f6be9914be08bca520010cf272ed86 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7d9bb766b5f6be9914be08bca520010cf272ed86 Author: Nick Price (Sun 19 Jul 2026 17:48:23 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:37:00 BST) aq(4): correct Atlantic 2 register access Four Atlantic 2 register-access corrections found in bring-up. B0 aggregate octet counters: the B0 firmware statistics interface reports only aggregate rx/tx good octets, not the per-cast breakdown A0 and Atlantic 1 provide, so every octet sysctl read a permanent zero while frame counters advanced. Populate the aggregate octet fields from the B0 buffer; aq_update_hw_stats() accumulates them directly when the per-cast octets are absent. Drop the duplicate attach-time MCP reboot: aq_hw_mpi_create() already reboots the A2 firmware to read its version and caps, then aq_hw_reset() immediately rebooted it again -- a full MCP restart plus several transaction-id-bracketed window reads, adding attach latency and a duplicate banner. Give aq_hw_reset() a reboot flag and pass reboot=false for A2 at attach; the load-bearing down/stop reboot (which resyncs A2 RX DMA across ifconfig down/up) keeps reboot=true. Skip Atlantic 1 register accesses on Atlantic 2: gate out the 0x7040 Atlantic 1 TPO write (which A2 lacks; already a no-op via the unset TPO2 feature, but Linux hw_atl2 omits it), and guard the aq_hw_mpi_read_stats() direct reads of reg_rx_dma_stat_counter7 (dpc) and the LRO counter (cprc) with !ATLANTIC2 -- those are Atlantic 1 codegen offsets that on Atlantic 2 land on unrelated registers and can report bogus input-drop / LRO counts. HW-validated on AQC107 <-> AQC113C: A1 stats unchanged, A2 IQDROPS stays 0, attach consumes one MCP reboot instead of two, bidirectional iperf3 clean. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58143 (cherry picked from commit c325b4024d61fe20f8140d6891074ca7276c4d58) M sys/dev/aq/aq2_fw.c M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 73f2d66f8d3dd585607e7fc607daa69d04084aad URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=73f2d66f8d3dd585607e7fc607daa69d04084aad Author: Nick Price (Sun 19 Jul 2026 17:48:14 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:37:00 BST) aq(4): program the Atlantic 2 multiqueue datapath Wire up the Atlantic 2 receive datapath: the action-resolver table (ART), multiqueue RSS, QoS, and interrupt moderation. RX action-resolver table: Atlantic 2 replaces Atlantic 1's discrete RX filter registers with an ART -- hardware computes a per-packet classification tag, then walks {tag, mask, action} rows to drop, assign a queue, or assign a TC. aq_hw_art_filter_set() installs one row under the ART semaphore; aq_hw_init_rx_path() enables the resolver, tags L2 unicast/broadcast, installs the unicast/all-multicast and VLAN drop rows, and assigns every 802.1p priority to TC 0 (mirroring the Atlantic 1 user-priority map, since our RX side is a single 8-ring group in TC 0). Tag every enabled VLAN filter in the per-filter resolver-tag field -- a register the BSD ports never write -- because the VLAN drop row matches resolver tag 0, so without it all tagged receive was dead under VLAN filtering. Promiscuous mode disables the drop rows rather than toggling the Atlantic 1 promiscuous bits; all ART callers surface a semaphore timeout consistently. The Atlantic 1 RX_TCP_RSS_HASH and TPO2 programming is gated to Atlantic 1. Multiqueue RSS and QoS: fill Atlantic 2's own per-TC redirection table (AQ2_RPF_RSS_REDIR), skipping the Atlantic 1 table and its write-enable handshake. Program Atlantic 2's smaller packet-buffer sizes, its wider data-TC credit/weight fields, and its ring-to-TC map, using aq_hw_active_tcs() for the TC loops. RSS hash types: the Atlantic 2 resolver has per-protocol hash-type enables in REDIR2, so build the mask from aq_rss_hashconfig() instead of hardcoding every protocol -- UDP 4-tuple hashing now follows the kernel policy (off by default) with no L3L4 flow-filter workaround, and aq_hw_udp_rss_enable() is skipped on Atlantic 2. The kernel-to-hardware hash-type mapping is a small static lookup table rather than a nine-branch chain, since the two bit spaces do not share a simple shift. Tx interrupt moderation: Atlantic 2's per-ring Tx moderation control register lives at a different address, but its field layout matches the value the driver already builds, so write that value straight to it; Rx moderation is shared. HW-validated on AQC107 <-> AQC113C: TCP RSS spreads across 7/8 RX queues under 16 parallel flows, rx_err=0. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58142 (cherry picked from commit 418e7fd13b5aa201c0f9eb65ab2f9a0c1810ba23) M sys/dev/aq/aq2_hw.h M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 8b08cf8d20328d62c327b42bf7b9a46b7d227a88 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8b08cf8d20328d62c327b42bf7b9a46b7d227a88 Author: Nick Price (Sun 19 Jul 2026 17:48:05 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:37:00 BST) aq(4): add Atlantic 2 (AQC113) device support Add support for the Marvell Atlantic 2 (AQC113/114/115/116) controllers, a new chip generation that is not register-compatible with the Atlantic 1 parts aq(4) supports today. Adapted from the OpenBSD/NetBSD if_aq driver. Register and device definitions (aq2_hw.h): the firmware handshake (MIF_BOOT / MCP_HOST_REQ_INT / MIF_HOST_FINISHED), the 0x12000/0x13000 firmware interface windows, and the action-resolver table (ART) that replaces Atlantic 1's discrete RX filters, plus the Atlantic 2 PCI device ids and the aq_is_atlantic2() helper. Reserve a chip-feature bit (AQ_HW_CHIP_ATLANTIC2) and add the aq_hw fields the firmware fills at boot (ART base index, statistics interface version A0/B0). The per-VLAN-filter resolver-tag field comes from the Linux driver; the BSD sources never write it. Firmware operations (aq_fwa2.c): Atlantic 2 talks to the management CPU through the 0x12000/0x13000 register windows plus the boot handshake, rather than Atlantic 1's mailbox in shared RAM. Implement that as a third aq_firmware_ops vtable (reset, set_mode, get_mode, get_mac_addr, get_stats); aq_fwa2_reboot() boots the firmware, selects the A2 ops, and reads the version and ART base index, failing fast on the crash-init / boot-failed bits. fwa2_set_mode advertises full duplex only (the media model exposes no half-duplex types) and writes and acks the link options before raising ACTIVE mode, so a forced media change does not begin negotiation with a stale rate mask. enum aq_fw_link_speed gains aq_fw_10M, which Atlantic 2 supports and Atlantic 1 does not. Probe and attach: list the device ids with their media types and link speeds (all copper; AQC113* up to 10G, AQC116C to 1G), populate hw->device_id, and tag the generation with AQ_HW_CHIP_ATLANTIC2 so IS_CHIP_FEATURE() recognises it uniformly. Branch firmware bring-up and reset on the generation: aq_hw_init_ucp() and aq_hw_reset() reboot the MCP instead of the Atlantic 1 RBL/FLB reset -- without a real datapath reset every stop/init cycle reprograms the rings on a live, desynced RX DMA engine and the receive path stays dead. aq_hw_init() programs the Atlantic 2 launch-time clock ratio in place of the Atlantic 1 MRRS / TX-DMA request-limit clamp. Add an AQ_LINK_10M capability bit (Atlantic 2 links at 10M, Atlantic 1 cannot), offer 10baseT media, and map IFM_10_T to aq_fw_10M. With every supported media type now present, replace the per-speed switch statements in aq_media.c with a single {link bit, fw rate, IFM_* subtype, Mbit/s} table -- one source of truth for the supported link speeds. With this an Atlantic 2 card probes, brings up its firmware, reads its MAC, and negotiates link; the RX action-resolver datapath comes next. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58141 (cherry picked from commit dc5c0fc51cf47d6dfc737343e06805db294258e9) M sys/conf/files A sys/dev/aq/aq2_fw.c A sys/dev/aq/aq2_hw.h M sys/dev/aq/aq_device.h M sys/dev/aq/aq_fw.h M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_main.c M sys/dev/aq/aq_media.c M sys/modules/aq/Makefile _____________________________________________________________________________________________________________ Commit: cda01e24d28fe56f282a37ffc9e494bddc01ff3f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cda01e24d28fe56f282a37ffc9e494bddc01ff3f Author: Jose Luis Duran (Tue 25 Aug 2026 18:27:28 BST) Committer: Jose Luis Duran (Mon 31 Aug 2026 18:29:51 BST) openssh: Fix shosts.equiv path in manual pages Change the path for the shosts.equiv file to consistently reflect /etc/ssh/shosts.equiv across all manual pages. This change stems from 35d4ccfb5576 ("Document FreeBSD defaults and paths.") Reviewed by: bcr, emaste Differential Revision: https://reviews.freebsd.org/D52203 (cherry picked from commit 336cc041a492b03fde96fd89915ae694cf31b551) M crypto/openssh/ssh.1 M crypto/openssh/sshd.8 _____________________________________________________________________________________________________________ Commit: 66c45406f5eda04039d8f9699b9cdab61e1cb7b4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=66c45406f5eda04039d8f9699b9cdab61e1cb7b4 Author: Jose Luis Duran (Mon 24 Aug 2026 21:45:50 BST) Committer: Jose Luis Duran (Mon 31 Aug 2026 18:29:29 BST) ministat.1: Match actual output Fix a documentation discrepancy, where the implementation was updated to use uncertainty propagation for the ratio of means, but the example output in the manual page was left unchanged. Update the manual page example from 70.7384% to 102.3% to reflect the actual output. While here, also update the example in the README. Reviewed by: ziaee Fixes: a304ad90e9ae ("Reduce the bogosity of ministat's % difference calculations.") MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59157 (cherry picked from commit 595e665cb292a70f9d17b779c8ad0470ff3e3964) M usr.bin/ministat/README M usr.bin/ministat/ministat.1 _____________________________________________________________________________________________________________ Commit: 3da3a8379e002eca5940d0549b365a919424f5a8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3da3a8379e002eca5940d0549b365a919424f5a8 Author: Nick Price (Sun 19 Jul 2026 17:47:38 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:17:13 BST) aq(4): remove dead code and tidy macros, diagnostics, and naming Non-functional cleanup, with two diagnostic corrections. Dead code: delete leftover commented-out AQ_DBG_ENTER/EXIT/PRINT calls (aq_hw.c, aq_fw2x.c, aq_irq.c, aq_main.c), a commented-out aq_nic_cfg local, the stale old-signature parameter blocks between the ring-init declarations and their bodies (aq_ring.c), a trailing note on a live statement, and the unused DumpHex() vendor debug helper (no callers; its body only compiled under AQ_CFG_DEBUG_LVL > 3). Register-write macros: parenthesize AQ_WRITE_REG_BIT's msk/shift/value arguments so a compound argument cannot mis-bind, give AQ_HW_FLUSH() an explicit hw parameter instead of capturing it from caller scope, and drop the duplicate lowercase aq_hw_write_reg[_bit] aliases (converting the 43 call sites to the uppercase spelling) so there is a single form. Diagnostics: the aq_log* family expanded through the base log macro, which ignored its level and printed unconditionally, while the error traces gated on a debug level that defaulted below LOG_ERR and so were suppressed -- backwards. Gate the base log macro the way the trace one does and default the level to lvl_error, so the once-per-event firmware reset / capability errors are visible by default while the verbose info/dump output stays opt-in. Naming: rename identifiers carried verbatim from the vendor import that do not match style -- names mixing an ALL-CAPS macro-style prefix with a lowercase tail, and a trailing underscore the vendor used as a "file-local" marker in place of static. - dbg_level_ / dbg_categories_ -> aq_dbg_level / aq_dbg_categories: these are real globals (the log/trace macros reference them from every translation unit), so the trailing underscore was never a stand-in for static; give them the aq_ namespace so the driver stops exporting generically-named global symbols. - log_base_ / trace_base_ -> aq_log_base / aq_trace_base: the internal macros behind the aq_log*/trace* families. - bootExitCode / flbStatus -> boot_exit_code / flb_status (aq_fw.c); flb_status now matches the identically-purposed variable already spelled that way in the sibling FLB-reset path. Cosmetic: terminate the ring/HW-init, MSI-X admin-handler, and media-change error messages with a newline so they are not garbled into adjacent dmesg output, and label the per-queue rx_bytes sysctl "RX Octets" (it was copy-pasted "TX Octets"). Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58140 (cherry picked from commit f1796e8781ca8a632ffa0861b2e09944d225c479) M sys/dev/aq/aq_dbg.c M sys/dev/aq/aq_dbg.h M sys/dev/aq/aq_fw.c M sys/dev/aq/aq_fw1x.c M sys/dev/aq/aq_fw2x.c M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_hw_llh.c M sys/dev/aq/aq_irq.c M sys/dev/aq/aq_main.c M sys/dev/aq/aq_media.c M sys/dev/aq/aq_ring.c _____________________________________________________________________________________________________________ Commit: 03037d0cfae560e2620c629e607eb21667cf0880 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=03037d0cfae560e2620c629e607eb21667cf0880 Author: Nick Price (Sun 19 Jul 2026 17:46:29 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:17:13 BST) aq(4): harden the interrupt and MAC-statistics paths Firmware-statistics accounting and interrupt-routing fixes. Stats delta underflow: guard the MAC statistics delta accumulation against counter wrap or a firmware counter reset, so a snapshot smaller than the previous one does not underflow into a huge spurious delta. Skip stats on a failed read: aq_update_hw_stats() ignored aq_hw_mpi_read_stats()'s return and committed the on-stack mbox into last_stats unconditionally. On a failed read that snapshot is garbage or zero and poisons the delta baseline (a zeroed snapshot wipes last_stats, so the next good read double-counts). Check the return and skip the accumulation and the last_stats commit on failure. Mailbox/stats separation: struct aq_hw_stats served both as the raw fw1x MCP mailbox layout and as the driver's canonical stats snapshot, so any field added to it would silently shift the fw1x mailbox read. Give the fw1x mailbox its own raw layout in struct aq_hw_fw_mbox and let aq_hw_stats become purely driver-owned; with the coupling gone, add first-class aggregate octet fields (brc/btc) that Atlantic 2 B0 firmware can populate directly. No A1 behavior change. The raw block is a named struct (aq_fw1x_mbox_stats) with a _Static_assert tying its size to aq_hw_stats' matching prefix, so the fw1x memcpy cannot silently misalign if either field list drifts. Also drop the unused FW1X_MPI_STATE_ADR / FW1X_MPI_CONTROL_ADR macros and the redundant fw1x_get_stats() dpc assignment that the caller immediately overwrites. Per-speed interrupt moderation: aq_hw_interrupt_moderation_set() hardcoded speed_index = 0, so every link speed got the 10G timer pair and the other rows were dead. Record the negotiated rate and index the tables by ffs(speed) - 1, reordering the rows to match the enum aq_fw_link_speed bit positions so the index cannot drift from the enum. Rename the two per-speed timer tables (AQ_HW_NIC_timers_table_ {rx,tx}_ -> aq_itr_timers_{rx,tx}), function-local static arrays whose SCREAMING_CASE vendor names read like macros. Hardware error interrupts: route both hardware error causes (interrupt map register 0) to the admin vector so they are actually delivered. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58139 (cherry picked from commit 65fd3b4165eff52f3447c70db8d10ef67875c022) M sys/dev/aq/aq_fw1x.c M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_irq.c _____________________________________________________________________________________________________________ Commit: a0170642da744a1f6fa920e0b04fb3e8a2c9ff3b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a0170642da744a1f6fa920e0b04fb3e8a2c9ff3b Author: Nick Price (Sun 19 Jul 2026 17:41:49 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:17:13 BST) aq(4): harden the attach, detach, and reset error paths Correct several attach/detach/reset paths that either swallowed failures or acted on undefined state. MSI-X attach-failure double-free: aq_if_msix_intr_assign() freed the per-RX-ring interrupts in its failure path and then returned an error, so iflib's IFDI_DETACH freed the same irq structures again -- bus_teardown_intr() on a dangling tag and bus_release_resource() on an already-released IRQ, panicking a box that should have simply failed to attach. Let iflib own the teardown; drop the failure-path loop and the now-dead index bookkeeping. Detach loop bound: aq_if_detach() freed the per-ring interrupts looping to isc_nrxqsets while indexing rx_rings[], which is sized by rx_rings_count; index by rx_rings_count to match every other RX-ring loop. AQ_HW_WAIT_FOR final poll: the macro derived its result from the loop counter rather than the condition, so a condition that became true on the last iteration reported ETIMEDOUT. Worst for the acquire-on-read firmware RAM semaphore, which was acquired in hardware but reported as a timeout. Return based on the last evaluation of the condition. RBL MAC reset SPI cleanup: mac_soft_reset_rbl() fired the global reset without first tearing down the SPI/flash interface, so a flash burst in flight left the SPI bus wedged, the RBL could not re-read flash, and the reset returned EBUSY -- fatal at attach ("MAC reset failed: 16"). Set bit 4 of the SPI control register (0x53c) before the global reset, as the sibling FLB path and the Linux driver do. Reset failure propagation: aq_hw_reset() discarded fw_ops->reset()'s return, so a failed attach-time fw2x capability read left fw_caps == 0 permanently and stats silently froze. Propagate the error so the reset fails and is retried. aq_hw_init failure propagation: aq_hw_init() discarded aq_hw_init_tx_path()/aq_hw_init_rx_path() returns and reported success, bringing the interface up half-initialized; capture both and goto err_exit (mainly the Atlantic 2 RX action-resolver path, which returns EBUSY on ART semaphore timeout). Link-state outputs: aq_hw_get_link_state() left *link_speed and *fc_neg unwritten on early-return paths, and the caller acts on them uninitialized, so a transient firmware get_mode() failure could fabricate a phantom link-up at a garbage speed and program a garbage RX-pause bit. Initialize both to safe link-down values before calling get_mode(). Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58138 (cherry picked from commit 557866b899b632ca4160953e5430cd9ccba8b570) M sys/dev/aq/aq_common.h M sys/dev/aq/aq_fw.c M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 239718d5f48ef113e05654bcdc0390782d10244a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=239718d5f48ef113e05654bcdc0390782d10244a Author: Nick Price (Sun 19 Jul 2026 17:41:37 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:17:13 BST) aq(4): honor the kernel RSS policy and add a TX traffic-class helper Align RX steering with the kernel RSS framework and factor out the active-traffic-class count. RSS key and indirection table: on an options RSS kernel the stack owns a canonical hash key and a hash-to-bucket indirection table binding each bucket to a CPU. aq programmed a random arc4rand() key and a plain i % rss_qs table, so the hash it stamped in iri_flowid and the queue it steered a flow to did not match the CPU the stack chose -- defeating RSS affinity. Under #ifdef RSS take the key from rss_getkey() and each entry from rss_get_indirection_to_bucket(), as e1000/ixgbe/ixl do; the non-RSS build keeps the random key and round-robin table. RSS hash-type policy: drop the private hw.aq.enable_rss_udp knob (RDTUN, default on) and add aq_rss_hashconfig(), which under options RSS returns rss_gethashconfig() and otherwise the same UDP-off default. UDP 4-tuple hashing scatters a fragmented datagram's pieces across queues because only the first fragment carries the L4 ports, so it is now off by default and re-enabled the standard way, via net.inet.rss.udp_4tuple, matching ix/ixl/mlx5. On Atlantic 1 the UDP-off action stays the existing L3L4 flow-filter workaround; only its policy source changes. TX traffic-class helper: factor the active-TC count (one per active 8-ring group, capped at HW_ATL_B0_TCS_MAX) out of aq_hw_qos_set() into aq_hw_active_tcs(), so there is a single definition of the policy; the Atlantic 2 RSS redirection table reuses it. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58137 (cherry picked from commit 9b4585afd31384573fcebd156d0e4af32bcddf9e) M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: dcfe983dd5fc0ebff5cd525cae49fedc0f524ebf URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dcfe983dd5fc0ebff5cd525cae49fedc0f524ebf Author: Nick Price (Sun 19 Jul 2026 17:40:46 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:17:12 BST) aq(4): drop errored RX frames instead of resetting the interface aq_isc_rxd_pkt_get() returned EBADMSG when a receive descriptor's MAC/receive-error bit (rx_stat bit 0) was set. iflib treats any error from isc_rxd_pkt_get() as a fatal ring fault and answers with IFC_DO_RESET -- a full interface reinitialization. A per-frame receive error is not a ring fault: on a marginal link or cable the Atlantic delivers errored frames continuously, so each one triggered another reset and the interface reset-stormed itself into carrying no traffic instead of merely dropping the bad frames. The Atlantic delivers errored frames to the host by design (Linux drops them in software via buff->is_error), and iflib offers no per-frame error return that isn't a reset. Follow the vmxnet3 model: on a receive error zero the fragment lengths and return success. iflib then discards the packet (assemble_segments() excludes zero-length fragments) while still recycling the descriptors through the refill path -- no reset. Also drop frames flagged with an RX-DMA fault (rdm_err), not just the MAC-error bit; and keep iri_len non-zero on that drop path, since iflib asserts iri_len != 0. The genuinely structural errors -- more segments than isc_rx_nsegments, or a pkt_len inconsistent with the descriptor count -- still return EBADMSG, since those indicate a confused ring where a reset is the right recovery. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58136 (cherry picked from commit 73cd4048807dc0b3a5329bfc9a80ea4bf2d975fd) M sys/dev/aq/aq_ring.c _____________________________________________________________________________________________________________ Commit: 1a8240f5524b9fbc035e5aa11e4a9419e5c56380 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1a8240f5524b9fbc035e5aa11e4a9419e5c56380 Author: Nick Price (Sun 19 Jul 2026 17:40:36 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:17:12 BST) aq(4): expand and correct offloads, fix VLAN/multicast filtering Advertise the offloads the hardware already performs, correct the TX descriptor's L3 family selection, and correct the VLAN and multicast receive-filter paths. Offloads: advertise IFCAP_HWCSUM_IPV6 (adding CSUM_IP6_TCP/UDP/TSO to isc_tx_csum_flags) and IFCAP_VLAN_HWTSO, and enable the RX outer (S-VLAN) tag parse mode in aq_hw_offload_set(). TX descriptor L3 family: aq_setup_offloads() derived tx_desc_cmd_ipv4 from CSUM_IP|CSUM_TSO, but CSUM_TSO is (CSUM_IP_TSO|CSUM_IP6_TSO) and tcp_output() sets both bits without regard to address family, so an IPv6 TSO frame matched on CSUM_IP_TSO and went out with the IPv4 header-checksum command set on a frame that carries no IPv4 header. The checksum flags cannot distinguish the family; key the bit off IPI_TX_IPV4 instead, which iflib derives from the parsed ethertype, as the IPI_TX_INTR test below it already does. Plain IPv6 checksum offload was unaffected, as CSUM_IP6_TCP alone never matched the mask. RX VLAN tag stripping: ring init hardwired hardware tag stripping off while the RX path still set M_VLANTAG and the writeback tag for every tagged frame, so a tagged frame arrived with the tag in line while the mbuf claimed it stripped and ether_demux() parsed four bytes short of the payload. Program per-ring stripping from IFCAP_VLAN_HWTAGGING and set M_VLANTAG only under the same capability, so the two states stay coherent. VLAN filter and promiscuous edge cases: filter only when 1..16 VLANs are registered -- with none (or more than the 16 the table holds) fall back to VLAN-promiscuous and pass all tags, rather than dropping every tagged frame against an empty filter table; and keep VLAN-promiscuous set whenever the interface is IFF_PROMISC, so adding or removing a VLAN under promisc does not clear it and start dropping tagged frames. Multicast reconcile: ifdi_multi_set is declarative, but aq_if_multi_set() only added -- shrinking the list left accept-all-multicast latched or stale exact slots enabled, defeating hardware multicast filtering until a reinit. Clear the exact slots before reprogramming the current list, and always drive accept-all-multicast from the current state so a shrink clears it. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D58145 (cherry picked from commit dcede1ec9de3b24fc9fbeeebc99ca34d226995f9) M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw_llh.c M sys/dev/aq/aq_hw_llh.h M sys/dev/aq/aq_hw_llh_internal.h M sys/dev/aq/aq_main.c M sys/dev/aq/aq_ring.c _____________________________________________________________________________________________________________ Commit: 9101ea2b061efd9eabd01b7450d256d25a049e4d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9101ea2b061efd9eabd01b7450d256d25a049e4d Author: Nick Price (Sat 20 Jun 2026 20:03:37 BST) Committer: Ed Maste (Mon 31 Aug 2026 18:17:12 BST) aq(4): naming and exposure Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57656 (cherry picked from commit e44579e23430ff2084b03c9b3d486f05e617e04f) M sys/dev/aq/aq_fw.c M sys/dev/aq/aq_fw.h M sys/dev/aq/aq_fw1x.c M sys/dev/aq/aq_fw2x.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: c81e5aa8a52e524eb7e6be2016025ebc910e10de URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c81e5aa8a52e524eb7e6be2016025ebc910e10de Author: Cy Schubert (Sun 16 Aug 2026 04:24:45 BST) Committer: Cy Schubert (Mon 31 Aug 2026 17:34:42 BST) sqlite3: Vendor import of sqlite3 3.53.3 Release notes at https://www.sqlite.org/releaselog/3_53_3.html. Obtained from: https://www.sqlite.org/2026/sqlite-autoconf-3530300.tar.gz Merge commit 'e698feec080925c6cffa9ec31be884daa5cea536' (cherry picked from commit 14e3daa72db7d6410877481a4ed2791603e2b99f) M contrib/sqlite3/VERSION M contrib/sqlite3/autosetup/sqlite-config.tcl M contrib/sqlite3/shell.c M contrib/sqlite3/sqlite3.c M contrib/sqlite3/sqlite3.h M contrib/sqlite3/sqlite3rc.h _____________________________________________________________________________________________________________ Commit: 3dccdfefdca85574a84a280bc852a9e3477e0837 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3dccdfefdca85574a84a280bc852a9e3477e0837 Author: Cy Schubert (Mon 25 May 2026 18:19:28 BST) Committer: Cy Schubert (Mon 31 Aug 2026 17:34:41 BST) sqlite3: Vendor import of sqlite3 3.53.1 Release notes at https://www.sqlite.org/releaselog/3_53_1.html. Obtained from: https://www.sqlite.org/2026/sqlite-autoconf-3530100.tar.g Merge commit 'b00eb376e3fb28e738f9370552dae9d92c1fdd76' into sqlite3 (cherry picked from commit 5b8f59e648431715e8f5f60ef09c0be4508b3ae6) M contrib/sqlite3/Makefile.in M contrib/sqlite3/Makefile.msc M contrib/sqlite3/VERSION M contrib/sqlite3/autosetup/README.md M contrib/sqlite3/autosetup/autosetup M contrib/sqlite3/autosetup/cc-shared.tcl M contrib/sqlite3/autosetup/jimsh0.c M contrib/sqlite3/autosetup/proj.tcl M contrib/sqlite3/autosetup/sqlite-config.tcl M contrib/sqlite3/autosetup/teaish/core.tcl M contrib/sqlite3/autosetup/teaish/tester.tcl A contrib/sqlite3/make.bat M contrib/sqlite3/shell.c M contrib/sqlite3/sqlite3.1 M contrib/sqlite3/sqlite3.c M contrib/sqlite3/sqlite3.h M contrib/sqlite3/sqlite3ext.h M contrib/sqlite3/sqlite3rc.h M contrib/sqlite3/tea/Makefile.in M contrib/sqlite3/tea/README.txt M contrib/sqlite3/tea/_teaish.tester.tcl.in M contrib/sqlite3/tea/configure D contrib/sqlite3/tea/doc/sqlite3.n M contrib/sqlite3/tea/generic/tclsqlite3.c M contrib/sqlite3/tea/teaish.tcl _____________________________________________________________________________________________________________ Commit: eaf43978093835391d17ff6cb9294579108e5c18 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=eaf43978093835391d17ff6cb9294579108e5c18 Author: Nick Price (Sat 20 Jun 2026 20:03:28 BST) Committer: Ed Maste (Mon 31 Aug 2026 17:17:58 BST) aq(4): add a runtime dev.aq.N.debug trace control The trace_* family (trace/trace_error/trace_warn/trace_detail, used in the F/W and init/config paths) was gated behind the compile-time AQ_CFG_DEBUG_LVL, which is 0, so the dbg_level_/dbg_categories_ runtime variables were dead and tracing could only be enabled by recompiling. Decouple trace_base_ from AQ_CFG_DEBUG_LVL so it is always compiled and gated purely at runtime on dbg_level_/dbg_categories_, make those two variables writable (no longer const, default level 0 = off), and expose them as dev.aq.N.debug (verbosity) and dev.aq.N.debug_categories (subsystem mask) sysctls. The datapath-heavy AQ_DBG_ENTER/PRINT/DUMP macros and the trace_aq_*_descr descriptor dumps stay behind AQ_CFG_DEBUG_LVL (still 0), so the per-packet paths are untouched -- trace_* is only used off the datapath. The two variables are global (the trace macros reference them directly), so the per-device sysctls share one backing store, which is fine for a debug knob. Validated on AQC107: dev.aq.0.debug defaults to 0 with no trace output; setting it to 6 emits the F/W init/reset/capabilities traces on the next F/W operation; setting it back to 0 silences them; traffic unaffected at line rate, rx_err=0. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57440 (cherry picked from commit 76d0a25be3976634631bab975f4c2ddbc98f72a2) M sys/dev/aq/aq_dbg.c M sys/dev/aq/aq_dbg.h M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: bf5229dbbe158ffb7dc376293cefb20e5eb7af20 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bf5229dbbe158ffb7dc376293cefb20e5eb7af20 Author: Nick Price (Sat 20 Jun 2026 20:03:18 BST) Committer: Ed Maste (Mon 31 Aug 2026 17:17:57 BST) aq(4): take F/W statistics off the iflib core lock (kick-and-read) The once-per-second statistics refresh ran the whole F/W-mailbox transaction under iflib's CTX (sx) lock: fw2x_get_stats toggled the MPI STATISTICS control bit and busy-polled the state register for the acknowledgement (up to ~25 ms) before downloading the counters, so a slow F/W response blocked datapath reconfigure / ioctls for the duration. The per-cast and error counters have no direct-register source -- the reference Linux atlantic driver and our port both read them out of the F/W mailbox, and the MSM registers the chip exposes are never used for the periodic counters. So rather than poll, adopt the kick-and-read shape the iflib peer with the same constraint uses (vmxnet3): consume the snapshot the F/W produced for the *previous* request, then toggle the bit to request the next one -- no wait. The F/W finished that previous refresh ~1 s ago, so the download needs no poll, and the toggle write stays serialized against set_mode by the CTX lock exactly as before. This removes the 25 ms poll (and the toggle_mpi_ctrl_and_wait_ helper) from under the lock; only the fast 16-dword download remains. Cost: the counters lag one 1 s cycle, invisible for monitoring, and a torn read is already rejected by aq_update_hw_stats' monotonic-delta check. Validated on AQC107: a fixed 500 MiB RX transfer advances good_octets_rcvd by 549.6 MB -- 500 MiB plus the ~4.8% Ethernet framing overhead -- with rx_err=0 and traffic at line rate. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57439 (cherry picked from commit a10151fa662c1d370861154e2f83e88a20be149c) M sys/dev/aq/aq_fw2x.c _____________________________________________________________________________________________________________ Commit: 4e40b09cd46aa6b458b18d455764a55710493e79 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4e40b09cd46aa6b458b18d455764a55710493e79 Author: Nick Price (Sat 20 Jun 2026 20:03:09 BST) Committer: Ed Maste (Mon 31 Aug 2026 17:17:57 BST) aq(4): modernize and de-Linuxify the vendor driver Dead-code removal, device_printf(9) logging, style(9) de-Linuxification, const F/W-ops tables, and readability cleanups. No change for valid traffic. Dead code and logging: - Remove the sub-gigabit TSO-masking block in the link-state ISR: it cleared IFCAP_TSO from the static isc_capabilities record (read only at attach / SIOCSIFCAP, never on the datapath), so it never gated TSO and only corrupted the validation mask. The Atlantic has no sub-gigabit TSO erratum. - Tidy the RX buffer-size handling: drop the dead switch(MCLBYTES) in aq_if_rx_queues_alloc, rename rx_max_frame_size -> rx_buf_size, and bound the per-fragment length from the wb.pkt_len writeback (EBADMSG on underflow or a final fragment longer than the RX buffer). - Drop every __FreeBSD__/__FreeBSD_version branch (FreeBSD 14.0 baseline); the pre-13 arms used pre-opaque-if_t APIs since removed and one never built. - Route all log messages through device_printf(9) (MAC via %6D), adding a device_t to struct aq_hw; drop the dead AQ_XXX_UNIMPLEMENTED_FUNCTION and aq_log_error macros and the per-ring init console spam. - Minor: comma -> semicolon in aq_if_attach_pre; (uint64_t) -> (uint32_t) TX high-word cast; MODULE_VERSION(atlantic, 1); remove unused/duplicate #includes. style(9) and types: - Remove all typedef'd struct/enum/union types (aq_dev_t, the speed/fc/ debug enums, the volatile RX/TX descriptor types, the firmware-file types) in favor of bare tags; for the DMA descriptors the volatile qualifier moves to the pointer/use sites. Drop the _s/_e tag suffixes and the "#define aq_hw_s aq_hw" alias. Rename the OOP-style *self parameter to hw. Replace usec_delay/msec_delay/ARRAY_SIZE/LOWORD with FreeBSD equivalents (BIT kept). __attribute__((__packed__)) -> __packed. F/W-ops vtable: - Rename the leftover hal parameter to hw; make aq_fw1x_ops/aq_fw2x_ops const (read-only data); drop the always-true "fw_ops &&" and always-present dispatch guards (only led_control, absent in F/W 1.x, keeps its NULL check). Readability: - aq_isc_rxd_pkt_get: fold the four identical RX-error blocks into one rx_err: label. aq_isc_rxd_available: hoist the shared descriptor advance out of the EOP test and drop the redundant continue. aq_hw_offload_set: drop the dead "int err = 0". Fix a stale "10 ms" comment on a 50 ms DELAY and the redundant literal parentheses. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57438 (cherry picked from commit 5409e03a0ef1f2d71da94bedd433fbaa7b6b21f2) M sys/dev/aq/aq_common.h M sys/dev/aq/aq_dbg.c M sys/dev/aq/aq_dbg.h M sys/dev/aq/aq_device.h M sys/dev/aq/aq_fw.c M sys/dev/aq/aq_fw.h M sys/dev/aq/aq_fw1x.c M sys/dev/aq/aq_fw2x.c M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_hw_llh.c M sys/dev/aq/aq_irq.c M sys/dev/aq/aq_main.c M sys/dev/aq/aq_media.c M sys/dev/aq/aq_ring.c M sys/dev/aq/aq_ring.h _____________________________________________________________________________________________________________ Commit: 2cb719337fb79c5903873b164c55abcc940da91c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2cb719337fb79c5903873b164c55abcc940da91c Author: Nick Price (Sat 20 Jun 2026 20:03:00 BST) Committer: Ed Maste (Mon 31 Aug 2026 17:17:57 BST) aq(4): enable jumbo frames, software LRO, and suspend/resume - Configure the RX buffer size from the interface MTU and enable jumbo frames up to 9000 bytes, replacing the fixed standard-frame setup. - Advertise IFCAP_LRO so iflib coalesces received TCP segments with its software tcp_lro(9), like every other in-tree iflib driver (ix/igc/em/vmxnet3); aq does no hardware LRO. iflib builds the per-RX-queue LRO context unconditionally, so the capability bit is all that is required; enabled by default via isc_capenable, toggle at runtime with ifconfig. - Add suspend/shutdown/resume handlers, replacing the unimplemented- function placeholders. aq_if_shutdown/aq_if_suspend stop the interface and deinitialize the hardware; aq_if_resume re-resets the F/W, re-reads the mailbox address and re-selects fw_ops via aq_hw_mpi_create() before iflib re-inits, because the runtime init path (aq_hw_init) reuses the cached mailbox/fw_ops and a D3 power cycle can clear them. iflib calls IFDI_RESUME unconditionally, so this also covers resuming while the interface was administratively down. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57437 (cherry picked from commit b64408358d7f27a69b84d9fd1e23e239e8bd00fc) M sys/dev/aq/aq_main.c M sys/dev/aq/aq_ring.c _____________________________________________________________________________________________________________ Commit: a02ea75c8d5b5e8802890ff21976b629cbc2a1b3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a02ea75c8d5b5e8802890ff21976b629cbc2a1b3 Author: Nick Pricenull (Sat 20 Jun 2026 20:02:52 BST) Committer: Ed Maste (Mon 31 Aug 2026 17:17:57 BST) aq(4): RX/TX and HW-path correctness and hardening Independent correctness fixes, plus robustness against a non-responding device, malformed descriptor writeback, and torn MMIO reads, and the move to the FreeBSD bus_space(9) register abstraction. Correctness: - aq_hw_ver_match returned true if any of major/minor/build was >= expected; compare lexicographically so e.g. 2.0.1 is correctly seen as older than 2.1.0. - The VLAN hardware-filter iteration used the vlan tag directly as the bitstring index; use vlan_tag + 1 so the active-VLAN bookkeeping lines up with the table. - aq_initmedia only registered IFM_AUTO in full-duplex/pause variants, so a bare "ifconfig aq0 media autoselect" matched no entry and returned ENXIO. Add the bare IFM_ETHER|IFM_AUTO entry, matching ix/em/igc/ixv. - Convert the per-ring diagnostic counters to counter(9): per-CPU, tear-free, no atomics on the increment path, fixing a data race and a 32-bit torn read against the locklessly-read sysctls. Drop three counters that were never populated (jumbo_pkts, tx_drops, tx_queue_full). Hardening and modernization: - Implement aq_hw_err_from_flags (previously a stub returning 0 that left ~24 call sites as no-ops): detect a non-responding device in the register read path (all-ones, confirmed against reg 0x10) and latch a sticky AQ_HW_FLAG_ERR_UNPLUG -> ENXIO; aq_if_init clears it so a transient detection cannot permanently wedge the device. - Bound the RX fragment loop in aq_isc_rxd_pkt_get (EBADMSG once i reaches isc_rx_nsegments) so a malformed never-EOP stream cannot write past the fragment array. - Bound the TX completion count in aq_isc_txd_credits_update against the raw HW head pointer (reject head >= tx_size) so a glitched head cannot make iflib free still-in-flight TX mbufs. - Remove the dead hardware-RSC branch in aq_isc_rxd_available; it followed wb.next_desp, a raw device value used as an index, but RSC is never enabled so rsc_cnt is always 0. Advance sequentially like the other in-tree iflib drivers; this drops the last raw-hardware-pointer dereference in the RX path. - Flush MMIO after interrupt-status acks (AQ_HW_FLUSH) so the write lands before the vector is re-armed under auto-mask-clear; retry the high word in read64_ against a torn lo/hi pair; document the non-atomic IMR read-modify-write in itr_irq_map_en_{rx,tx}_set. - Replace the raw-pointer MMIO (the Linux readl/writel idiom) with bus_space(9): store the BAR tag and handle in struct aq_hw and route AQ_READ_REG/AQ_WRITE_REG through bus_space_read_4/write_4. No functional change on amd64. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57436 (cherry picked from commit 619934a5c165869604810ece91c2f2cb734fc3eb) M sys/dev/aq/aq_fw2x.c M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_irq.c M sys/dev/aq/aq_main.c M sys/dev/aq/aq_media.c M sys/dev/aq/aq_ring.c M sys/dev/aq/aq_ring.h _____________________________________________________________________________________________________________ Commit: 73760c8fcd61939f88d2b1f001d9d1e07b470940 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=73760c8fcd61939f88d2b1f001d9d1e07b470940 Author: Nick Price (Sat 20 Jun 2026 20:02:42 BST) Committer: Ed Maste (Mon 31 Aug 2026 17:17:57 BST) aq(4): adopt native FreeBSD errno convention Convert the driver's internal error-handling chain from the Linux negative-errno convention to FreeBSD positive errno everywhere. - All `return (-EXXX)` become `return (EXXX)`, `int err = -EXXX` loses the sign, and `if (err < 0)` checks become `if (err != 0)` across aq_fw.c, aq_fw1x.c, aq_fw2x.c and aq_hw.c. - mac_soft_reset_flb_ returns ETIMEDOUT/0 instead of a bool so it matches its RBL sibling. - The ETIME and EOK aliases in aq_common.h are removed; all sites use ETIMEDOUT and 0 directly, and the `rc = -rc` sign flips in aq_if_attach_pre are dropped. Turn AQ_HW_WAIT_FOR into a statement expression evaluating to 0 on success or ETIMEDOUT on timeout, assigned explicitly at all seven call sites, instead of silently assigning ETIMEDOUT to a variable named err in the caller scope. A statement expression rather than an inline function because every call must re-evaluate its condition each iteration -- one even assigns hw->mbox_addr as a side effect. Fix two correctness bugs surfaced by the conversion: - fw1x_get_stats gated its stats copy with `if (err >= 0)`, correct under negative errno but accepting every positive errno after the flip. Change to `if (err == 0)`. - fw2x_reset returned 0 regardless of capability-download failure, silently leaving fw_caps = 0. Return the real err. Harden aq_if_attach_pre: bit_alloc(4096, M_AQ, M_NOWAIT) was unchecked, so under OOM a later `ifconfig vlanN create` would NULL-deref the bitstring; check for NULL and fail with ENOMEM. The fail label's hardcoded `return (ENXIO)` becomes `return (rc)` so each error path reports its real errno. Remove the dead error checks in aq_hw_offload_set: the `if (err != 0) goto err_exit` blocks after the void tpo_/rpo_/tdm_ register-write helpers were unreachable (err is never set), and the real error capture is the aq_hw_err_from_flags call at the function tail. Drop the now-orphaned err_exit label. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57435 (cherry picked from commit 40accc7235c2f0d2072f051099d183e7f21c2731) M sys/dev/aq/aq_common.h M sys/dev/aq/aq_fw.c M sys/dev/aq/aq_fw1x.c M sys/dev/aq/aq_fw2x.c M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: c2328207920578b12bd7fbb5fda31651874a7fa1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c2328207920578b12bd7fbb5fda31651874a7fa1 Author: Nick Pricenull (Sat 20 Jun 2026 20:02:34 BST) Committer: Ed Maste (Mon 31 Aug 2026 17:17:57 BST) aq(4): interrupt model and queue-count correctness Rework the MSI-X and queue-count handling to use the standard iflib interrupt model and to keep every ring serviced. - Cap isc_n{tx,rx}qsets_max at the RSS indirection-table size (HW_ATL_RSS_INDIRECTION_QUEUES_MAX, 8) instead of HW_ATL_B0_RINGS_MAX. RSS only steers RX traffic to eight rings, so on hosts with more CPUs the surplus TX rings never make progress: iflib flowid-steers TCP flows across every TX ring, and a flow landing on a surplus ring has its segments queued but never transmitted, hanging the connection. - Add a TX-specific ifdi_tx_queue_intr_enable that reads tx_rings[txqid]->msix. It was wired to the RX handler, which indexes rx_rings[] with the qid; safe only while tx_rings_count == rx_rings_count, otherwise the lookup walks past rx_rings[] and feeds a garbage msix value into the IRQ mask register. - Fix three MSI-X / admin-IRQ bugs: the TX softirq was attached to rx_rings[i]->irq (overwriting the RX handle and leaving the TX handle uninitialized); the admin-IRQ failure path dereferenced rx_rings[rx_rings_count], one past the end; and aq_linkstat_isr cleared the admin interrupt by writing the raw vector number instead of BIT(vector). - Allocate one IFLIB_INTR_RXTX vector per RX/TX queue pair like every other in-tree iflib driver (em/ix/igc, vmxnet3) instead of an IFLIB_INTR_RX vector per RX ring plus a hand-wrapped IFLIB_INTR_TX softirq per TX ring. iflib's iflib_fast_intr_rxtx() then services TX completions on the shared vector through isc_txd_credits_update(). Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57434 (cherry picked from commit b065af196fdcab18d36caae214c905467723b3f1) M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_irq.c M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 682aec20a2142c1cb45019905b732d61f9659efd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=682aec20a2142c1cb45019905b732d61f9659efd Author: Nick Price (Sat 20 Jun 2026 20:02:22 BST) Committer: Ed Maste (Mon 31 Aug 2026 17:17:57 BST) aq(4): Fix RSS indirection table OOB write and queue distribution Two related fixes to `aq(4)`'s RSS indirection table handling: 1. Fix an out-of-bounds stack write in `aq_hw_rss_set()`. RSS table entries are 3 bits (8 queues max), but with more than 8 RX rings `rss_table[]` holds larger values; the 32-bit write then spills one `uint16_t` past `bitary[]` and corrupts the stack, so the NIC never links or the kernel panics. Mask each value to 3 bits and pack 16 bits at a time to keep the write in bounds. 2. Build the indirection table in `aq_if_attach_post()` with a modulo over `min(rx_rings_count, HW_ATL_RSS_INDIRECTION_QUEUES_MAX)` instead of `i & (rx_rings_count - 1)`, which assumed a power-of-two ring count. Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D57240 (cherry picked from commit 57f5252ff8a17aa837f677638cce5885b8a5fb3b) M sys/dev/aq/aq_hw.c M sys/dev/aq/aq_hw.h M sys/dev/aq/aq_main.c _____________________________________________________________________________________________________________ Commit: 8b10eb844c4b3205683fa5a4599c274fd89c52d8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8b10eb844c4b3205683fa5a4599c274fd89c52d8 Author: Kristof Provost (Tue 21 Jul 2026 14:03:24 BST) Committer: Kristof Provost (Mon 31 Aug 2026 08:45:39 BST) pf: fix securelevel off-by-one cmd_securelevel is the securelevel at which the call should be denied. pf (write) calls should be denied at level 3 or up (not at 2 or up as it was), so increment these all by one. PR: 296838 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296838 ) MFC after: 4 weeks Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D58377 (cherry picked from commit d13dffa150d17dc239e164ea42ddab91e6fab466) M sys/netpfil/pf/pf_nl.c _____________________________________________________________________________________________________________ Commit: 8a6c20aee2fae9bca0c81dde271f7362c9ac3bb3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8a6c20aee2fae9bca0c81dde271f7362c9ac3bb3 Author: Kevin Bowling (Thu 30 Jul 2026 03:26:48 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:43:22 BST) igb: Guard register dump during queue setup The register-dump sysctl is installed before iflib allocates the queue arrays and remains visible while they are freed. Return ENXIO outside the queue lifetime instead of dereferencing a NULL or stale array. Sponsored by: BBOX.io (cherry picked from commit bcb62ec0e3d592892f0f304269ed2722d1bae75a) M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: b91c0fc86c7d89124d4fcdeba2ad86e202c76fb8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b91c0fc86c7d89124d4fcdeba2ad86e202c76fb8 Author: Kevin Bowling (Wed 29 Jul 2026 00:29:35 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:42:37 BST) pci_iov: Permit non-ARI VFs on a secondary bus A non-zero VF device number does not always require ARI. The Intel 82576 and I350 [1] explicitly support a non-ARI layout that places VFs on the next bus. Check every requested VF RID and reject a non-zero device only when it is on the PF bus. This retains the ARI guard for invalid same-bus layouts while permitting the documented second-bus layout. [1] Intel I350 Datasheet, sections 7.8.2.6.1.2, 9.6.4.6 Sponsored by: BBOX.io (cherry picked from commit e795a31cb4d66368bdbe5ac7f61c0899d3ed39f8) M sys/dev/pci/pci_iov.c _____________________________________________________________________________________________________________ Commit: 7827d437dc88cc3bb341691fd0c04622175a371a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7827d437dc88cc3bb341691fd0c04622175a371a Author: Kevin Bowling (Sun 16 Aug 2026 08:02:25 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:37:19 BST) e1000: Recover from the 82574 PHY hang The shared code provides e1000_check_phy_82574() to recognize a PHY hang from saturated receive error and idle error counters, but em(4) never calls it. Run the check from timer driven admin work. Match Intel e1000e by requiring two consecutive positive samples before requesting a full iflib reset. MFC after: 2 weeks Sponsored by: BBOX.io (cherry picked from commit 81d5356799a1db1701cb3f91146131c34dede413) M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: b27c5cfc7e7673a2d63349261f483a0f3472af4c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b27c5cfc7e7673a2d63349261f483a0f3472af4c Author: Kevin Bowling (Wed 29 Jul 2026 10:11:19 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:36:29 BST) e1000: Sample statistics at timer cadence Mailbox and link interrupts share iflib admin service with the periodic timer. Mark timer-driven passes explicitly and run the hardware statistics sweep only for those samples instead of repeating 66 PF MMIO reads for every VF mailbox message. DTrace on the I350 DUT measured the PF sweep at about 79 us on average. The normal hz/2 timer continues to extend clear-on-read counters safely; exported counters may trail hardware by up to 500 ms. Sponsored by: BBOX.io (cherry picked from commit d2cd0b57532ba35fe39744a60d53b90e6f13b5e4) M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 640916dc50a6fd88eddad312f9e0e21404211f52 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=640916dc50a6fd88eddad312f9e0e21404211f52 Author: Kevin Bowling (Sun 16 Aug 2026 08:56:03 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:32:08 BST) igc: Propagate hardware initialization failures The reset helper discards igc_reset_hw and igc_init_hw errors. Runtime initialization then continues programming rings and filters, and iflib publishes the interface as running even though the controller did not reach a usable state. Initial attach similarly continues into NVM and MAC setup after a failed reset. Return errors from the reset helper. Fail attach when the controller cannot be reset or initialized, and report runtime failures through iflib_init_failed() so iflib leaves the interface stopped. Also stop register accesses and report the error when a stop path reset fails. A later successful initialization completes pending fatal error cleanup and re-arms FER. Cache a requested MAC address before reset, but let init_hw program RAR0 after reset succeeds. Let iflib perform its normal attach-post failure cleanup instead of releasing the same driver resources from both layers, and make queue cleanup idempotent. Sponsored by: BBOX.io (cherry picked from commit c82a015ede8d49aabc8bb253b7597b8db0f42524) M sys/dev/igc/if_igc.c _____________________________________________________________________________________________________________ Commit: df5bdb59bc89365d06296cab813cad33807e94e1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=df5bdb59bc89365d06296cab813cad33807e94e1 Author: Kevin Bowling (Sun 16 Aug 2026 08:55:37 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:31:48 BST) e1000: Propagate hardware initialization failures The reset helper discards reset_hw and init_hw errors. Runtime initialization then continues programming rings and filters, and iflib publishes the interface as running even though the controller did not reach a usable state. Initial attach similarly continues into NVM and MAC setup after a failed reset. Return errors from the reset helper. Fail attach when the controller cannot be reset or initialized, and report runtime failures through iflib_init_failed() so iflib leaves the interface stopped. Also stop register accesses and report the error when a stop-path reset fails. Sponsored by: BBOX.io (cherry picked from commit 41a0f7a0a447ef2092faadb35f6d4c3f80c088bf) M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: d7f7fb0dacf2fe05b1a6d5184d86422bb1395281 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d7f7fb0dacf2fe05b1a6d5184d86422bb1395281 Author: Kevin Bowling (Sun 16 Aug 2026 07:58:18 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:28:03 BST) igb: Reinitialize through iflib after media changes A media change can require a complete controller reset. Resetting the controller directly from the admin task leaves iflib rings, filters, and interface state programmed for the pre-reset controller. Request an iflib reset for every media change. This already was done when SR-IOV was active; use the same lifecycle for the ordinary PF case. Sponsored by: BBOX.io (cherry picked from commit 6248e7de9d6c0f14294afc5792170a68de6a3b53) M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: 9ff3e1cd31792202c0e7c7fdaf877e1fc6c54269 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9ff3e1cd31792202c0e7c7fdaf877e1fc6c54269 Author: Kevin Bowling (Sun 16 Aug 2026 06:40:44 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:28:02 BST) e1000: Report 82575 memory ECC errors 82575 exposes clear-on-read, saturating counters for corrected and uncorrected errors in the packet buffer and the receive and transmit descriptor handlers. Sample all three status registers together from the regular hardware statistics update. When an unrecoverable event interrupts first, count the values captured by the interrupt filter so the clear-on-read status is not lost before the admin task handles it. Expose packet buffer and descriptor handler counters under the existing memory_errors sysctl node. Hardware validation used an 82575EB revision 2 and the documented PBEEI, RDHEEI, and TDHEEI injectors. Correctable and uncorrectable TX/RX packet-buffer errors and receive/transmit descriptor-handler errors advanced the corresponding counters. The controls and accounting survived repeated recovery resets and an ordinary interface down/up. Sponsored by: BBOX.io (cherry picked from commit 7accd803e28cf6051cac69e614eec6f24d5c77cc) M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: 06730a0673601f6828242f45261df6e383d406fa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=06730a0673601f6828242f45261df6e383d406fa Author: Kevin Bowling (Sun 16 Aug 2026 06:39:31 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:27:59 BST) e1000: Recover from 82575 memory errors 82575 protects its packet buffer and receive and transmit descriptor handlers with ECC. Correctable errors are repaired in hardware. Packet data errors are contained to the affected packet, while the native RX_PBUR, TX_PBUR, RX_DHER, and TX_DHER interrupt causes report unrecoverable packet buffer or descriptor handler state. The affected traffic direction remains stopped until software resets the port. Enable the three ECC blocks and hardware memory error reaction after queue and filter initialization. Capture the clear-on-read status registers in the interrupt filter and keep all four native causes masked while the iflib admin task owns the event. Request port reinitialization for every native PBUR or DHER cause. Packet data errors that do not raise a native cause remain count-only and do not disrupt the port. The captured status registers provide diagnostics and accounting but do not independently initiate recovery. Hardware validation used an 82575EB revision 2 and the documented PBEEI, RDHEEI, and TDHEEI injectors. Correctable TX/RX packet data and descriptor fetch/writeback errors preserved traffic. Uncorrectable TX/RX packet buffer header and descriptor fetch/writeback errors each requested one reset, restored traffic, and rearmed every ECC control. Repeated recovery produced no watchdogs. Sponsored by: BBOX.io (cherry picked from commit 24917c22a330e8da350e8ef1a251a70abf0baf83) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/e1000_regs.h M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: 0a3c4415a9b6e0c7c7039e84b69fcd95d1124984 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0a3c4415a9b6e0c7c7039e84b69fcd95d1124984 Author: Kevin Bowling (Fri 14 Aug 2026 00:15:39 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:24:10 BST) e1000: Report 82576 memory ECC errors 82576 exposes clear-on-read corrected error counters for RX, TX, switch, IPsec, descriptor-handler, PCIe retry, PCIe write, and MSI-X memories. The packet and descriptor memories also count uncorrectable errors. Sample each status register exactly once from the regular hardware statistics update and immediately before handling a memory-error interrupt. Group the counters by packet buffer, descriptor handler, and PCIe region. Skip the absent IPsec block on 82576NS. PRBESTS and PMSIXESTS are shared by both LAN ports. Attribute an indication to whichever attached port samples the clear-on-read register first so it is not counted twice. Hardware validation used an 82576EB revision 1. All nine implemented status registers reported their ECC-enable bit set. The sysctl counters remained clear across interface lifecycle, two-stream line-rate traffic, and NFER and FER cause injections. Each reset preserved the ECC enables while the driver restored PEINDM reactions. ICR cause injection does not corrupt SRAM, and the only documented data injector is specific to the IPsec packet buffer. Exact counter increments for the other memories were therefore validated against the register definitions rather than an injected ECC error. Sponsored by: BBOX.io (cherry picked from commit 17042fd31571c7ceb955570ef43c9921d4a80f21) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/e1000_regs.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 35e9e0d246a0164e6d548ea44d0200b59d0753c9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=35e9e0d246a0164e6d548ea44d0200b59d0753c9 Author: Kevin Bowling (Fri 14 Aug 2026 00:10:47 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:24:07 BST) e1000: Recover from 82576 memory errors 82576 reports fatal and non-fatal internal memory errors through ICR.FER and ICR.NFER and identifies the affected memory in its native PEIND layout. Fatal errors can stop transmit, receive, or both until software resets and reinitializes the port. Enable the controller-wide parity detector and implemented PEINDM reaction bits after hardware initialization, while preserving unrelated register state and omitting the absent IPsec memories on 82576NS. Enable both interrupt causes and capture the read-clear PEIND register in the interrupt filter. Keep the causes masked while the iflib admin task owns the event. Acknowledge non-fatal packet data errors without disrupting the port. Request normal port reinitialization for FER, a fatal PEIND source, or the memory hang indication. Do not apply the later I210/I350 register layout or their special PCIe parity reset order. Hardware validation used a dual-port 82576EB revision 1. Firmware left PEINDM at its 0x80000000 default; initialization explicitly programmed the parity-enable bit and produced 0xffffff07 on both ports. An NFER during two-stream TCP sustained line rate without a reset, watchdog, or carrier event. FER on the linked and disconnected ports each requested exactly one reset. The linked port resumed the existing TCP sessions after autonegotiation. PEINDM and both interrupt causes were restored after every reset. The injections set the ICR causes without corrupting SRAM, so their empty PEIND values deliberately exercised the unknown source path. Sponsored by: BBOX.io (cherry picked from commit 4c2dda4c70e210be4efb4527fc32fbb79f23d452) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 8b4ba2a11f4003735852f5e1371b21a3a727bd5f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8b4ba2a11f4003735852f5e1371b21a3a727bd5f Author: Kevin Bowling (Thu 13 Aug 2026 00:35:43 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:16:22 BST) e1000: Report corrected I350 ECC errors I350 does not interrupt for corrected internal ECC errors. Instead, the PCIe, DMA, packet buffer, loopback, and management memories expose sticky status bits in their region-specific status registers. Sample those bits with the regular hardware statistics update, preserve the RX and TX packet buffer ECC enable state while clearing RW1C indications, and expose counters grouped by memory region. Each counter records observed indication bits rather than exact error counts because repeated corrections between samples collapse into one sticky bit. On an I350 (8086:1521 revision 1), the ECC enables remained set. All corrected-error status registers remained clear across boot, interface down/up, three FER recovery resets, and bidirectional line-rate traffic. The device has no documented corrected error injector. Therefore, the per-region paths were validated against the register definitions rather than an injected SRAM error. Sponsored by: BBOX.io (cherry picked from commit 8367882d531313eea68966b07ddf917e39690b77) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/e1000_regs.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 7502726c3edf7f2052051f3c28200c6d21409b83 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7502726c3edf7f2052051f3c28200c6d21409b83 Author: Kevin Bowling (Thu 13 Aug 2026 00:34:56 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:16:12 BST) e1000: Recover from I350 memory errors I350 reports uncorrectable internal memory errors through ICR.FER and identifies the affected region in PEIND. Depending on the region and memory, hardware stops transmit, receive, or all PCIe and DMA traffic until the port is reset and reinitialized. Enable FER and all regional indication masks. Capture the read-clear status in the interrupt filter. Record the fatal PCIe, DMA, and LAN status registers, keep FER masked while recovery is pending, and expose per-region indication counters. Use the datasheet required port reset before master disable order for PCIe parity errors. Reset for PCIe, DMA, and traffic-affecting LAN errors. Statistics and VF-mailbox parity errors only require their status to be discarded and cleared; management-memory recovery remains under firmware control. Validated on an I350 (8086:1521 revision 1). Three software-set FER interrupts each advanced the unknown-region counter once, requested a single reset, restored carrier and traffic, and left FER rearmed without a watchdog. The software-set cause has no subordinate error status, so region attribution and region-specific clearing remain datasheet-based. Sponsored by: BBOX.io (cherry picked from commit 28bbe1d28d6f1e68e2ee3b34686ccb6114c42ca7) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/e1000_regs.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 1b008564a31b4baaaa3f9cb16fdf83c2b28967ba URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1b008564a31b4baaaa3f9cb16fdf83c2b28967ba Author: Kevin Bowling (Wed 12 Aug 2026 19:34:15 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:16:01 BST) e1000: Report corrected I210 and I211 ECC errors I210 and I211 do not interrupt for corrected internal ECC errors. Instead, the DMA packet-buffer and PCIe memories expose sticky status bits in PBECCSTS and PCIEECCSTS. Sample these bits with the regular hardware statistics update, preserve the I210/I211 PBECCSTS enable state while clearing its RW1C indication, and expose separate counters for the DMA packet buffer, PCIe transmit data, and PCIe retry buffer. The counters represent observed indications rather than exact error counts because multiple corrections between samples collapse into one sticky status bit. Hardware validation used an I210 revision 3. Unlike I225 and I226, the published I210/I211 register definitions do not expose self-clearing injectors for these corrected ECC memories. The three counter sysctls were present and remained zero under line-rate traffic and three fatal LAN parity recoveries. PBECCSTS.ECC_ENABLE remained set after every reset. Actual corrected-error accounting was therefore not injected. Sponsored by: BBOX.io (cherry picked from commit 0ea53a7123ffc1ea11daa748e7148ac8413fd2de) M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 21237fae3a1003bbb0b261f6045ce64481d9ac50 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=21237fae3a1003bbb0b261f6045ce64481d9ac50 Author: Kevin Bowling (Wed 12 Aug 2026 19:33:39 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:15:54 BST) e1000: Recover from I210 and I211 memory errors I210 and I211 report uncorrectable internal memory errors through ICR.FER and identify the affected region in PEIND. Depending on the region, hardware stops transmit or all PCIe and DMA traffic until the port is reset and reinitialized. Enable FER and all regional indication masks. Discard indication state left by firmware before enabling reactions, capture the read-clear status in the interrupt filter, and keep the cause masked while recovery is pending. Report the affected regions and expose per-region indication counters. Management-only errors remain under firmware control. PCIe region parity errors require a different recovery order from the normal reset path. Assert the port-local CTRL.RST bit, wait at least 3 ms, verify reset completion, disable master requests, clear PCIEERRSTS, and then enter normal port reinitialization. Do not use the device-wide CTRL.DEV_RST sequence used by I225 and I226. Hardware validation used an I210 revision 3 and the self-clearing LANPERRINJ retransmit-buffer bit 9. It injected a real parity error without synthesizing interrupt or status state. Three injections in one boot produced the following result each time: Observed hardware status Result PEIND 0x1, LANPERRSTS 0x200 Reset and recovered fatal_lan advanced exactly once per injection. All tests completed without a panic or watchdog, and FER and the LAN parity masks remained enabled after every recovery. Sponsored by: BBOX.io (cherry picked from commit 8d2d6284bb8ca168f6173c8836a40711b5f34e13) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/e1000_regs.h M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 78127a3ef671f16f554f9a5ba89d75c743e2e577 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=78127a3ef671f16f554f9a5ba89d75c743e2e577 Author: Kevin Bowling (Sun 9 Aug 2026 09:35:58 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:11:48 BST) ixgbe: Add missing mailbox API 1.6 definition The SR-IOV status change reports mailbox API 1.6 but omitted its enum definition, leaving main unable to compile. API 1.6 is an established ixgbe mailbox wire revision. Add it at the end of the revision enum, before the unknown sentinel as required by the stable numbering contract. Naming the revision does not enable negotiation or operations which will come with the E610 support. Reported by: Herbert J. Skuhra (cherry picked from commit 6a1703c112ff2904feb39288f0746c8f0a04f938) M sys/dev/ixgbe/ixgbe_mbx.h _____________________________________________________________________________________________________________ Commit: 95429a21431fd5aab82c175fee792cc268562da0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=95429a21431fd5aab82c175fee792cc268562da0 Author: Kevin Bowling (Wed 12 Aug 2026 19:30:08 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:09:39 BST) e1000: Report PCH packet buffer ECC statistics PCH packet buffer ECC status contains read-clear byte counters for corrected and uncorrected errors. Sample them with the regular hardware statistics update and account for the snapshot captured by the fatal error interrupt path. Expose the counters and the number of reset worthy interrupt indications under dev.em.N.memory_errors. Keeping the reset counter separate also preserves evidence when another status reader wins the read-clear race. Hardware validation used an I219-LM. Three documented ICS.ECCER injections advanced fatal_resets from zero to three, exactly once per reset. corrected_packet_buffer and uncorrected_packet_buffer remained zero, as expected because ICS does not inject a memory error or alter PBECCSTS. Sponsored by: BBOX.io (cherry picked from commit d7be8a3e229174bea06228b461da3b1825c6cc54) M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 02bf7486363c33a1a8b30c9e878df831a0613c4b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=02bf7486363c33a1a8b30c9e878df831a0613c4b Author: Kevin Bowling (Wed 12 Aug 2026 19:29:28 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 02:09:11 BST) e1000: Recover from PCH packet buffer ECC errors PCH LAN controllers beginning with I217 report uncorrectable packet buffer ECC errors through ICR.ECCER. Descriptor memory errors stop the MAC and require a reset before traffic can resume. Enable the interrupt on the PCH generations whose shared code setup enables packet buffer ECC. Capture the read-clear PBECCSTS value in the interrupt filter, mask ECCER while recovery is pending, and request an iflib reset from the admin task. Reenable the cause only after hardware initialization succeeds. Hardware validation used an I219-LM and the documented ICS.ECCER bit to generate the fatal interrupt. This synthesizes the interrupt cause but does not corrupt packet buffer memory or alter its ECC byte counters. Three injections in one boot each requested one reset and recovered traffic without a panic or watchdog. IMS.ECCER and PBECCSTS.ECC_ENABLE remained set after every reset. MFC after: 2 weeks Sponsored by: BBOX.io (cherry picked from commit 39762c840a15e1b32b2e1acaca18d98c030f7c17) M sys/dev/e1000/if_em.c M sys/dev/e1000/if_em.h _____________________________________________________________________________________________________________ Commit: 35b0fc1c077911423f4e6368d5e1ee323f13f1aa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=35b0fc1c077911423f4e6368d5e1ee323f13f1aa Author: Kevin Bowling (Sun 16 Aug 2026 02:36:41 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 01:26:56 BST) ixv(4): Add a manual page Document supported virtual-function families, driver features, queue negotiation, PF-controlled policy, and media limitations. Sponsored by: BBOX.io (cherry picked from commit 1391e272de36f7aae2c800d96cc06762553d5027) M share/man/man4/Makefile A share/man/man4/ixv.4 _____________________________________________________________________________________________________________ Commit: 4f44e80e70254a7f8fca75b5d739b06fe0b7545d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4f44e80e70254a7f8fca75b5d739b06fe0b7545d Author: Kevin Bowling (Mon 10 Aug 2026 16:55:41 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 01:26:39 BST) ixgbe: Enable per-pool RSS on X550 family devices X550 family devices provide a separate RSS key, redirection table, and MRQC register for every VMDq pool. With SR-IOV enabled, the driver continued programming only the global RSS state and never selected MRQC.MULTIPLE_RSS. VF-local RSS programming was therefore ineffective. Enable multiple-RSS mode for X550, X552, X553, and E610. Initialize the PF pool's 64-entry key, redirection table, and RSS hash controls. Leave each VF pool untouched so its driver retains ownership of its RSS key and mapping. E610 folds IPv6 extension-header traffic into its base RSS selectors and reserves the legacy EX selector bits. Translate those requested hash types rather than programming reserved bits. With two E610 VFs active and four PF queue sets, eight fixed TCP flows distributed across all four PF receive queues. E610 uses the same per-pool mode according to the E610 Datasheet, sections 7.1.3.6.2 and 8.2.2.8.20-21. Sponsored by: Dirk-Willem van Gulik from Web Weaving (E610 hardware) Sponsored by: BBOX.io (cherry picked from commit 87406f8351664aa444851499cda83b00fdc07662) M sys/dev/ixgbe/if_ix.c _____________________________________________________________________________________________________________ Commit: 1b9749ac9c63032cb9a37d28a96e3f5e2bd417f5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1b9749ac9c63032cb9a37d28a96e3f5e2bd417f5 Author: Kevin Bowling (Mon 10 Aug 2026 16:12:24 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 01:26:29 BST) ixv: Preserve statistics across resets The VF statistics registers are free running and are not cleared on read. The existing code records attach time bases and pre-reset totals, but never uses either when publishing counters. It instead replaces the low hardware bits directly, so counters can inherit pre-attach traffic or jump backward after a reset. Accumulate modular 32- and 36-bit deltas, following DPDK, while keeping the software totals across planned resets. Establish a fresh hardware baseline after each successful reset and invalidate the sampling epoch when mailbox state is lost. Detect unsolicited PF resets explicitly so a reset while link is down cannot be mistaken for counter wrap. Remove the unused base and saved-reset bookkeeping. On E610, packet and octet counters remained monotonic across a VF FLR and a PF down/up cycle. Traffic after each reset advanced both RX and TX counters. Sponsored by: BBOX.io (cherry picked from commit cb85c4397bb3f57e60ab20c239b9339c4b752412) M sys/dev/ixgbe/if_ixv.c M sys/dev/ixgbe/ixgbe_vf.h _____________________________________________________________________________________________________________ Commit: 34208cb350760c8bf52f84635ca9d8a15756c4df URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=34208cb350760c8bf52f84635ca9d8a15756c4df Author: Kevin Bowling (Sat 1 Aug 2026 03:47:11 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 01:26:13 BST) ixgbe: Enable SR-IOV on E610 PFs E610 inherits the X550-family virtualization registers, anti-spoofing controls, and malicious-driver operations, but the frontend does not advertise SR-IOV and cannot negotiate the mailbox revision needed by E610 VFs. Initialize the X550-family PF/VF mailbox registers for E610 and use PFVFLREC for its VF reset events, following DPDK shared ixgbe code. Advertise the E610 SR-IOV capability, accept API 1.6 only on E610, carry the existing xcast and queue operations forward to that revision, and return the cached physical link speed and state with the three-dword E610 operation. Unsupported RSS and optional feature requests continue to receive explicit failures. SR-IOV activation also enables the existing X550-derived per-pool MDD recovery path on E610. Document the expanded protection and link-state coverage. Hardware validation created 63 VFs and rejected a 64th without flapping the running PF. Invalid TX and RX descriptor DMA independently asserted the offender's WQBR bit, gated only that VF, preserved sibling traffic, and recovered after the VF reset. FreeBSD ixv, FreeBSD DPDK, Linux ixgbevf, and Linux DPDK exercised the PF mailbox and data paths. Relnotes: yes Sponsored by: Dirk-Willem van Gulik from Web Weaving (E610 hardware) Sponsored by: BBOX.io (cherry picked from commit df02513fd44bcede0aa8833ae5c2af826f63ce10) M share/man/man4/ix.4 M sys/dev/ixgbe/if_ix.c M sys/dev/ixgbe/if_sriov.c M sys/dev/ixgbe/ixgbe_mbx.c M sys/dev/ixgbe/ixgbe_sriov.h _____________________________________________________________________________________________________________ Commit: 83866916004100b381cffcb514c37cffcc7fef29 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=83866916004100b381cffcb514c37cffcc7fef29 Author: Kevin Bowling (Sat 1 Aug 2026 03:41:56 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 01:26:02 BST) ixv: Support E610 mailbox API 1.6 E610 VFs no longer report the actual PF link state and speed through VFLINKS. They can consequently report the default 10 Gb/s speed even when the physical link uses another rate. Negotiate mailbox API 1.6 on E610 and request the PF link state with its three-dword operation. Retain VFLINKS as the fallback when an older PF rejects API 1.6. Permit API 1.6 in the inherited xcast and queue discovery helpers so negotiating the newer revision does not disable existing operations. Use GET_QUEUES to replace E610's one-queue fallback with the grant from the PF. The common path continues to use one iflib queue set per data MSI-X vector and caps the result at two queue pairs. Preserve mailbox transport errors so the driver can distinguish an explicit PF NACK from a transient timeout. A NACK means clear-to-send state was lost and requires a VF reset. Preserve the last confirmed link state across brief transport failures and publish link down after three consecutive failures. Poll E610 link state every two seconds, matching Intel's ixgbevf service timer, and phase VFs across the intervening iflib timer ticks. This avoids a mailbox polling herd when many VFs share a PF. Media-status queries return the cached state instead of starting another synchronous exchange. An admin interrupt caused by a mailbox reply only checks for an unsolicited PF reset, preventing a request/reply interrupt loop. Hardware validation on an E610 10GBASE-T PF exercised 63 VFs. Each VF negotiated API 1.6, two queue pairs, and three MSI-X vectors. Phased polling kept 31 active VFs idle, and all 63 recovered after a PF down/up cycle without watchdogs. Adapt the API 1.6 link-state operation from DPDK shared ixgbe code. The timeout and NACK distinction follows Intel ixgbevf 5.3.25. Sponsored by: Dirk-Willem van Gulik from Web Weaving (E610 hardware) Sponsored by: BBOX.io (cherry picked from commit 40367d1f3b8ff694ffc3e4bf3278ec2a762648d2) M sys/dev/ixgbe/if_ixv.c M sys/dev/ixgbe/ixgbe.h M sys/dev/ixgbe/ixgbe_mbx.h M sys/dev/ixgbe/ixgbe_vf.c M sys/dev/ixgbe/ixgbe_vf.h _____________________________________________________________________________________________________________ Commit: c4fe384e2c7be7929f87efd39656ac7e0591116c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c4fe384e2c7be7929f87efd39656ac7e0591116c Author: Kevin Bowling (Sun 16 Aug 2026 00:47:10 BST) Committer: Kevin Bowling (Sun 30 Aug 2026 01:25:52 BST) pci: Export pcie_flr_supported() Move the capability and quirk checks used by pcie_flr() into a public side effect free helper. This lets callers determine whether an FLR can be attempted before quiescing a device or saving state. The helper considers the advertised PCIe FLR capability and both the enable and disable FLR quirks. Sponsored by: BBOX.io (cherry picked from commit 5b48968c1a57bd1a7f086d7e09add59afa158340) M share/man/man9/pci.9 M sys/dev/pci/pci.c M sys/dev/pci/pcivar.h _____________________________________________________________________________________________________________ Commit: 3c6ea4597b26e5c3d91f2ce62f10542fbf4021a0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3c6ea4597b26e5c3d91f2ce62f10542fbf4021a0 Author: Jose Luis Duran (Fri 21 Aug 2026 20:14:03 BST) Committer: Jose Luis Duran (Sat 29 Aug 2026 21:57:24 BST) makefs: Fix atime tests on MS-DOS (FAT) file systems On FAT file systems, access time has a resolution of 1 day, so it is really the access date. Strip the time component from the epoch timestamp in order to check the access time. Reference: https://learn.microsoft.com/en-us/windows/win32/sysinfo/file-times Reviewed by: ngie MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54584 (cherry picked from commit 2916ae647303e3bd92e533002a8e6c476417fe7f) M usr.sbin/makefs/tests/makefs_msdos_tests.sh _____________________________________________________________________________________________________________ Commit: 019d13dafed63bb923866b8e0be12163cecde3e6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=019d13dafed63bb923866b8e0be12163cecde3e6 Author: Jose Luis Duran (Fri 21 Aug 2026 20:02:04 BST) Committer: Jose Luis Duran (Sat 29 Aug 2026 21:56:56 BST) makefs: zfs: Allow the path vdev property to be set This allows specifying custom vdev paths (such as GPT labels like /dev/gpt/...) when creating ZFS filesystem images via makefs(8), rather than defaulting to /dev/null. Reviewed by: markj MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D59031 (cherry picked from commit 5fece2484324be52737e4cea86658a4b8d3107fc) M usr.sbin/makefs/makefs.8 M usr.sbin/makefs/tests/makefs_zfs_tests.sh M usr.sbin/makefs/zfs.c M usr.sbin/makefs/zfs/zfs.h _____________________________________________________________________________________________________________ Commit: bd0449aab23926b4724f4b5c91f008f2a60e58ca URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bd0449aab23926b4724f4b5c91f008f2a60e58ca Author: Christos Margiolis (Fri 21 Aug 2026 15:02:19 BST) Committer: Christos Margiolis (Sat 29 Aug 2026 12:14:27 BST) snd_uaudio: Use uDWord for the UAC2 sample rate uaudio20_set_speed() split the sample rate into bytes by hand. Use uDWord and USETDW() instead. No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D59066 (cherry picked from commit 5c3bc8ab427c8624b29cd9ac9265445002da3ba8) M sys/dev/sound/usb/uaudio.c _____________________________________________________________________________________________________________ Commit: f4b7be7c2be5c2be0798a989fe9379a471b59c6d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f4b7be7c2be5c2be0798a989fe9379a471b59c6d Author: Kevin Bowling (Sat 22 Aug 2026 02:13:12 BST) Committer: Kevin Bowling (Sat 29 Aug 2026 01:25:13 BST) snd_hdsp: Avoid allocation in the interrupt handler Cache PCM children instead of calling device_get_children() from the interrupt handler. Drain callbacks before child detach so cached pointers cannot outlive the PCM softc. Allocate the parent softc by its actual size. This mirrors snd_hdspe's interrupt dispatch and detach lifecycle. Reported by: christos (cherry picked from commit 74db53d5d7657d0508940d1193f05a39df85434a) M sys/dev/sound/pci/hdsp-pcm.c M sys/dev/sound/pci/hdsp.c M sys/dev/sound/pci/hdsp.h _____________________________________________________________________________________________________________ Commit: 0230605c42aed16dd6ea6858f20ca7b8b3e7f9f0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0230605c42aed16dd6ea6858f20ca7b8b3e7f9f0 Author: Olivier Certner (Thu 27 Aug 2026 11:43:40 BST) Committer: Olivier Certner (Fri 28 Aug 2026 21:55:02 BST) UPDATING: Fix entry for getgroups(2)/setgroups(2) Fix a typo, grammar, and generally rephrase for better clarity. Fixes: 3463f02706db ("UPDATING: add an entry for [gs]etgroups") MFC after: 1 day MFC to: stable/15 Sponsored by: The FreeBSD Foundation (cherry picked from commit b7cff2a8c47eb09968430e53cab8b05cf8897d3f) M UPDATING _____________________________________________________________________________________________________________ Commit: 1853976b752229b0a93b21a6bcc7691d177bceb3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1853976b752229b0a93b21a6bcc7691d177bceb3 Author: Jesús Daniel Colmenares Oviedo (Fri 28 Aug 2026 06:12:46 BST) Committer: Jesús Daniel Colmenares Oviedo (Fri 28 Aug 2026 16:59:56 BST) nullfs: Allow VSOCK to be mounted on top of another VSOCK In the world of containers, mounting a unix(4) socket is a common practice to allow communication between processes within containers. For example, both Podman and Docker can expose a unix(4) socket, and that same unix(4) socket can be mounted as a file accessible to a process inside a container, allowing that application to control Podman or Docker. Another example is PHP-FPM with NGINX, where, instead of using TCP/IP for communication between containers, a unix(4) socket is sufficient. However, nullfs(4) and all related components do not allow mounting a VSOCK on top of another. The current workaround involves creating the socket in a directory and mounting that directory. This is an option, though it does not provide a good user experience compared to directly mounting a VSOCK on top of another, since the application that creates the socket may create other sockets in that directory, and the user may not wish to share them, or, worse yet, applications that create unix(4) sockets may not provide any authentication at all, as they may assume that security at the file system level is sufficient. Reviewed by: dfr@ Approved by: dfr@ Relnotes: yes Differential Revision: https://reviews.freebsd.org/D59158 (cherry picked from commit 2c68ad49f13ddfa33735bd9bb6a3ca170a472ac0) M lib/libutil/mntopts.c M sbin/mount_nullfs/mount_nullfs.8 M sbin/mount_nullfs/mount_nullfs.c M sys/fs/nullfs/null_vfsops.c M sys/kern/vfs_cache.c M sys/kern/vfs_mount.c _____________________________________________________________________________________________________________ Commit: 0c9cc6ce2f2f46e0ca16fad42f2c0e065f2ef6db URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0c9cc6ce2f2f46e0ca16fad42f2c0e065f2ef6db Author: Alexander Ziaee (Mon 24 Aug 2026 21:23:31 BST) Committer: Alexander Ziaee (Fri 28 Aug 2026 05:52:06 BST) nvme.4: Canonicalize SYNOPSIS MFC after: 3 days (cherry picked from commit b863d38437af11c18a88de656404af8cefa35e63) M share/man/man4/nvme.4 _____________________________________________________________________________________________________________ Commit: 5012a1839d052defe044467b4c1ee7421dc09a22 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5012a1839d052defe044467b4c1ee7421dc09a22 Author: Kevin Bowling (Wed 12 Aug 2026 02:51:18 BST) Committer: Kevin Bowling (Fri 28 Aug 2026 03:11:56 BST) iflib: Initialize the VFLR task unconditionally The VFLR task was initialized only from drivers MSI-X interrupt assignment paths. ixl's legacy interrupt handler can nevertheless defer VFLR work, leaving an uninitialized task. Even with MSI-X, the admin interrupt was established before the task was initialized. Initialize it alongside the other private tasks. The existing detach check and private-taskqueue drains then cover its lifecycle for every interrupt mode and registration failure. Sponsored by: BBOX.io (cherry picked from commit b4208a67edc2eb7898a9ff2a6f3990c6852910e4) M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: be587e65687493c234ab9723840a1f9b2a8b0841 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=be587e65687493c234ab9723840a1f9b2a8b0841 Author: Kevin Bowling (Sat 8 Aug 2026 07:18:26 BST) Committer: Kevin Bowling (Fri 28 Aug 2026 03:11:45 BST) iflib: Add an admin task detach fail point Add an exact-device fail point immediately after the admin task checks IFC_IN_DETACH. This makes the detach race reproducible without affecting another interface. Use a bounded delay to keep the task active while detach enters the taskqueue drain. Mark the point nonsleepable as a safety backstop, and document a one-shot test for verifying that deregistration drains an already-running task before ether_ifdetach(). Reviewed by: gallatin, kgalazka Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D58720 (cherry picked from commit ac56d36007a5a1a01fe69df370f272060e852e0b) M share/man/man4/iflib.4 M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: 92b851661bd024d2cb95e306537abaf2c972293f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=92b851661bd024d2cb95e306537abaf2c972293f Author: Nick Price (Sat 8 Aug 2026 07:17:16 BST) Committer: Kevin Bowling (Fri 28 Aug 2026 03:11:33 BST) iflib: Drain configuration tasks before interface detach iflib_device_deregister() sets IFC_IN_DETACH before removing the interface, but a task which already passed its detach check can still report a link change. This can re-arm if_linktask after ether_ifdetach() has drained it and leave work pending across queue teardown. Drain the entire private taskqueue before ether_ifdetach(). Drivers may register their own link-related configuration tasks there, so draining only the framework admin task leaves the same race for those drivers. Differential Revision: https://reviews.freebsd.org/D58452 Co-authored-by: Andrew Gallatin Co-authored-by: Kevin Bowling (cherry picked from commit ba353c8950d575f9d15b82c92658e660935fba25) M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: 1a13e217a82fdfd58065cd02b6961f6447aa1270 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1a13e217a82fdfd58065cd02b6961f6447aa1270 Author: Kevin Bowling (Sat 8 Aug 2026 05:33:25 BST) Committer: Kevin Bowling (Fri 28 Aug 2026 03:11:19 BST) iflib: Add registration failure injection points Add six device-scoped fail(9) points at the registration milestones needed to exercise each unwind path. An exact, runtime-only device selector prevents unrelated iflib devices from consuming an armed point. Mark the points non-sleepable because registration holds the ifnet and context locks. Document one-shot operation and bus-address reprobe so a failed attach can be recovered without another kernel build. Reviewed by: gallatin Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D58722 (cherry picked from commit 90e7dbe5e2ca47baff4e4c6d9e892a0554eec4db) M share/man/man4/iflib.4 M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: 4a9daa081a6dbb2d27edf8fd0d34862f813979d0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4a9daa081a6dbb2d27edf8fd0d34862f813979d0 Author: Kevin Bowling (Sat 8 Aug 2026 05:14:53 BST) Committer: Kevin Bowling (Fri 28 Aug 2026 03:11:02 BST) iflib: Complete registration failure cleanup Pre-attach sysctls contain pointers into the iflib context. Any later registration failure that frees the context must first remove that sysctl tree. Failures after a successful IFDI_ATTACH_PRE also did not consistently call IFDI_DETACH or free the private taskqueue. In particular, routing a taskqueue creation failure through the context cleanup could free the driver softc while resources allocated by attach_pre remained live. Track successful interrupt and queue setup and use one common unwind path. Invoke IFDI_DETACH with IFNET_WLOCK dropped and release only resources whose setup completed. Leave a failed IFDI_ATTACH_PRE to unwind its own partial state, as required by the existing driver contract. A failed post-attach can follow driver registration of an SR-IOV schema. Remove that registration before detaching the interface and driver, matching normal deregistration, so a failed attach cannot leave a stale /dev/iov node or make the next attach report EBUSY. A successful attach_pre can now be followed by detach before driver queue allocation. Make the remaining queue-backed interrupt cleanup paths tolerate absent queue arrays. Mark a failed registration as detaching before draining the entire private taskqueue. Drivers can register configuration tasks there, and taskqueue_drain_all() does not wait for work queued during its drain. Make every current non-admin callback reject detaching contexts so late work cannot touch driver state. Drain tasks and call ether_ifdetach() with neither the ifnet nor context lock held. A callback already running may need either lock, while ether_ifdetach() acquires ifnet_detach_sx. Reacquire IFNET_WLOCK before the context lock to preserve the established lock order. The shared automatic core-offset allocator also lacked acquisition state. Late registration failures leaked its reference, while normal detach could decrement a reference belonging to another device when a configured offset or allocation failure meant that this context never acquired one. Record acquisition explicitly and release only references held. Reviewed by: gallatin Sponsored by: BBOX.io Differential Revision: https://reviews.freebsd.org/D58721 (cherry picked from commit fe00ca2f88718c7751b8953cc8ee7fc0dad0bbe1) M sys/dev/bnxt/bnxt_en/if_bnxt.c M sys/dev/enetc/if_enetc.c M sys/dev/igc/if_igc.c M sys/dev/ixgbe/if_sriov.c M sys/dev/vmware/vmxnet3/if_vmx.c M sys/net/iflib.c M sys/net/iflib.h _____________________________________________________________________________________________________________ Commit: 4fba78389e5a307c1060fd7785cb560397e82691 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4fba78389e5a307c1060fd7785cb560397e82691 Author: Sumit Saxena (Mon 13 Apr 2026 07:33:46 BST) Committer: Kevin Bowling (Fri 28 Aug 2026 03:10:52 BST) iflib: drain admin task and fix teardown order on register failure When IFDI_ATTACH_POST() fails (or netmap attach fails), iflib tears down with ether_ifdetach(), taskqueue_free(ifc_tq), and IFDI_DETACH(). CTX_LOCK is still held after ether_ifattach. ether_ifdetach() and taskqueue_drain(admin) must not run under CTX_LOCK. Teardown ordering (match iflib_device_deregister): - Free the per-interface admin taskqueue after IFDI_DETACH / IFDI_QUEUES_FREE, not before. - Drop IFNET_WLOCK() across IFDI_DETACH / IFDI_QUEUES_FREE so driver detach can sleep in LinuxKPI workqueue drain, then retake IFNET_WLOCK() before iflib_free_intr_mem and fail_unlock. Reviewed by: gallatin, kgalazka, #iflib Differential Revision: https://reviews.freebsd.org/D56316 (cherry picked from commit 439132310ae1f623f6c0a3dc241d0a34e98e040b) M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: 0fdbbfbe0877c191cec54797432bd2dcadec77fd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0fdbbfbe0877c191cec54797432bd2dcadec77fd Author: Sreekanth Reddy (Mon 13 Apr 2026 07:28:08 BST) Committer: Kevin Bowling (Fri 28 Aug 2026 03:10:40 BST) iflib: Fix panic observed while doing sysctl -a with if_bnxt unload Observed below kernel panic calltrace while performing sysctl -a operation while unloading the if_bnxt driver, Fatal trap 9: general protection fault while in kernel mode KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe02a7569940 vpanic() at vpanic+0x136/frame 0xfffffe02a7569a70 panic() at panic+0x43/frame 0xfffffe02a7569ad0 trap_fatal() at trap_fatal+0x68/frame 0xfffffe02a7569af0 calltrap() at calltrap+0x8/frame 0xfffffe02a7569af0 trap 0x9, rip = 0xffffffff80c0b411, rsp = 0xfffffe02a7569bc0, rbp = 0xfffffe02a7569be0 --- sysctl_handle_counter_u64() at sysctl_handle_counter_u64+0x61/frame 0xfffffe02a7569be0 sysctl_root_handler_locked() at sysctl_root_handler_locked+0x9c/frame 0xfffffe02a7569c30 sysctl_root() at sysctl_root+0x22f/frame 0xfffffe02a7569cb0 userland_sysctl() at userland_sysctl+0x196/frame 0xfffffe02a7569d50 sys___sysctl() at sys___sysctl+0x65/frame 0xfffffe02a7569e00 amd64_syscall() at amd64_syscall+0x169/frame 0xfffffe02a7569f30 fast_syscall_common() at fast_syscall_common+0xf8/frame 0xfffffe02a7569f30 Root Cause: iflib adds per-device sysctl nodes under the device tree using the device sysctl context. Some of those nodes are counter sysctl that point at fields inside txq→ift_br. When the if_bnxt driver is unloaded, iflib_device_deregister runs and calls iflib_tx_structures_free, which frees the txqs ift_br. The device sysctl tree is only freed when the device is destroyed. If sysctl -a runs during unload, it can still traverse the device tree and call sysctl_handle_counter_u64 for those nodes. The handler does counter_u64_fetch(*(counter_u64_t *)arg1). By then arg1 can point into freed memory and leads to use after free type kernel panic. Fix: flib now uses its own sysctl context for all iflib-related nodes instead of using device’s context. And iflib sysctl context is now removed before any queue/ring memory is freed. Reviewed by: gallatin, ssaxena, #iflib Differential Revision: https://reviews.freebsd.org/D55981 (cherry picked from commit d2b96f654a672f6059c5c623c276dcd76841ed12) M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: 724c344aededf3a5b1fd9d840d9e1ff0a7cd5b0e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=724c344aededf3a5b1fd9d840d9e1ff0a7cd5b0e Author: Dag-Erling Smørgrav (Wed 26 Aug 2026 18:34:18 BST) Committer: Dag-Erling Smørgrav (Thu 27 Aug 2026 07:33:50 BST) install: Fix two bugs in stdin code * Fix case where the source is - and the target exists. * Only call chflags() (to remove flags that might prevent us from replacing an existing target) in the exists case; otherwise, to_sb.st_flags is uninitialized. * Rename the source file in the stdin test case. * Extend null and stdin test cases to cover the case where the target already exists. PR: 297681 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297681 ) MFC after: 1 week Fixes: d34870708db9 ("install: Allow installing stdin") Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D59144 (cherry picked from commit a5ff4125cf08a83f7e67f498e423f3e354144327) M usr.bin/xinstall/tests/install_test.sh M usr.bin/xinstall/xinstall.c _____________________________________________________________________________________________________________ Commit: 9213578be26bea80095a7e6c624c76480c4ed2e6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9213578be26bea80095a7e6c624c76480c4ed2e6 Author: Dag-Erling Smørgrav (Thu 20 Aug 2026 14:57:56 BST) Committer: Dag-Erling Smørgrav (Thu 27 Aug 2026 07:33:50 BST) kern/sched: Hide scheduler selection from C++ The scheduler selection interface uses names that are reserved words in C++, causing problems for downstream projects that use C++ in the kernel. Work around this by hiding the interface from C++ compilers until we can come up with a better solution. Fixes: ce38acee8d0b ("Add kern/sched_shim.c") MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: siderop1_netapp.com, imp, kib Differential Revision: https://reviews.freebsd.org/D58991 (cherry picked from commit f2366851616083f923e8101363802678a03dc0b9) M sys/sys/sched.h _____________________________________________________________________________________________________________ Commit: 1e7d914ffcbee31a410822d002cc2650ca1076f3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1e7d914ffcbee31a410822d002cc2650ca1076f3 Author: Dag-Erling Smørgrav (Mon 17 Aug 2026 17:04:35 BST) Committer: Dag-Erling Smørgrav (Thu 27 Aug 2026 07:33:50 BST) yes: Avoid static initialization Our buffer is half a megabyte, but we are only initializing the first two bytes. Switching from static to dynamic initialization moves it from .data to .bss, greatly reducing the size of the binary. Fixes: cf74b63d61b4 ("yes: Completely overengineer") MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D58890 (cherry picked from commit 557ba0c2a5138ce026c0ea9cb02f374f97378b7c) M usr.bin/yes/yes.c _____________________________________________________________________________________________________________ Commit: 9f25a717ff5fb54d3456bb5abc74192b8ca0784e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9f25a717ff5fb54d3456bb5abc74192b8ca0784e Author: Dag-Erling Smørgrav (Thu 13 Aug 2026 13:28:09 BST) Committer: Dag-Erling Smørgrav (Thu 27 Aug 2026 07:33:50 BST) build: Use -f when copying sources If one of the source files we copy is non-writeable, cp will create a non-writeable copy. If the original is later modified, cp will fail to overwrite the copy since it is not writeable. Using cp -f ensures the copy always succeeds, as long as the object directory is writeable. MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. (cherry picked from commit 336b6d11922ac3d080de50f789d40ff95b540cdf) M tools/build/Makefile _____________________________________________________________________________________________________________ Commit: b057c92506f8600bd0d703eae4337ce81bfbeea9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b057c92506f8600bd0d703eae4337ce81bfbeea9 Author: Kevin Bowling (Wed 12 Aug 2026 02:29:31 BST) Committer: Kevin Bowling (Thu 27 Aug 2026 06:16:56 BST) bnxt: Add led(4) identification support Query the firmware for the LEDs on each physical port and expose /dev/led/bnxt* only when alternate blinking is supported. Configure every LED in the advertised group for identification and restore its default firmware state before a function reset. This follows the DPDK and Linux bnxt HWRM identification paths. Reviewed against: DPDK, Linux Reviewed by: Sumit Saxena Sponsored by: BBOX.io (cherry picked from commit 98b5640786f874949e441bee7c4ad5740cd6a649) M share/man/man4/bnxt.4 M sys/dev/bnxt/bnxt_en/bnxt.h M sys/dev/bnxt/bnxt_en/bnxt_hwrm.c M sys/dev/bnxt/bnxt_en/bnxt_hwrm.h M sys/dev/bnxt/bnxt_en/if_bnxt.c _____________________________________________________________________________________________________________ Commit: 8a4fcb694526fdb64709e0382d92053a9d71e49a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8a4fcb694526fdb64709e0382d92053a9d71e49a Author: Jochen Neumeister (Wed 19 Aug 2026 11:07:03 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:32 BST) vmm: Emulate CPUID leaf 1Fh for guests On an Intel N150 host a guest started with sockets=1, cores=4, threads=1 reports "1 package(s) x 2 core(s) x 2 hardware threads" instead of four cores with one thread each, while the host itself detects its topology correctly. A FreeBSD guest picks the topology leaf in topo_probe_intel_0xb(), sys/x86/x86/mp_x86.c, and since 6badb512a94d it prefers leaf 1Fh over leaf 0Bh whenever cpu_high is 1Fh or higher. bhyve passes leaf 0 through unmodified, so the guest sees the maximum basic leaf of the host, which is 1Fh or above on Alder Lake and newer, and takes that path. x86_emulate_cpuid(), sys/amd64/vmm/x86.c, derives the topology from vm_get_topology() for leaves 1, 4 and 0Bh, but has no case for 1Fh, so the request ends up in default_leaf and the host values are returned verbatim. The guest therefore enumerates the topology of the host: with an SMT shift of 1 in the host's leaf 1Fh and four vCPUs this gives core_id_shift = 1 and pkg_id_shift = 2, which is exactly the reported 2 cores x 2 threads. Hosts whose maximum basic leaf is below 1Fh are unaffected, as the request is clamped to cpu_high before the switch statement. Leaf 1Fh uses the same level encoding as leaf 0Bh for the SMT and the core level, so handle both leaves in the same case. The module, tile and die levels are not emulated and terminate the enumeration, exactly as they already do for leaf 0Bh. PR: 297475 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297475 ) MFC after: 1 week Reported by: Richard Straka Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D58885 (cherry picked from commit 4b1974e9db63d6510406e4ef3e56c250edd2240a) M sys/amd64/vmm/x86.c M sys/amd64/vmm/x86.h _____________________________________________________________________________________________________________ Commit: 9c860aa2f5dc0e687e4a3c83de5280a715d89027 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9c860aa2f5dc0e687e4a3c83de5280a715d89027 Author: Lexi Winter (Mon 3 Aug 2026 15:10:25 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:12 BST) libelftc: Const correctness for C23 On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr() now implements the C23 behaviour where passing a const pointer to strchr() also returns a const pointer. This breaks libelftc during the bootstrap build, since it assumes the return value is always a mutable pointer. Since the returned pointer is never modified in either case, make it const. MFC after: 1 week Reviewed by: jkoshy, markj, dim, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58497 (cherry picked from commit 85b07e977b04fceec84783facdb308492f17b155) M contrib/elftoolchain/libelftc/libelftc_dem_arm.c M contrib/elftoolchain/libelftc/libelftc_dem_gnu2.c _____________________________________________________________________________________________________________ Commit: 198ab9e5acfaf367ff44a724f079a486eeef0b9f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=198ab9e5acfaf367ff44a724f079a486eeef0b9f Author: Lexi Winter (Mon 3 Aug 2026 15:09:39 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:12 BST) mandoc: Const correctness for C23 On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr() now implements the C23 behaviour where passing a const pointer to strchr() also returns a const pointer. This breaks mandoc during the bootstrap build, since it assumes the return value is always a mutable pointer. In read.c, make the existing temporary pointer const, and for the mandoc_asprintf() call, add a new mutable local. In mdoc.c and out.c, since the data is mutable and is mutated here, remove const from the temporary pointers. MFC after: 1 week Reviewed by: fuz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58495 (cherry picked from commit 9f18614d5353ce513511ccbf59d09e76c93f7bc9) M contrib/mandoc/mdoc.c M contrib/mandoc/out.c M contrib/mandoc/read.c _____________________________________________________________________________________________________________ Commit: 4f5673b8aeb4c5cb6788fe832b1ac0888658ca20 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4f5673b8aeb4c5cb6788fe832b1ac0888658ca20 Author: Lexi Winter (Mon 3 Aug 2026 15:09:03 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:12 BST) m4: Const correctness for C23 On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr() now implements the C23 behaviour where passing a const pointer to strchr() also returns a const pointer. This breaks m4 during the bootstrap build, since it assumes the return value is always a mutable pointer. Since the returned value is never modified, simply make the temporary const. MFC after: 1 week Reviewed by: bapt, dim Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58494 (cherry picked from commit 1d94e2e0f2ee21d5a4596efc0570d06e3dea0a6e) M usr.bin/m4/misc.c _____________________________________________________________________________________________________________ Commit: ec58dba0ed806875f7e9da5b1475b85db52421fd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ec58dba0ed806875f7e9da5b1475b85db52421fd Author: Lexi Winter (Mon 3 Aug 2026 15:08:13 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:12 BST) mkimg: Const correctness for C23 On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr() now implements the C23 behaviour where passing a const pointer to strchr() also returns a const pointer. This breaks mkimg during the bootstrap build, since it assumes the return value is always a mutable pointer. Make the existing 'sep' pointer const to fix the first case, and for the second, introduce a new non-const pointer for strchr, since we do modify the result in that case. MFC after: 1 week Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58493 (cherry picked from commit 9fd8f5e761ba663c8e99eeff64c5a7fd7bcf1e05) M usr.bin/mkimg/mkimg.c _____________________________________________________________________________________________________________ Commit: 5b466d39237c711f1e2d65157970cc5f0637a55c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5b466d39237c711f1e2d65157970cc5f0637a55c Author: Lexi Winter (Mon 3 Aug 2026 15:07:09 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:12 BST) xinstall: Const correctness for C23 On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr() now implements the C23 behaviour where passing a const pointer to strchr() also returns a const pointer. This breaks xinstall during the bootstrap build, since it assumes the return value is always a mutable pointer. As the returned pointer is never used to modify the value, fix this by making the temporary variable const. MFC after: 1 week Reviewed by: ray, markj, emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58492 (cherry picked from commit 2296c39a9ebc4f081d90b6554d8839e8cde8490a) M usr.bin/xinstall/xinstall.c _____________________________________________________________________________________________________________ Commit: 876f29df3e2ae25b7e9c225a12a1a7e293196a3e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=876f29df3e2ae25b7e9c225a12a1a7e293196a3e Author: Lexi Winter (Mon 3 Aug 2026 15:06:18 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:12 BST) sort: Const correctness for C23 On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr() now implements the C23 behaviour where passing a const pointer to strchr() also returns a const pointer. This breaks sort during the bootstrap build, since it assumes the return value is always a mutable pointer. As the returned pointer is never used to modify the value, fix this by making the temporary variable const. MFC after: 1 week Reviewed by: markj Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58491 (cherry picked from commit 78f842dda35b7280e8682f90506ff05b591c6b3a) M usr.bin/sort/sort.c _____________________________________________________________________________________________________________ Commit: 8c71eb51d2eec6f2a29eaa171b3f6ca51d8c76c6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=8c71eb51d2eec6f2a29eaa171b3f6ca51d8c76c6 Author: Lexi Winter (Mon 3 Aug 2026 15:05:09 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:12 BST) libucl: Const correctness for C23 On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr() now implements the C23 behaviour where passing a const pointer to strchr() also returns a const pointer. This breaks libucl during the bootstrap build, since it assumes the return value is always a mutable pointer. Instead of assigning directly to params->prefix (which is const), use a non-const temporary variable and assign the result after we've done the modification. MFC after: 1 week Reviewed by: bofh, bapt Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58490 (cherry picked from commit bcee560d390eb8aa8fd0f08a7a0bffb6e77fffc6) M contrib/libucl/src/ucl_util.c _____________________________________________________________________________________________________________ Commit: 3dababd3277afee2a4ed734833b0de70dc6ce3b1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3dababd3277afee2a4ed734833b0de70dc6ce3b1 Author: Lexi Winter (Mon 3 Aug 2026 15:04:16 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:12 BST) rpcgen: Const correctness for C23 On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr() now implements the C23 behaviour where passing a const pointer to strchr() also returns a const pointer. This breaks rpcgen during the bootstrap build, since it assumes the return value is always a mutable pointer. For mkfile_output(), the pointed-to value is never modified, so fix this by making the pointer const as well. For open_log_file(), the current code modifies the supposedly const value in-place to remove the filename suffix, which happens to work but is wrong even in older versions of C. Change the code to use a printf "%.*s" format specifier to strip the suffix instead. MFC after: 1 week Reviewed by: brooks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58489 (cherry picked from commit cb2daf8ce116d475597d7ab95f2454ea54c968e6) M usr.bin/rpcgen/rpc_main.c M usr.bin/rpcgen/rpc_svcout.c _____________________________________________________________________________________________________________ Commit: d15778bbb91055d9cee22228e8b07bdab4795294 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d15778bbb91055d9cee22228e8b07bdab4795294 Author: Lexi Winter (Mon 3 Aug 2026 15:02:51 BST) Committer: Lexi Winter (Wed 26 Aug 2026 10:56:12 BST) libc: getopt{,_long}: Const correctness for C23 On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr() now implements the C23 behaviour where passing a const pointer to strchr() also returns a const pointer. This breaks getopt during the bootstrap build, since it assumes the return value is always a mutable pointer. Since the pointed-to value is never modified, fix this by making the pointer const. MFC after: 1 week Reviewed by: emaste Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58488 (cherry picked from commit f1d98862044f7748c6f930e9d4339abc166a5b16) M lib/libc/stdlib/getopt.c M lib/libc/stdlib/getopt_long.c _____________________________________________________________________________________________________________ Commit: 132e609c2ce5c72e9e04a5d6f3e0e9140e06ebd8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=132e609c2ce5c72e9e04a5d6f3e0e9140e06ebd8 Author: Kevin Bowling (Wed 26 Aug 2026 02:07:59 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 02:07:59 BST) igc: Restore the watchdog event counter The MFC of the fatal memory-error recovery dropped watchdog_events from the softc. The driver still increments it, includes it in IFCOUNTER_OERRORS, and exports it as the watchdog_timeouts sysctl. Fixes: ee9bbfca423f ("igc: Recover from fatal internal memory errors") M sys/dev/igc/if_igc.h _____________________________________________________________________________________________________________ Commit: e54458ceaad9413122c4c914dbf446c630e6b86c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e54458ceaad9413122c4c914dbf446c630e6b86c Author: Kevin Bowling (Wed 12 Aug 2026 02:29:31 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:52 BST) iflib: Allow conditional LED device support A driver class may implement LED control even though the capability is not available on every device or firmware version it supports. Add an optional capability method and consult it before creating the led(4) device. Default to supported so existing providers are unchanged. This will be used by bnxt which blends PF and VF in the same driver. (cherry picked from commit 2519e19f05e0c3e5925bf81b729b4c28f2ad1af6) M sys/net/ifdi_if.m M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: 12a27f82b370a049ac027203af9865ff63be9dbc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=12a27f82b370a049ac027203af9865ff63be9dbc Author: Kevin Bowling (Wed 12 Aug 2026 05:13:43 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:52 BST) igc: Report corrected internal ECC errors I225 and I226 do not interrupt for corrected internal ECC errors. Instead, the DMA packet buffer and PCIe memories expose sticky status bits in PBECCSTS and PCIEECCSTS. Sample these bits with the regular hardware statistics update, preserve the PBECCSTS ECC enable state while clearing its RW1C indication, and expose separate counters for the DMA packet buffer, PCIe transmit-data memory, and PCIe retry buffer. These counters represent observed indications rather than an exact error count because multiple corrections between samples collapse into one sticky status bit. Hardware validation used an I225-IT (rev 3) and a debug kernel that wrote only the documented self-clearing injection bits. Each test armed the injector, exercised the owning RAM with traffic, and compared the corresponding counter before and after. Coverage: Memory Observed result DMA packet buffer corrected_dma advanced once PCIe transmit data corrected_pcie_tx_data advanced once PCIe retry buffer No PCIe replay source; not exercised The retry-buffer injector requires a real PCIe replay to read the corrupted entry. The test root port exposed AER and DPC reporting but no protocol error injector, so ordinary traffic could not cover that case. Sponsored by: BBOX.io (cherry picked from commit 9f7633b932954162792e2caef4f6f0cd87e82f43) M sys/dev/igc/if_igc.c M sys/dev/igc/if_igc.h _____________________________________________________________________________________________________________ Commit: ee9bbfca423f8250479df7aaeac9a0ffe3bebd3b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ee9bbfca423f8250479df7aaeac9a0ffe3bebd3b Author: Kevin Bowling (Wed 12 Aug 2026 05:12:49 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:52 BST) igc: Recover from fatal internal memory errors I225 and I226 report uncorrectable internal memory errors through ICR.FER and identify the affected region in PEIND. Depending on the region, hardware stops transmit or all PCIe and DMA traffic until the port is reset and reinitialized. Enable the fatal error interrupt and capture its read clear status in the interrupt filter. Mask the cause while an iflib reset is pending, report the affected memory regions, and expose per region indication counters. PCIe region parity failures require a different recovery order from a normal reset: assert DEV_RST, wait at least 3 ms, disable PCIe master requests, clear PCIEERRSTS, and then reinitialize the port. Follow that sequence before entering the normal reset path and clear the remaining LAN status afterward. The I225/I226 PBECCSTS layout is unrelated to the PCH layout previously copied into the igc headers. Replace those unused definitions with the I225/I226 memory error register definitions. Hardware validation used an I225-IT revision 3 and a debug kernel that wrote only the documented self-clearing injection bits. It did not synthesize interrupt or status state. Coverage, notably DMA and Mgmt are not fully testable in my setup: Region Observed hardware status Result LAN PEIND 0x1, LANPERRSTS 0x200 Reset and recovered PCIe PEIND 0x4, PCIEERRSTS 0x8 Reset and recovered DMA DRPARC injection read back zero DFT-gated on test NIC Mgmt Host debug strap unavailable Not injectable The repeated LAN and PCIe tests recovered without a panic or watchdog. A PCIe-to-LAN sequence also verified that reset-time PEIND indications are drained before FER is unmasked. Sponsored by: BBOX.io (cherry picked from commit bbf93227fe9ee1f38b7db5477398c3564e5c84bc) M sys/dev/igc/if_igc.c M sys/dev/igc/if_igc.h M sys/dev/igc/igc_defines.h M sys/dev/igc/igc_regs.h _____________________________________________________________________________________________________________ Commit: 1dc515bfe52f130552ce0a9e3c805d1cc9a84363 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1dc515bfe52f130552ce0a9e3c805d1cc9a84363 Author: Kevin Bowling (Wed 12 Aug 2026 04:57:29 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:52 BST) ixgbe: Defer E610 thermal shutdown to iflib The E610 firmware event handler invoked ixgbe_if_stop() directly from IFDI_UPDATE_ADMIN_STATUS(). This reset the device without the iflib queue lifecycle and left the interface marked running after its hardware was stopped. Request an iflib reset instead. Fail the automatic initialization once so the reset transaction stops the interface and publishes that state. A later operator-requested initialization remains possible, matching the previous recovery policy without bypassing iflib. (cherry picked from commit 3aac283613bd3fd0228a06d6c854ca0bf190ecfb) M sys/dev/ixgbe/if_ix.c M sys/dev/ixgbe/ixgbe.h _____________________________________________________________________________________________________________ Commit: 95cf012c8da1c5c1a0cf3ab564edc78b24b57de4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=95cf012c8da1c5c1a0cf3ab564edc78b24b57de4 Author: Kevin Bowling (Wed 12 Aug 2026 04:36:03 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:52 BST) ixgbe: Defer firmware recovery transitions to iflib The firmware-mode callout invoked ixgbe_if_stop() directly. This performed a full device reset without the iflib context lock or the iflib queue lifecycle. It could also poll the E610 firmware command interface from callout context while identification was active. Request an iflib reset from the callout instead. Reject initialization while firmware recovery remains active. This leaves the interface stopped and lets iflib publish that state. Request initialization when firmware exits recovery so an administratively-up interface can recover without operator intervention. (cherry picked from commit 43aa553ef45a4345bdfabadae40d811730151144) M sys/dev/ixgbe/if_ix.c _____________________________________________________________________________________________________________ Commit: 7ebe1e32f5d4ea8c92676ba11b238c1380032216 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7ebe1e32f5d4ea8c92676ba11b238c1380032216 Author: Kevin Bowling (Wed 12 Aug 2026 03:33:20 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:51 BST) ixgbe: Defer ECC recovery to iflib The link interrupt filter performed a full hardware reset in interrupt context. This bypassed iflib stop and initialization, including queue quiescence and restoration of temporary LED state. Record the ECC event in the administrative request mask and ask iflib to perform the reset from its taskqueue. Keep the ECC cause masked until reset so the intermediate admin pass cannot re-enable a sticky condition. Handle ECC independently of Flow Director and in legacy interrupt mode. Remove the redundant EICR write; the filter has already cleared the reported causes. Also remove the accompanying complement-mask update of mac.flags. It set every flag except DOUBLE_RESET_REQUIRED and had no place in ECC recovery. (cherry picked from commit c28f2c551daf07345ac78b74459efe1014c49464) M sys/dev/ixgbe/if_ix.c M sys/dev/ixgbe/ixgbe.h M sys/dev/ixgbe/ixgbe_type.h _____________________________________________________________________________________________________________ Commit: ddee18ad56e90373ffa27937a251179befa26da4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ddee18ad56e90373ffa27937a251179befa26da4 Author: Kevin Bowling (Wed 12 Aug 2026 01:54:21 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:51 BST) ixl: Add led(4) identification support Expose each physical port identification LED through /dev/led/ixl*. Use the existing GPIO LED helpers for most devices and the PHY provisioning interface for X710 10GBASE-T adapters. Preserve and restore the original GPIO or PHY indication mode, including before the interface is stopped. (cherry picked from commit 8b2e75970c0328e7397290417cc06e9d9c763d2a) M share/man/man4/ixl.4 M sys/dev/ixl/if_ixl.c M sys/dev/ixl/ixl_pf.h M sys/dev/ixl/ixl_pf_iflib.c _____________________________________________________________________________________________________________ Commit: 623b7198c7a83499d72e10c2b132fbd6b9a5076f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=623b7198c7a83499d72e10c2b132fbd6b9a5076f Author: Kevin Bowling (Wed 12 Aug 2026 01:54:21 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:51 BST) ixgbe: Add led(4) identification support Expose the physical port identification LED through /dev/led/ix*. Save and restore the NVM-selected LEDCTL value around each request. The X550 operations also clear their PHY manual override before the register is restored. Use the dedicated firmware port-identification command on E610. Its interface selects between firmware blinking and the original mode rather than directly controlling LEDCTL. Restore the normal indication before a device stop or reset. (cherry picked from commit fb7e249ce4fd03fe53e4407efe661f9e94852bb6) M share/man/man4/ix.4 M sys/dev/ixgbe/if_ix.c M sys/dev/ixgbe/ixgbe.h _____________________________________________________________________________________________________________ Commit: 63d782348e44f7635fcf9ff455d05490a8030e93 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=63d782348e44f7635fcf9ff455d05490a8030e93 Author: Kevin Bowling (Wed 12 Aug 2026 04:03:11 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:51 BST) igc: Remove invalid debug ring pointer iteration The debug routine reads queue registers by queue index. It also advanced unused pointers to rings embedded in queue structures. Those pointers had the wrong stride and could proceed beyond the ring object. Remove the unused pointer arithmetic. (cherry picked from commit 423927d6c3dc87628fc2a19f25b5b5c07b3b73e2) M sys/dev/igc/if_igc.c _____________________________________________________________________________________________________________ Commit: 5122a6181aa4268761cda41980af62c0245f1816 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5122a6181aa4268761cda41980af62c0245f1816 Author: Kevin Bowling (Wed 12 Aug 2026 01:33:18 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:51 BST) e1000: Fix the multiqueue debug register dump The debug routine advanced ring pointers as if rings were contiguous. They are embedded in queue structures, so rings beyond queue zero had the wrong stride. The bogus queue index could cause an invalid MMIO read and panic the machine. Index the queue arrays first and then select the embedded ring. (cherry picked from commit 7dd826171b69a01c234ba6e9117917398ba2705e) M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: c43037f2bef77dff2d5c211b3bbf29236bb8eb58 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c43037f2bef77dff2d5c211b3bbf29236bb8eb58 Author: Kevin Bowling (Wed 12 Aug 2026 01:29:17 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:51 BST) e1000: Identify SerDes adapters with LED blink The generic LED on and off operations do not handle internal SerDes media, leaving the led(4) device ineffective on my I210 fiber port. Use the hardware blink operation for the on phase on internal SerDes. The off phase restores the saved OEM LED configuration as before. (cherry picked from commit 28f96cc3748fc46408cc6ab6172f09bc2182cad7) M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: 37f1ac5b871b1e53a8f03917662b1e2b4f7eb493 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=37f1ac5b871b1e53a8f03917662b1e2b4f7eb493 Author: Kevin Bowling (Wed 12 Aug 2026 01:22:35 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:51 BST) igc: Add led(4) identification support I225 and I226 expose three programmable LED outputs. Use LED1 for adapter identification, following the convention in DPDK. Preserve the OEM configuration across identification requests. Restore the OEM configuration before a device reset so an active led(4) pattern cannot leave the output overridden across stop or detach. The LED mode values follow the Intel I225 Software User Manual. (cherry picked from commit 19f75b38199b9d30e85fab83e61ff36b0b9ed015) M share/man/man4/igc.4 M sys/dev/igc/if_igc.c M sys/dev/igc/if_igc.h M sys/dev/igc/igc_defines.h _____________________________________________________________________________________________________________ Commit: ce44f0bfe47d2473d7bc7e0c16c291a8bf18f567 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ce44f0bfe47d2473d7bc7e0c16c291a8bf18f567 Author: Kevin Bowling (Wed 12 Aug 2026 03:03:33 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:56:51 BST) igb(4): Document identification LED device nodes The shared em(4) manual page lists only the em device-node name. Document the /dev/led/igb* name as well. (cherry picked from commit fc0e6adb9d26f94616db5357afcbb585e4176c6d) M share/man/man4/em.4 _____________________________________________________________________________________________________________ Commit: ac1026c4c8afcd738f266da06a758f0272ddf7aa URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ac1026c4c8afcd738f266da06a758f0272ddf7aa Author: Konstantin Belousov (Wed 19 Aug 2026 03:14:00 BST) Committer: Konstantin Belousov (Wed 26 Aug 2026 01:44:11 BST) ofed/ipoib: convert to timer_setup linuxKPI (cherry picked from commit fdcb52d03688d92ba4962eea623292b0120e2293) M sys/ofed/drivers/infiniband/ulp/ipoib/ipoib_ib.c _____________________________________________________________________________________________________________ Commit: ff47081093c8d4c6c405cd8ddd41bbbbca32b6e4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ff47081093c8d4c6c405cd8ddd41bbbbca32b6e4 Author: Konstantin Belousov (Wed 19 Aug 2026 03:13:20 BST) Committer: Konstantin Belousov (Wed 26 Aug 2026 01:44:11 BST) mlx5(4): convert to timer_setup() linuxKPI (cherry picked from commit 814cd919981e98120c3065906092dca2546fdd74) M sys/dev/mlx5/mlx5_core/mlx5_health.c M sys/dev/mlx5/mlx5_ib/mlx5_ib_mr.c _____________________________________________________________________________________________________________ Commit: 1f1f7b638fef98da619d5c25ecf9452fbb9b96c5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1f1f7b638fef98da619d5c25ecf9452fbb9b96c5 Author: Konstantin Belousov (Wed 19 Aug 2026 22:53:55 BST) Committer: Konstantin Belousov (Wed 26 Aug 2026 01:44:10 BST) tests/sys/posixshm/posixshm_test.c::accounting fix after st_size changes (cherry picked from commit a1aa26b7db2c774b1da5eecb5505efd412ea7a23) M tests/sys/posixshm/posixshm_test.c _____________________________________________________________________________________________________________ Commit: 1d9c9fe8344969ea09b90105a0825e8105f4d9a9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1d9c9fe8344969ea09b90105a0825e8105f4d9a9 Author: Konstantin Belousov (Wed 19 Aug 2026 03:27:46 BST) Committer: Konstantin Belousov (Wed 26 Aug 2026 01:44:10 BST) shmfd: consistently return size in 512 byte blocks for fstat(2) st_blocks (cherry picked from commit 3a1bf59d195ced99c0f69774969d7090d21f6097) M lib/libsys/stat.2 M sys/kern/uipc_shm.c _____________________________________________________________________________________________________________ Commit: dbf07219675e9673964160c5e2d25a867ec93e29 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dbf07219675e9673964160c5e2d25a867ec93e29 Author: Kevin Bowling (Wed 12 Aug 2026 01:12:51 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:25:08 BST) iflib: Create led(4) devices When a driver implements ifdi_led_func, have the framework create its led(4) device after attach completes and the ifnet and context locks are released. PR: 246885 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=246885 ) Reported by: jlduran Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D32389 (cherry picked from commit 6591a7f6919295f2ec2b463d1ae9554a8bbf6104) M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: e5db37bd060542d849dc3d975c7c597d7d28f210 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e5db37bd060542d849dc3d975c7c597d7d28f210 Author: Kevin Bowling (Wed 12 Aug 2026 01:12:15 BST) Committer: Kevin Bowling (Wed 26 Aug 2026 01:24:57 BST) iflib: Defer LED control to the device taskqueue led(4) invokes driver callbacks while holding its mutex, including from a callout. iflib_led_func() cannot acquire the sleepable context lock in those contexts without causing a lock-order reversal or sleeping from the callout. Record the latest requested state under the iflib state lock and enqueue the existing per-device taskqueue. The task can safely take the context lock before invoking the driver. Coalescing requests also avoids accumulating stale blink transitions when hardware access is slow. Destroy the LED device before draining its task so no new callback can race driver detach. (cherry picked from commit 952994751911d5d059d53e73eb874e00ee98b9ed) M sys/net/iflib.c _____________________________________________________________________________________________________________ Commit: 5990860ca841fddaef9acbb7e2cbbd372ce10081 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5990860ca841fddaef9acbb7e2cbbd372ce10081 Author: Mark Johnston (Mon 24 Aug 2026 19:15:38 BST) Committer: Mark Johnston (Tue 25 Aug 2026 16:47:13 BST) posixshm: Fix a TOCTOU race in the FIOSSHMLPGCNF handler The check for whether shm_lp_psind was assigned was unlocked. This race can be exploited to create an object with psind==2 but with only pagesizes[1] worth of pages populated. This in turn can be used to escalate privileges. Fix this by acquiring the rangelock earlier. In shm_mmap_large(), assert that we hold the rangelock. In shm_write(), annotate an unlocked load of shm_lp_psind. Approved by: so Security: FreeBSD-SA-26:63.posixshm Security: CVE-2026-58094 Reported by: tsune of GMO Cybersecurity by Ierae, Inc. working with TrendAI Zero Day Initiative Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59104 M sys/kern/uipc_shm.c M sys/sys/mman.h _____________________________________________________________________________________________________________ Commit: c7cec6fa6e4aeca7488130e17f4fd1ad2c476fa0 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c7cec6fa6e4aeca7488130e17f4fd1ad2c476fa0 Author: Mark Johnston (Mon 24 Aug 2026 19:14:18 BST) Committer: Mark Johnston (Tue 25 Aug 2026 16:47:13 BST) tty: Revalidate after dropping the tty lock in ioctl handlers The TIOCSCTTY ioctl handler drops the tty lock in order to acquire the proctree relock. After relocking the tty, it did not revalidate the tty state, and it could end up linking a doomed tty to the calling process' session. This race can be exploited to escalate privileges. TIOCSPGRP has a similar race, fix that too. Approved by: so Security: FreeBSD-SA-26:62.tty Security: CVE-2026-58093 Reported by: tsune of GMO Cybersecurity by Ierae, Inc. working with TrendAI Zero Day Initiative Reviewed by: kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59126 M sys/kern/tty.c _____________________________________________________________________________________________________________ Commit: c5ad29cb6c62fb50164e953ea5ad017350db875c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c5ad29cb6c62fb50164e953ea5ad017350db875c Author: Gordon Tetlow (Mon 24 Aug 2026 23:07:40 BST) Committer: Mark Johnston (Tue 25 Aug 2026 16:47:12 BST) openssl: Fix multiple vulnerabilities This is a rollup commit from upstream to fix: Handle signature_algorithms_cert extension in key-only context Avoid double free of qrx in port_default_packet_handler() Avoid full read buffer allocation when buffering DTLS next-epoch records ssl/record/methods/dtls_meth.c: lower the unprocessed_rcds queue limit ssl/record: remove dead DTLS processed_rcds record queue Fix heap buffer overflow (8-byte OOB write) in AES-WRAP-PAD unwrap CMP unexpected sender DN used as format string in ERR_raise_data() Add test for CVE-2026-63073 Add a test for restricting growth in cmp cert cache Fix unbounded cert cache growth in cmp Don't store ACK-only frames in TX history for QUIC. Add test for CVE-2026-63076 Fix Remote NULL deref in ossl_cmp_calc_protection() via crafted protectionAlg Approved by: so Obtained from: OpenSSL Security: FreeBSD-SA-26:61.openssl Security: CVE-2026-14457 Security: CVE-2026-18798 Security: CVE-2026-54874 Security: CVE-2026-63072 Security: CVE-2026-63073 Security: CVE-2026-63074 Security: CVE-2026-63076 M crypto/openssl/crypto/cmp/cmp_protect.c M crypto/openssl/crypto/cmp/cmp_vfy.c M crypto/openssl/crypto/cms/cms_kari.c M crypto/openssl/include/internal/quic_ackm.h M crypto/openssl/include/internal/quic_record_rx.h M crypto/openssl/ssl/quic/quic_ackm.c M crypto/openssl/ssl/quic/quic_port.c M crypto/openssl/ssl/quic/quic_record_rx.c M crypto/openssl/ssl/quic/quic_txp.c M crypto/openssl/ssl/record/methods/dtls_meth.c M crypto/openssl/ssl/record/methods/recmethod_local.h M crypto/openssl/ssl/t1_lib.c M crypto/openssl/test/build.info A crypto/openssl/test/cmp_extracerts_dos_test.c M crypto/openssl/test/cmp_protect_test.c M crypto/openssl/test/cmp_vfy_test.c M crypto/openssl/test/recipes/65-test_cmp_msg.t M crypto/openssl/test/rpktest.c _____________________________________________________________________________________________________________ Commit: ae27dff4710b87f25a909e008cdbe822b5b61667 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ae27dff4710b87f25a909e008cdbe822b5b61667 Author: Mark Johnston (Mon 24 Aug 2026 19:13:29 BST) Committer: Mark Johnston (Tue 25 Aug 2026 16:47:12 BST) cred: Fix group_is_primary() This helper wasn't updated in commit be1f7435ef21, so in reality it was testing whether "gid" is the first supplemental group. If a user doesn't belong to a supplementary group, then it's testing an uninitialized slot; since ucreds are allocated with M_ZERO, this typically means that we're testing gid == 0. group_is_primary() has exactly one use, in mac_do. There, it's used to determine whether to keep the caller's current primary groups. This means that a rule such as gid=0>uid=0 will permit any credential with no supplementary groups. I believe this is mostly exploitable by daemons which have explicitly dropped privileges and called setgroups(0, NULL); logged in users will have a non-empty supplementary group list by virtue of having gone through initgroups(3). Fix group_is_primary(), and add a regression test. Approved by: so Security: FreeBSD-SA-26:59.mac_do Security: CVE-2026-58092 Reported by: Hazley Samsudin of GovTech CSG Fixes: be1f7435ef21 ("kern: start tracking cr_gid outside of cr_groups[]") Reviewed by: olce, kevans Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59051 M sys/sys/ucred.h M tests/sys/mac/do/Makefile A tests/sys/mac/do/regression.c _____________________________________________________________________________________________________________ Commit: edff72e5f64cc04ae41a9da6336d0ec7779e48df URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=edff72e5f64cc04ae41a9da6336d0ec7779e48df Author: Mark Johnston (Mon 24 Aug 2026 16:20:32 BST) Committer: Mark Johnston (Tue 25 Aug 2026 16:47:12 BST) dsp: Fix a potential use-after-free in dsp_oss_syncstart() This function has a loop where it attempts to lock all channels in a group. If doing so would block, it releases all locks, sleeps for a bit, and tries again. However, once the syncgroup lock is dropped, nothing prevents the syncgroup structure from being freed. Fix the inner loop: after waking up, break out of it unconditionally and start everything again. I think the old code was also buggy and not well-exercised: after waking up we'd continue to try and continue locking channels. Then we'd try again from the beginning and fail to lock the channels we had already locked. Approved by: so Security: FreeBSD-SA-26:58.sound Security: CVE-2026-58091 Reported by: Hazley Samsudin of GovTech CSG Reviewed by: christos Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58912 M sys/dev/sound/pcm/channel.h M sys/dev/sound/pcm/dsp.c _____________________________________________________________________________________________________________ Commit: 87bb4aa63ac789dd2821753f04bae5c768f343df URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=87bb4aa63ac789dd2821753f04bae5c768f343df Author: Mark Johnston (Mon 24 Aug 2026 15:57:16 BST) Committer: Mark Johnston (Tue 25 Aug 2026 16:47:12 BST) hwpmc: Fix the execve handler When a process execve()s, pmc_process_exec() is supposed to evaluate whether the new image is setuid/setgid and if so, whether to detach PMCs. This was handled by pmc_can_attach(), which is effectively an open-coded copy of cr_xids_subset(). Unfortunately, the test of the result of this function was inverted, with the result that we'd detach PMCs only if the predicate said it was okay to do so. It appears the bug has always been there; it seems the intent was to return 0 on "success", i.e., it is okay to attach the PMCs, much like p_candebug(). Commits 1c3c698ba4c4 and 1c40b15971f0 obscured this a bit. I think this check is trying to be too clever. Let's make it simpler: simply do not attach PMCs unless the owner is privileged. This is how, e.g., ktrace works. I do not think it's worth trying to be more sophisticated than this unless we can generalize the policy in a way that's applicable to other subsystems. Also fix a bug at the end of pmc_process_exec(): pmc_detach_one_process() will call pmc_remove_process_descriptor() for us. Approved by: so Security: FreeBSD-SA-26:56.hwpmc Security: CVE-2026-58089 Reported by: netchild Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59102 M sys/dev/hwpmc/hwpmc_mod.c M sys/kern/kern_exec.c _____________________________________________________________________________________________________________ Commit: dde735f47495a29458b9c9a2ba2fa7a213bccf78 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dde735f47495a29458b9c9a2ba2fa7a213bccf78 Author: Christos Margiolis (Thu 23 Jul 2026 14:48:09 BST) Committer: Christos Margiolis (Tue 25 Aug 2026 12:55:21 BST) snd_uaudio: Define USB IDs in usbdevs No functional change intended. Sponsored by: The FreeBSD Foundation MFC after: 2 weeks (cherry picked from commit 3e67b90c55b44579c2f73c2fbdeac54087c7495f) M sys/dev/sound/usb/uaudio.c M sys/dev/usb/usbdevs _____________________________________________________________________________________________________________ Commit: ba00f716c1be82937507eec13b96cb8752d9b940 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ba00f716c1be82937507eec13b96cb8752d9b940 Author: Christos Margiolis (Thu 23 Jul 2026 22:54:46 BST) Committer: Christos Margiolis (Tue 25 Aug 2026 12:55:21 BST) sound: Retire sndcard_func sndcard_func is used as an ivar which passes around device info to the PCM and MIDI children in snd_csa(4) and snd_emu10kx(4). Simplify this and retire the need for sndcard_func, by 1) making an ivar only what used to be stored in sndcard_func->varinfo, 2) replacing sndcard_func->func with a child comparison, where needed, for instance in csa_detach(). sndcard_func is harmless in reality, but there is no reason to have the additional complexity. This way we also avoid the structure allocations. Sponsored by: The FreeBSD Foundation MFC after: 2 weeks (cherry picked from commit a753ca9c3f0644611e7dfb453af61896fed6c897) M sys/dev/sound/pci/csa.c M sys/dev/sound/pci/csamidi.c M sys/dev/sound/pci/csapcm.c M sys/dev/sound/pci/emu10kx-midi.c M sys/dev/sound/pci/emu10kx-pcm.c M sys/dev/sound/pci/emu10kx.c M sys/dev/sound/pci/emu10kx.h M sys/dev/sound/pcm/sound.h _____________________________________________________________________________________________________________ Commit: ac4c533936682cf8589da226db4d6bc0fb14bd6c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ac4c533936682cf8589da226db4d6bc0fb14bd6c Author: Martin Matuska (Tue 25 Aug 2026 10:57:08 BST) Committer: Martin Matuska (Tue 25 Aug 2026 10:57:08 BST) zfs: fix mismerge from 2c00a421637 D sys/module/zfs/zfs_config.h D sys/module/zfs/zfs_gitrev.h M sys/modules/zfs/zfs_config.h M sys/modules/zfs/zfs_gitrev.h _____________________________________________________________________________________________________________ Commit: 2c00a4216378d1c7d21cb983d1621a159c755c27 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2c00a4216378d1c7d21cb983d1621a159c755c27 Merge: af0e83d9acaa 71a9f9578616 Author: Martin Matuska (Tue 25 Aug 2026 08:55:56 BST) Committer: Martin Matuska (Tue 25 Aug 2026 08:56:48 BST) zfs: merge openzfs/zfs@71a9f9578 OpenZFS 2.4.4 Notable upstream pull request merges: #18544 eb4199c6a zio_ddt_write: compute have_dvas after taking dde_io_lock #18573 0da2e6b39 Update mtime/ctime when fallocate grows a file #18611 b021ebcdc zfs_ioctl: fix EBUSY race between quota queries and mount #18652 027940e0b zbookmark_compare: handle "marker" bookmarks with negative levels #18657 14ff1853c Fix race between device removal completion and pool export #18673 -multiple delegate: add send:encrypted permission #18688 5f84f4d81 Fix handling of _PC_HAS_HIDDENSYSTEM for FreeBSD #18693 7e8f6ad78 Clean up embedded slog metaslab across txgs #18706 5e8780ff9 ddt_log: Fix refcount tagging for begin/commit #18713 a2c02072f libzfs: fix MS_CRYPT/MS_OVERLAY collision with umount2(2) flags #18720 09a876a38 Fix insufficient locking in dedup verify #18724 a6f557c2c Fix reads for blocks freed after being cloned #18738 b4411799b Fix receive -x according to comment #18749 47f32602d Fix receive of split large blocks with a short trailing chunk #18795 d6bbb80ae Rate limit Direct I/O verify zevents #18802 f5330ea34 libzfs: fallback VDEV_UPATH to VDEV_PATH for non-DMxi devices #18822 292c190b8 libspl: Implement VERIFY_IMPLY and VERIFY_EQUIV #18827 36a398de2 L2ARC: bound the rebuild by the write hand on a first sweep #18833 a052ffc64 zed: let autoexpand see capacity changes on partitioned disks #18835 9623afdb9 mmp: skip non-writeable vdevs during activity check #18838 fee680504 DDT: Fix several bugs in pruning #18840 eb808b3f4 arc: add a few invariant checks in release builds #18841 cc010bbc3 zpool export: return EBUSY when zvol minors are in use #18848 5f9bea114 dmu_recv: Avoid potential null deref #18855 9683c86c4 mmp: do not require writes to mirror legs the config marks absent #18865 51421b0ef Fix DMU bonus hold leak on I/O error #18867 49086325b Add missing checks to zfs_clone_range_replay() #18868 223361144 libzfs: String trimming should not operate out of bounds #18869 17834383e libzfs: Do not call munmap() when mmap() fails #18871 bcf2999db libzfs: don't truncate a resolved vdev path in zpool_vdev_name() #18874 02861fdeb nvpair: Fix operator precedence #18876 ec565e143 nvpair: Improve native handling of unterminated strings #18877 88c5af639 nvpair: i_get_value_size() string array handling tweak #18883 8be87df61 libzfs: don't read a dataset handle after closing it in resume send #18886 c714cc5a3 Fix negative time overflows in DDT pruning #18892 -multiple zhack: add "mmp reclaim" to recover a pool stranded by MMP #18899 9926f72b8 CodeQL: Flag implicit compare-then-assign in branch conditions Obtained from: OpenZFS OpenZFS commit: 71a9f9578616a90c3c14bb59629fb4d31bfd68d1 OpenZFS tag: zfs-2.4.4 _____________________________________________________________________________________________________________ Commit: af0e83d9acaa24b51de507d5b01991cf7713783c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=af0e83d9acaa24b51de507d5b01991cf7713783c Author: Kirk McKusick (Mon 17 Aug 2026 20:15:09 BST) Committer: Kirk McKusick (Tue 25 Aug 2026 03:39:33 BST) Fix transposed arguments in call to calloc(). Reported by GCC 15 warning. No functional change intended. Submitted by: Pedro Giffuni (cherry picked from commit 2cefae4cf34e7d39fc3b27358d7d66a96b3b0056) M sbin/restore/symtab.c _____________________________________________________________________________________________________________ Commit: 0bc69050e40ea18c00a59687e5be14adb4d8b920 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0bc69050e40ea18c00a59687e5be14adb4d8b920 Author: Kevin Bowling (Tue 21 Jul 2026 04:31:57 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:33:01 BST) snd_hdspe: Avoid allocation in the interrupt handler Cache PCM children and drain interrupt callbacks before detach. Allocate the parent softc by its actual size. Reviewed by: br Differential Revision: https://reviews.freebsd.org/D58370 (cherry picked from commit 4c1004c00ff250f2a9e5bff5ae90c25d6b70feb3) M sys/dev/sound/pci/hdspe-pcm.c M sys/dev/sound/pci/hdspe.c M sys/dev/sound/pci/hdspe.h _____________________________________________________________________________________________________________ Commit: b5f46655e0cebb41d67178398707cebf338060ed URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b5f46655e0cebb41d67178398707cebf338060ed Author: Kevin Bowling (Tue 11 Aug 2026 20:41:07 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:30:56 BST) ixgbe: Avoid a signed shift while assembling the PHY ID The PHY identifier word is promoted to signed int when the cast is applied after the shift. Cast the 16-bit register value first so identifiers with their high bit set are assembled as unsigned data. (cherry picked from commit f4bf1da7bac80cbe3ec862f395c22a3c5d176312) M sys/dev/ixgbe/ixgbe_phy.c _____________________________________________________________________________________________________________ Commit: 4cfa05889cf006fcbe8e4081537bf6834a6e6dd5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4cfa05889cf006fcbe8e4081537bf6834a6e6dd5 Author: Kevin Bowling (Tue 11 Aug 2026 20:40:56 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:30:46 BST) igc: Avoid a signed shift while assembling the PHY ID The PHY identifier word is promoted to signed int when the cast is applied after the shift. Cast the 16-bit register value first so identifiers with their high bit set are assembled as unsigned data. (cherry picked from commit f5fd839fe688181e57171850ce51e4dec71e62fd) M sys/dev/igc/igc_phy.c _____________________________________________________________________________________________________________ Commit: 2a21a77a21134bcefeb35fc4d4b32532369ca65f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2a21a77a21134bcefeb35fc4d4b32532369ca65f Author: Kevin Bowling (Tue 11 Aug 2026 20:40:48 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:30:36 BST) e1000: Avoid signed shifts while assembling PHY IDs PHY identifier words are promoted to signed int when the cast is applied after the shift. Cast each 16-bit register value first so identifiers with their high bit set are assembled as unsigned data. (cherry picked from commit 13a7470096567480676e24545b3c1d6404f3f2ec) M sys/dev/e1000/e1000_82571.c M sys/dev/e1000/e1000_ich8lan.c M sys/dev/e1000/e1000_phy.c _____________________________________________________________________________________________________________ Commit: 89587517933f37a89d01f647222b33a2497546d4 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=89587517933f37a89d01f647222b33a2497546d4 Author: Kevin Bowling (Tue 11 Aug 2026 20:39:52 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:30:19 BST) igc: Export EEE Low Power Idle counters The driver already accumulates the clear-on-read transmit and receive LPI event counters. Expose the 64-bit totals under the per-device eee sysctl node. (cherry picked from commit 13d78e4b9d0a27128319a1241f00f7ab9aa864bb) M sys/dev/igc/if_igc.c _____________________________________________________________________________________________________________ Commit: 0278a71ccd7f26c67a941b46fbf51ae6d9f71474 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0278a71ccd7f26c67a941b46fbf51ae6d9f71474 Author: Kevin Bowling (Tue 11 Aug 2026 20:36:33 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:30:10 BST) ixl: Avoid a signed PHY capability shift The PHY capability display examines all 32 bits of the firmware bitmap. Use an unsigned value so examining bit 31 does not shift a signed integer into its sign bit. (cherry picked from commit f7427f890c7f34d0842a35eb9df814adad11a95a) M sys/dev/ixl/ixl_pf_main.c _____________________________________________________________________________________________________________ Commit: 07deb662c395e99412b5bb034956b2f529aae6c1 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=07deb662c395e99412b5bb034956b2f529aae6c1 Author: Kevin Bowling (Tue 11 Aug 2026 20:36:20 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:29:59 BST) e1000: Avoid a signed manageability VLAN bitmap shift A manageability VLAN can select bit 31 of its VFTA register. Use an unsigned value when constructing the register mask. (cherry picked from commit 392fbdcf2232f12cb973d00ae931740c72d970c6) M sys/dev/e1000/e1000_82571.c _____________________________________________________________________________________________________________ Commit: 43c32e31aa58c57ab50e7cde187c320d90a45a3e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=43c32e31aa58c57ab50e7cde187c320d90a45a3e Author: Kevin Bowling (Tue 11 Aug 2026 20:36:08 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:29:47 BST) ixgbe: Use unsigned register bitmap shifts VLAN, VMDq, and VF reset bit indices can reach 31. Use unsigned values when constructing their 32-bit register masks so the shifts do not operate on signed integers. (cherry picked from commit bf6feffef6c16559333048859b24547acea3dba5) M sys/dev/ixgbe/ixgbe_82598.c M sys/dev/ixgbe/ixgbe_common.c M sys/dev/ixgbe/ixgbe_mbx.c _____________________________________________________________________________________________________________ Commit: 2f2829310aba4530abbcc3e3f9f519fdb86b456c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2f2829310aba4530abbcc3e3f9f519fdb86b456c Author: Kevin Bowling (Tue 11 Aug 2026 20:34:50 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:29:36 BST) ixgbe: Avoid signed overflow in LED register masks LED index three shifts the blink bit into bit 31. Convert the base to the register width before shifting so the operation is unsigned. This is the ixgbe counterpart of the e1000 correction imported from DPDK commit 214cb0d7f1. (cherry picked from commit bbdd3c4692e2869817f77c359b4a2719e716921d) M sys/dev/ixgbe/ixgbe_type.h _____________________________________________________________________________________________________________ Commit: 5a7f59d3b8646680c5c871219497bd30854ab828 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=5a7f59d3b8646680c5c871219497bd30854ab828 Author: Kevin Bowling (Tue 11 Aug 2026 20:34:40 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:29:26 BST) ixgbe: Avoid a signed shift while assembling the PBA number The EEPROM word is promoted to signed int before the left shift when the cast is applied to the complete expression. Cast the word first so all 16-bit values are shifted as unsigned data. This is the ixgbe counterpart of the e1000 correction imported from DPDK commit b932270c66. (cherry picked from commit baa6e3af8525244e65a404fa13306fbca7feae9c) M sys/dev/ixgbe/ixgbe_common.c _____________________________________________________________________________________________________________ Commit: 2c545fcf56dbacec8597fae9b59b2fc5e3ccb3cd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2c545fcf56dbacec8597fae9b59b2fc5e3ccb3cd Author: Kevin Bowling (Tue 11 Aug 2026 20:34:29 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:29:16 BST) igc: Check PHY control register reads Do not modify a zero-initialized PHY control value when its preceding read failed. Leave the PHY unchanged when the void power helpers cannot read its current state. This follows the defensive checks added to the corresponding e1000 helpers. (cherry picked from commit 1121aaa0758baf04bed6f16d4157116b49c25000) M sys/dev/igc/igc_phy.c _____________________________________________________________________________________________________________ Commit: 360982b04b72b12bef0b74ecdc93a6687518f02d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=360982b04b72b12bef0b74ecdc93a6687518f02d Author: Barbara Skobiej (Tue 11 Aug 2026 20:34:13 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:29:05 BST) igc: fix data type in MAC hash DPDK commit message net/e1000/base: fix data type in MAC hash One of the bit shifts in MAC hash calculation triggers a static analysis warning about a potential overflow. Fix the data type to avoid this. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Barbara Skobiej Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (458734aaac) (cherry picked from commit 3fc1786aa2a3f590453abb6ea2351a12e19f6b45) M sys/dev/igc/igc_mac.c _____________________________________________________________________________________________________________ Commit: fdfece486292a728394371c25b747129c379c055 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=fdfece486292a728394371c25b747129c379c055 Author: Aleksandr Loktionov (Tue 11 Aug 2026 20:34:01 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:28:54 BST) igc: fix MAC address hash bit shift DPDK commit message net/e1000/base: fix MAC address hash bit shift In e1000_hash_mc_addr_generic() the expression: "mc_addr[4] >> 8 - bit_shift", right shifting "mc_addr[4]" shift by more than 7 bits always yields zero, so hash becomes not so different. Add initialization with bit_shift = 1, and add a loop condition to ensure bit_shift will be always in [1..8] range. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Aleksandr Loktionov Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (1749e662f6) (cherry picked from commit cba56bc3427db0bb4efc3d0117cda4bdc7717f98) M sys/dev/igc/igc_mac.c _____________________________________________________________________________________________________________ Commit: df83413be3288c0c6b7d9be95f47933d2807204f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=df83413be3288c0c6b7d9be95f47933d2807204f Author: Amir Avivi (Tue 11 Aug 2026 20:33:49 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:28:44 BST) igc: fix iterator type DPDK commit message net/e1000/base: fix iterator type Fix static analysis warning about comparison between types of incompatible width, which might lead to an infinite loop due to overflow. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Amir Avivi Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (3d36053991) (cherry picked from commit 5587cb18b168f57a4d68c7e58ec660ab2a5ce4da) M sys/dev/igc/igc_phy.c _____________________________________________________________________________________________________________ Commit: cce182c3b634daedb5d70842b732ddaff703ed62 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cce182c3b634daedb5d70842b732ddaff703ed62 Author: Kevin Bowling (Tue 11 Aug 2026 20:27:45 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:28:34 BST) ixgbe: Avoid a signed multicast bitmap shift The multicast vector bit can be 31. Use an unsigned value so setting the bit cannot shift a signed integer into its sign bit. (cherry picked from commit 8704d29c6cc86f0780dff3d3d17d744106776ad3) M sys/dev/ixgbe/ixgbe_common.c _____________________________________________________________________________________________________________ Commit: c1d2260a3e8caddf2a61567465f39a57d29ee6fc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c1d2260a3e8caddf2a61567465f39a57d29ee6fc Author: Kevin Bowling (Tue 11 Aug 2026 20:27:35 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:28:23 BST) igc: Avoid a signed multicast bitmap shift The multicast hash bit can be 31. Use an unsigned value so setting the bit cannot shift a signed integer into its sign bit. (cherry picked from commit 275ca86f6abffc4ee6e52a6daab06f5e5c21aa05) M sys/dev/igc/igc_mac.c _____________________________________________________________________________________________________________ Commit: daf690aca8421d14bc589d0b5b23f78ebd7a21e8 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=daf690aca8421d14bc589d0b5b23f78ebd7a21e8 Author: Kevin Bowling (Tue 11 Aug 2026 18:38:39 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:28:13 BST) e1000: Preserve errors while disabling D0 LPLU Return a PHY write failure immediately when disabling D0 low-power link-up on 82571-family controllers. (cherry picked from commit b1da641d23a95c4e7f61b7a546938ec8fceb47e7) M sys/dev/e1000/e1000_82571.c _____________________________________________________________________________________________________________ Commit: f86489cec3da08c753fa6c75be3749fe5bffb5ae URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=f86489cec3da08c753fa6c75be3749fe5bffb5ae Author: Kevin Bowling (Tue 11 Aug 2026 18:35:43 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:27:43 BST) e1000: Verify i210 and i211 multicast table writes The i210 and i211 can occasionally fail to accept multicast table writes, particularly while addresses are added and removed rapidly. Read the table back and rewrite mismatches for up to three passes. This prevents multicast reception from retaining stale filter state while keeping the workaround limited to the affected controllers. (cherry picked from commit bb8d0944b5d53863f00492b69b7bf13d2618fc95) M sys/dev/e1000/e1000_mac.c _____________________________________________________________________________________________________________ Commit: 0b59bbcd52dacdc7c4aeb0f29ef400f8e854b8a3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0b59bbcd52dacdc7c4aeb0f29ef400f8e854b8a3 Author: Kevin Bowling (Tue 11 Aug 2026 20:00:51 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:27:26 BST) e1000: Avoid a signed multicast bitmap shift The multicast hash bit can be 31. Use an unsigned value so setting the bit cannot shift a signed integer into its sign bit. (cherry picked from commit a86d65b2c99bab3fe46389b3b51ad27956dccfe9) M sys/dev/e1000/e1000_mac.c _____________________________________________________________________________________________________________ Commit: 4b1469832d8ba3d2d6b47be4c543e41610c6322d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4b1469832d8ba3d2d6b47be4c543e41610c6322d Author: Barbara Skobiej (Thu 6 Feb 2025 16:08:41 GMT) Committer: Kevin Bowling (Tue 25 Aug 2026 01:27:15 BST) e1000: fix data type in MAC hash DPDK commit message net/e1000/base: fix data type in MAC hash One of the bit shifts in MAC hash calculation triggers a static analysis warning about a potential overflow. Fix the data type to avoid this. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Barbara Skobiej Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (458734aaac) (cherry picked from commit a09034d561cbb3792ecc0146b41d4794ab3bda37) M sys/dev/e1000/e1000_mac.c M sys/dev/e1000/e1000_vf.c _____________________________________________________________________________________________________________ Commit: 6b1f636ccceb262439f65157d18b87bcd16c7800 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6b1f636ccceb262439f65157d18b87bcd16c7800 Author: Aleksandr Loktionov (Thu 6 Feb 2025 16:08:40 GMT) Committer: Kevin Bowling (Tue 25 Aug 2026 01:27:04 BST) e1000: fix MAC address hash bit shift DPDK commit message net/e1000/base: fix MAC address hash bit shift In e1000_hash_mc_addr_generic() the expression: "mc_addr[4] >> 8 - bit_shift", right shifting "mc_addr[4]" shift by more than 7 bits always yields zero, so hash becomes not so different. Add initialization with bit_shift = 1, and add a loop condition to ensure bit_shift will be always in [1..8] range. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Aleksandr Loktionov Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (1749e662f6) (cherry picked from commit e7ffea395ee8add21b2cce0806285131e12cc454) M sys/dev/e1000/e1000_mac.c M sys/dev/e1000/e1000_vf.c _____________________________________________________________________________________________________________ Commit: 6210ca3bd0d5eb5b6262df7173779361181af8e2 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6210ca3bd0d5eb5b6262df7173779361181af8e2 Author: Barbara Skobiej (Thu 6 Feb 2025 16:08:45 GMT) Committer: Kevin Bowling (Tue 25 Aug 2026 01:26:51 BST) e1000: fix reset for 82580 DPDK commit message net/e1000/base: fix reset for 82580 Fix setting device reset status bit in e1000_reset_hw_82580() function for 82580 by first reading the register value, and then setting the device reset bit. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Barbara Skobiej Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (88a1eb79ef) (cherry picked from commit 53e4711616041a668ab61f2ce86c9fa139ab67a9) M sys/dev/e1000/e1000_82575.c _____________________________________________________________________________________________________________ Commit: 9f5503e6410fcc165b9acf55a7cd7e3633c3a8cc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9f5503e6410fcc165b9acf55a7cd7e3633c3a8cc Author: Kevin Bowling (Tue 11 Aug 2026 19:59:19 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:26:33 BST) e1000: Export EEE Low Power Idle counters Accumulate the clear-on-read transmit and receive LPI event counters on EEE capable PCH and I350 family devices. Expose the 64-bit totals under the per-device eee sysctl node. (cherry picked from commit eff55e5e098b85855335d8df151787b6b034973f) M sys/dev/e1000/if_em.c _____________________________________________________________________________________________________________ Commit: 32694407f83257522213a66686126687a9a89a56 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=32694407f83257522213a66686126687a9a89a56 Author: Sasha Neftin (Fri 7 Feb 2025 12:45:14 GMT) Committer: Kevin Bowling (Tue 25 Aug 2026 01:26:20 BST) e1000: add LPI counters DPDK commit message net/e1000/base: add LPI counters Add new fields in structure to indicate if EEE LPI entries have been observed on Tx and Rx path. Signed-off-by: Sasha Neftin Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (2e8078ee69) (cherry picked from commit d1c20195c0fae27b6b1d526c03d8844f200e5c86) M sys/dev/e1000/e1000_hw.h M sys/dev/e1000/e1000_mac.c _____________________________________________________________________________________________________________ Commit: c31056c7f90f22d61ed4f88c6c387a2b5137fd53 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c31056c7f90f22d61ed4f88c6c387a2b5137fd53 Author: Dima Ruinskiy (Thu 6 Feb 2025 16:08:46 GMT) Committer: Kevin Bowling (Tue 25 Aug 2026 01:25:41 BST) e1000: fix unchecked return DPDK commit message net/e1000/base: fix unchecked return Static analysis has detected a write that is not checked for errors, leading to ignored error return value. Add a check. Fixes: edcdb3c5f71b ("e1000/base: fix link flap on 82579") Cc: stable@dpdk.org Signed-off-by: Dima Ruinskiy Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (b0b6b50c20) (cherry picked from commit c80aface0f4662c7dc46eed3fbb27b64ab931500) M sys/dev/e1000/e1000_ich8lan.c _____________________________________________________________________________________________________________ Commit: a8a7f8d148b520d5998563dc19f75145ccedfd55 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a8a7f8d148b520d5998563dc19f75145ccedfd55 Author: Kevin Bowling (Tue 11 Aug 2026 17:19:25 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:25:31 BST) e1000: Check PHY control register reads Do not modify a zero-initialized PHY control value when its preceding read failed. (cherry picked from commit c276a80a4e52c065ed631e498ed2c3d284b45c75) M sys/dev/e1000/e1000_phy.c _____________________________________________________________________________________________________________ Commit: a603d5679b60684e586822eb6b35015a6b13374c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a603d5679b60684e586822eb6b35015a6b13374c Author: Kevin Bowling (Tue 11 Aug 2026 17:19:02 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:25:20 BST) e1000: Allow more time for PCH ULP exit Firmware may take up to one second to unconfigure ULP, and affected Lenovo systems have required nearly two seconds. Allow 2.5 seconds before treating the transition as a PHY failure. This extends DPDK commit 7aa4c34581a5 using the field-tested bound from Linux commit 3cf31b1a9eff. (cherry picked from commit e49cb7f757f6db8976b0d247e6a897eab5867634) M sys/dev/e1000/e1000_ich8lan.c _____________________________________________________________________________________________________________ Commit: 93a2e498c1f4db38a6fe2dd1660999c00233beac URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=93a2e498c1f4db38a6fe2dd1660999c00233beac Author: Kevin Bowling (Tue 11 Aug 2026 17:18:33 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:25:10 BST) e1000: Compare decoded PCH LTR latencies The LTR encoding combines a value and a nonlinear scale, so encoded values cannot be compared directly. Decode both the device latency and the platform maximum before deciding whether to clamp the request. (cherry picked from commit 6058dfa40238e2cd6ac6f2377986fdff99d14686) M sys/dev/e1000/e1000_ich8lan.c _____________________________________________________________________________________________________________ Commit: 15d31c10a72d9cb79e7d9f0a83b64c02d4701e73 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=15d31c10a72d9cb79e7d9f0a83b64c02d4701e73 Author: Kevin Bowling (Tue 11 Aug 2026 17:18:06 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:24:59 BST) e1000: Reconfigure modern PCH K1 clock synchronization Meteor Lake and newer PCH generations can lose packets while the MAC and PHY clocks synchronize. Move K1 power-down to P1 and extend the PHY K1 exit timeout before PHY access and after reset. Use the longer 1 Gb/s PLL clock-gate timeout added by Linux so K1 can remain enabled without the power penalty of disabling it. Apply the workaround through the newer PTP and NVP generations. This follows DPDK commits ba54bdc79d94 and d88ef2356ecc, with the longer exit time observed in Linux 578294b8b60d. (cherry picked from commit 17d90d5b9350239a87e66a3612cb9b084b2d75e9) M sys/dev/e1000/e1000_ich8lan.c M sys/dev/e1000/e1000_ich8lan.h _____________________________________________________________________________________________________________ Commit: 01b8155b8c39d267fa56d52b1113e848a653ead5 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=01b8155b8c39d267fa56d52b1113e848a653ead5 Author: Kevin Bowling (Tue 11 Aug 2026 17:15:28 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:24:49 BST) e1000: Retry transient MDIC failures on modern PCH Some Meteor Lake and newer systems sporadically fail an MDIC PHY transaction while the MAC and PHY clocks synchronize. Retry twice before reporting the transaction failure. Disable retries around PHY interface transitions where an MDI error is expected. Preserve and restore the configured retry count on every exit from those flows. This follows DPDK commit bdca22d62ff0, extended to the PTP and NVP PCH types. (cherry picked from commit df34ccfc913d6635e957c685d7452a05911eab89) M sys/dev/e1000/e1000_hw.h M sys/dev/e1000/e1000_ich8lan.c M sys/dev/e1000/e1000_phy.c M sys/dev/e1000/e1000_phy.h _____________________________________________________________________________________________________________ Commit: 6a31198b682bafca9d67743627dba55014832d88 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6a31198b682bafca9d67743627dba55014832d88 Author: Pawel Malinowski (Thu 6 Feb 2025 16:08:37 GMT) Committer: Kevin Bowling (Tue 25 Aug 2026 01:24:37 BST) e1000: fix semaphore timeout value DPDK commit message net/e1000/base: fix semaphore timeout value According to datasheet, software ownership of SWSM.SWESMBI bit should not exceed 100ms. Current implementation caused incorrect timeout counter values, where each iteration equals 50us delay. Because of that driver was allowed to wait for semaphore even for 1.5s. This might trigger DPC timeout. This implementation hardcodes value to 2000, which multiplied by 50us, gives 100ms of possible wait time. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Pawel Malinowski Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (c8bcaf0f2a) (cherry picked from commit ea2e8b056b455e92830bd1bae56b4d72a42018c3) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/e1000_mac.c _____________________________________________________________________________________________________________ Commit: 4e0d9b6aff65ddb42eb397c6078b083fdd689e7b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4e0d9b6aff65ddb42eb397c6078b083fdd689e7b Author: Kevin Bowling (Tue 11 Aug 2026 19:58:17 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:24:24 BST) e1000: Separate hardware semaphore policies by family The shared semaphore helper accesses both the 82571 retry counter and the I210 one-time-clear flag. Those fields occupy overlapping members of the device-specific union. On 82571, incrementing the counter thus enables the I210 recovery and clears SMBI after the first timeout. Give 82571, generic 80003/82575, and I210/I211 users distinct acquire paths. Preserve the legacy peer-driver policy on 82571 and one-time recovery on I210. The separation follows the Intel e1000 base code in DPDK. (cherry picked from commit 26251926892585e0746c2b65227e56cf9b2fed58) M sys/dev/e1000/e1000_82571.c M sys/dev/e1000/e1000_82575.c M sys/dev/e1000/e1000_i210.c M sys/dev/e1000/e1000_i210.h M sys/dev/e1000/e1000_mac.c M sys/dev/e1000/e1000_mac.h _____________________________________________________________________________________________________________ Commit: 2902ca80121f6c679192d46b1b3a66df22b9811e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=2902ca80121f6c679192d46b1b3a66df22b9811e Author: Kevin Bowling (Tue 11 Aug 2026 19:57:52 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:24:14 BST) e1000: Accept uninitialized Tiger Lake NVM checksums Some transitional Tiger Lake systems shipped with an uninitialized checksum word. Accept that state while continuing to validate newer read-only NVM images. (cherry picked from commit ccb8ad1f645eb77d393eb81ff1b86b213b74bc87) M sys/dev/e1000/e1000_defines.h M sys/dev/e1000/e1000_nvm.c _____________________________________________________________________________________________________________ Commit: d94f3e16141e830a51aff73cf21310e34b7f763c URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=d94f3e16141e830a51aff73cf21310e34b7f763c Author: Sasha Neftin (Fri 7 Feb 2025 12:45:22 GMT) Committer: Kevin Bowling (Tue 25 Aug 2026 01:23:59 BST) e1000: improve NVM checksum handling DPDK commit message net/e1000/base: improve NVM checksum handling When reading NVM checksum, we may encounter the following scenarios: - Checksum may be invalid, and can be updated - Checksum may be invalid but cannot be updated because NVM is read-only For the latter case, we should just ignore invalid checksum and not attempt to update it. Signed-off-by: Sasha Neftin Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (5241c17f0d) (cherry picked from commit 8e8755e011955d12abab7c2be324429cccf0b975) M sys/dev/e1000/e1000_ich8lan.c _____________________________________________________________________________________________________________ Commit: 4ac5410914dcfc9d6c7d5a7a4fa2e5e8d6a81e1f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4ac5410914dcfc9d6c7d5a7a4fa2e5e8d6a81e1f Author: Menachem Fogel (Wed 20 May 2026 13:52:44 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:23:48 BST) e1000: fix NVM loop bounds and pointer access DPDK commit message net/e1000/base: fix NVM loop bounds and pointer access Improve the NVM checksum routines by ensuring loop bounds are compared at the correct integer width. Use array indexing instead of explicit pointer arithmetic. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Menachem Fogel Signed-off-by: Dima Ruinskiy Signed-off-by: Ciara Loftus Acked-by: Bruce Richardson Obtained from: DPDK (39fba42d04) (cherry picked from commit 0fc30789dff08d62c5c830e9aa8c5a0ca9080ad9) M sys/dev/e1000/e1000_82575.c M sys/dev/e1000/e1000_manage.c _____________________________________________________________________________________________________________ Commit: cd5aa46a92b67aafff4b1cc8f22e5b92d7765e09 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=cd5aa46a92b67aafff4b1cc8f22e5b92d7765e09 Author: Lukasz Czapnik (Wed 20 May 2026 13:52:40 BST) Committer: Kevin Bowling (Tue 25 Aug 2026 01:23:37 BST) e1000: fix possible variable overflow DPDK commit message net/e1000/base: fix possible variable overflow Bits can be lost as temporary math is done on signed variables and the result is assigned to an unsigned variable. Cast to u32 to force the compiler to do operations on unsigned temporary variables. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Lukasz Czapnik Signed-off-by: Ciara Loftus Acked-by: Bruce Richardson Obtained from: DPDK (214cb0d7f1) (cherry picked from commit b3bdffd7a428e43934772850966a3f80638c666f) M sys/dev/e1000/e1000_mac.c _____________________________________________________________________________________________________________ Commit: e7731d8f155e9329f2f4862701037f7ca7a44876 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e7731d8f155e9329f2f4862701037f7ca7a44876 Author: Przemyslaw Ciesielski (Thu 6 Feb 2025 16:08:44 GMT) Committer: Kevin Bowling (Tue 25 Aug 2026 01:23:27 BST) e1000: fix NVM data type in bit shift DPDK commit message net/e1000/base: fix NVM data type in bit shift There is a static analysis warning due to wrong data types being used for NVM read data shifts. Fix it via explicit type cast. Fixes: 38db3f7f50bd ("e1000: update base driver") Cc: stable@dpdk.org Signed-off-by: Przemyslaw Ciesielski Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (b932270c66) (cherry picked from commit 146ae81c6a5c72779bee81f1d5d5913491ae4eef) M sys/dev/e1000/e1000_nvm.c _____________________________________________________________________________________________________________ Commit: 253a2989cd5a0047963196e94ff727005bf3f405 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=253a2989cd5a0047963196e94ff727005bf3f405 Author: Amir Avivi (Thu 6 Feb 2025 16:08:39 GMT) Committer: Kevin Bowling (Tue 25 Aug 2026 01:23:16 BST) e1000: fix iterator type DPDK commit message net/e1000/base: fix iterator type Fix static analysis warning about comparison between types of incompatible width, which might lead to an infinite loop due to overflow. Fixes: af75078fece3 ("first public release") Cc: stable@dpdk.org Signed-off-by: Amir Avivi Signed-off-by: Anatoly Burakov Acked-by: Bruce Richardson Obtained from: DPDK (3d36053991) (cherry picked from commit 15a0db2101cd67eccd0be2ddf1ad18be1ea5afd0) M sys/dev/e1000/e1000_phy.c _____________________________________________________________________________________________________________ Commit: adf4c3336c319cd14de9f45a7a44465aca3a9f36 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=adf4c3336c319cd14de9f45a7a44465aca3a9f36 Author: Christos Margiolis (Fri 21 Aug 2026 01:47:03 BST) Committer: Christos Margiolis (Mon 24 Aug 2026 21:47:13 BST) bcm2835_audio: Remove wrong chn_intr() chn_trigger() calls bcmchan_trigger() with the channel lock held. However, bcmchan_trigger() calls chn_intr(), which also tries to lock, which results in a lock recursion panic. chn_intr() is meant to be called by the interrupt handler and not inside CHANNEL_TRIGGER() methods. Remove the call altogether, the bcm2835_worker_play_start() call that comes after is enough. Fixes: 69cab2d1bfb5 ("Fix locking in bcm2835_audio driver") Reported by: Marco Devesas Campos Tested by: Marco Devesas Campos Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D59055 (cherry picked from commit f0778a6f9ba7045239a0055ebfbd7965d1f162c9) M sys/arm/broadcom/bcm2835/bcm2835_audio.c _____________________________________________________________________________________________________________ Commit: 3f73758036c7be2572d73bb72914801db06f5f4f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3f73758036c7be2572d73bb72914801db06f5f4f Author: Doug Ambrisko (Mon 22 Jun 2026 19:45:42 BST) Committer: Doug Ambrisko (Mon 24 Aug 2026 19:48:45 BST) zfskeys - only prompt if zfskeys and zfskeys_prompt are enabled By default don't block booting with a prompt if a zpool needs a keyboard password to unlock it. To enable prompting for keyboard password during boot require: zfskeys_enable="YES" zfskeys_prompt_enable="YES" to both be enabled. This returns to POLA of prior behaviour. PR: 296130 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296130 ) Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D57750 (cherry picked from commit 276a3dacdb60b65d65301aced5d8443cc5d27ea2) M libexec/rc/rc.conf M libexec/rc/rc.d/zfskeys _____________________________________________________________________________________________________________ Commit: dd2da25523462dc37db2c55dcb6a14ad6f1fed2b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dd2da25523462dc37db2c55dcb6a14ad6f1fed2b Author: Mark Johnston (Mon 24 Aug 2026 15:46:28 BST) Committer: Mark Johnston (Mon 24 Aug 2026 19:47:31 BST) ppp: Fix a buffer overflow in the endpoint discriminator set command Reported by: Reo Shiseki MFC after: 3 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D59054 (cherry picked from commit 6cb7e368daab6f166b7c8e26367ea6fee4cdd03a) M usr.sbin/ppp/mp.c _____________________________________________________________________________________________________________ Commit: 1bb1d38e4160836c048b79b922a1a3f980e9128b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1bb1d38e4160836c048b79b922a1a3f980e9128b Author: Mark Johnston (Mon 24 Aug 2026 18:05:28 BST) Committer: Mark Johnston (Mon 24 Aug 2026 18:06:24 BST) Revert "atomic: Implement atomic_{set,clear}_8 in _atomic_subword.h" This commit fails to compile for powerpc64le. Just revert it as it's only a cleanup motivated by adding support for KASAN to riscv. This is a direct commit to stable/15. This reverts commit 318915568443f1fdb65faab0f559c872f09628c6. Reported by: jenkins M sys/sys/_atomic_subword.h M sys/vm/vm_page.c _____________________________________________________________________________________________________________ Commit: 0f9fda8fb7b7f8c0fb7619a076a6c4b0dda0b67b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=0f9fda8fb7b7f8c0fb7619a076a6c4b0dda0b67b Author: Gleb Smirnoff (Fri 14 Nov 2025 16:01:47 GMT) Committer: Mark Johnston (Mon 24 Aug 2026 16:26:22 BST) unix/stream: fix instant panic w/o INVARIANTS A stupid microoptimization I made leaving empty STAILQ inconsistent is a brainfart that is related to much earlier version of this code, where it was safe to do so. Pointy hat to: glebius Fixes: 69f61cee2efb1eec0640ca7de9b2d51599569a5d (cherry picked from commit 82d8a5029a80a77166dca098b8fedb10d84e4e38) M sys/kern/uipc_usrreq.c _____________________________________________________________________________________________________________ Commit: bf22e0dd97a484eff4fde057a98d0ae102b90903 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bf22e0dd97a484eff4fde057a98d0ae102b90903 Author: Gleb Smirnoff (Fri 14 Nov 2025 02:39:48 GMT) Committer: Mark Johnston (Mon 24 Aug 2026 16:26:22 BST) unix/stream: fix a race with MSG_PEEK on SOCK_SEQPACKET with MSG_EOR The pr_soreceive method first scans the buffer holding the both I/O sx(9) and socket buffer mutex(9) and after figuring out how much needs to be copied out drops the mutex. Since the other side may only append to the buffer, it is safe to continue the operation holding the sx(9) only. However, the code had a bug that it used pointer in the very last mbuf as marker of the place where to stop. This worked both in a case when we drain a buffer completely (marker points at NULL) and in a case when we wanted to stop at MSG_EOR (marker points at next mbuf after MSG_EOR). However, this pointer is not consistent after we dropped the socket buffer mutex. Rewrite the logic to use the data length as bounds for the copyout cycle. Provide a test case that reproduces the race. Note that the race is very hard to hit, thus test will pass on unmodified kernel as well. In a virtual machine I needed to add tsleep(9) for 10 nanoseconds into the middle of function to be able to reproduce. PR: 290658 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=290658 ) Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D53632 Fixes: d15792780760ef94647af9b377b5f0a80e1826bc (cherry picked from commit 69f61cee2efb1eec0640ca7de9b2d51599569a5d) M sys/kern/uipc_usrreq.c M tests/sys/kern/unix_seqpacket_test.c _____________________________________________________________________________________________________________ Commit: 6edbfb48fc1ac02ef12b3ae9e0955ff317c286a3 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=6edbfb48fc1ac02ef12b3ae9e0955ff317c286a3 Author: Mark Johnston (Fri 24 Jul 2026 22:12:33 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:55 BST) uma: Enqueue full buckets in FIFO order when KASAN is configured We want to defer reuse of free objects, and this is a trivial way to promote that. Suggested by: rlibby Reviewed by: rlibby, alc MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58312 (cherry picked from commit 492cfbe9e2f831fff290e019dae66345146978bd) M sys/vm/uma_core.c _____________________________________________________________________________________________________________ Commit: 646a9f2a13ef5e11d0033207edcacce14d496bab URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=646a9f2a13ef5e11d0033207edcacce14d496bab Author: Mark Johnston (Fri 24 Jul 2026 22:12:21 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:55 BST) uma: Avoid allocating from free buckets when KASAN is enabled When uma_zalloc_arg() hits an empty alloc bucket in the per-CPU cache, it tries swapping the alloc and free buckets in the hope that the free bucket has some items available. If not, it has to lock the zone. Disable this behaviour when KASAN is configured in order to further defer reuse of freed items. This forces a free item to go to the per-domain full bucket cache before it becomes accessible to the allocator. Reviewed by: rlibby MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58270 (cherry picked from commit 666eab3afc52bf20d57c24e98a6aa667433fb7c2) M sys/vm/uma_core.c _____________________________________________________________________________________________________________ Commit: 01f6dff4ac58d4e9573d0b698276bcbd9e2cd643 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=01f6dff4ac58d4e9573d0b698276bcbd9e2cd643 Author: Mark Johnston (Fri 24 Jul 2026 22:12:10 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:55 BST) uma: Make an effort to defer reuse of items when KASAN is enabled When KASAN is configured, make uma_zfree_arg() free items to the per-CPU free bucket, rather than to the alloc bucket. This means that the item won't be recycled immediately the next time a thread goes to allocate an item from that zone on the same CPU. In other words, the item will stay in a quarantine state longer, which helps make KASAN's use-after-free detection more reliable. Reviewed by: rlibby MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58269 (cherry picked from commit 990989c31b4637a23e64598a3d9929079bb9a8de) M sys/vm/uma_core.c _____________________________________________________________________________________________________________ Commit: 4b94ab9b7c5e30cd650c63c029eaac25e3908c18 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4b94ab9b7c5e30cd650c63c029eaac25e3908c18 Author: Mark Johnston (Fri 24 Jul 2026 22:11:58 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) uma: Factor out the implementations of uma_zfree_{arg,smr}() The two function both free an item to a UMA zone, but uma_zfree_arg() does so in such as way as to ensure that the item will be the first one returned by a subsequent allocation, while uma_zfree_smr() must defer reuse of the item and therefore never frees to the per-CPU alloc bucket. When KASAN is enabled, we actually want uma_zfree_arg() to behave like uma_zfree_smr(): to improve the reliability of use-after-free detection, reuse of the newly freed item should be deferred for some time. Refactor a bit to make it easier to improve KASAN along these lines: introduce two helper functions, cache_free_item() and cache_free_smr(), which handle most of the work of interacting with the per-CPU caches. A subsequent commit will let uma_zfree_arg() use cache_free_smr() when KASAN is enabled. No functional change intended. Reviewed by: rlibby MFC after: 1 month Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58268 (cherry picked from commit 6337ca19a3637aa72eddf4d62a2eaf7d8df51638) M sys/vm/uma_core.c _____________________________________________________________________________________________________________ Commit: be37b1e0ba7944a77bddc9124f1f4a57195ef37d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=be37b1e0ba7944a77bddc9124f1f4a57195ef37d Author: Mark Johnston (Fri 7 Aug 2026 15:47:06 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) netmap: Fix a race in kqueue registration We need to acquire the netmap global lock earlier, to avoid racing with the NETMAP_REQ_REGISTER ioctl handler. Reported by: syzkaller Reviewed by: vmaffione MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58677 (cherry picked from commit 6de818285f066c6705816674c671761dc09bff90) M sys/dev/netmap/netmap_freebsd.c _____________________________________________________________________________________________________________ Commit: a8bde73c4bdee4ee6dba3bd85e61346ad76370fe URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=a8bde73c4bdee4ee6dba3bd85e61346ad76370fe Author: Mark Johnston (Fri 7 Aug 2026 15:46:52 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) netmap: Fix driver name handling if_initname() requires the caller to ensure that the lifetime of the interface's name buffer contains that of the ifnet itself. netmap_vi_create() wasn't respecting that; we were instead passing the stack-allocated buffer provided by the ioctl handler. While here, add a check to avoid assuming that the caller-provided buffer is nul-terminated. Reported by: syzkaller Reviewed by: vmaffione MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58676 (cherry picked from commit 800d5b7a8a4f5665ced0453e090f8d563366bd47) M sys/dev/netmap/netmap_kern.h M sys/dev/netmap/netmap_vale.c _____________________________________________________________________________________________________________ Commit: bc232869fafeee66dbd773e4ab546dc9aac40471 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=bc232869fafeee66dbd773e4ab546dc9aac40471 Author: Mark Johnston (Thu 13 Aug 2026 15:57:54 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) unix: Fix mchain handling in uipc_sosend_stream_or_seqpacket() Empty mchains cannot be copied with simple assignment. I think this bug is mostly harmless: if mcnext is empty, then it won't be accessed again before it is reinitialized in the next loop iteration. So the bug only trips an assertion in INVARIANTS kernels and won't be visible otherwise. Add a regression test which triggers this corner case. Reported by: Jan Bramkamp Fixes: d15792780760 ("unix: new implementation of unix/stream & unix/seqpacket") Reviewed by: glebius MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58791 (cherry picked from commit 79e0b69ce8af7d115496991ef66e525a03e9f4fe) M sys/kern/uipc_usrreq.c M tests/sys/kern/unix_passfd_test.c _____________________________________________________________________________________________________________ Commit: 65e2c2279b62dc4107f0a02b0570d35c9203d96f URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=65e2c2279b62dc4107f0a02b0570d35c9203d96f Author: Mark Johnston (Tue 11 Aug 2026 17:42:41 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) in_mcast: Fix uninitialized variable usage in inm_merge() When the first loop in inm_merge() hits an error, generally because it hit some limit on the number of source filters for a multicast group, inm_merge() tries to atomically roll back changes to the group source filter list. To roll back, it iterates over the global source filter list for the multicast group, starting at the last entry that we updated ("nims"). But, if we have not yet updated any entries, this variable is uninitialized. Initialize it to NULL, so that RB_FOREACH_REVERSE_FROM doesn't visit any source filters in this case. All of the above applies to the v6 case. Reported by: Daniel Birtwhistle MFC after: 1 week Sponsored by: The FreeBSD Foundation (cherry picked from commit b9db5a5b16477863654f92ec653e8464528ef981) M sys/netinet/in_mcast.c M sys/netinet6/in6_mcast.c _____________________________________________________________________________________________________________ Commit: 1b4e0a4467f9f4fb9b3fa5cd8b0597e435a813ef URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1b4e0a4467f9f4fb9b3fa5cd8b0597e435a813ef Author: Mark Johnston (Tue 11 Aug 2026 15:10:23 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) vm_object: Augment an assertion in vm_object_split() In some private discussion it was pointed out that vm_object_split()'s pattern of dropping the source object lock looks dangerous in that the initial assumption that OBJ_ONEMAPPING is set may become false. In practice I believe that the map lock holds this flag stable, but let's assert that. Reviewed by: alc, kib MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D58766 (cherry picked from commit 12857d8f4269af7df85605b48ae5e7b2fd810fde) M sys/vm/vm_object.c _____________________________________________________________________________________________________________ Commit: 3a8af1908560f0733baeb7a5750ecfb87a37facd URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=3a8af1908560f0733baeb7a5750ecfb87a37facd Author: Mark Johnston (Fri 31 Jul 2026 13:56:31 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) malloc: Fix domainset usage in malloc_domainset() for large allocs We should of course pass the provided domainset rather than copying what plain malloc() does. Fixes: 89deca0a3361 ("malloc: make malloc_large closer to standalone") Reviewed by: rlibby MFC after: 3 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58316 (cherry picked from commit 0aca7ce7af35fdf87db2b8866c623b0c275ee3e9) M sys/kern/kern_malloc.c _____________________________________________________________________________________________________________ Commit: c75520c5ec46e2faa208a0d7ac5b4c864afc8c5a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c75520c5ec46e2faa208a0d7ac5b4c864afc8c5a Author: Mark Johnston (Fri 31 Jul 2026 20:47:10 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) uma: Fix KMSAN integration with malloc zones In commit 459aa032e872 I dropped kmsan_mark() calls from malloc() on the basis that UMA and kmem_malloc() would handle updates of the KMSAN shadow map. However, I missed that UMA explicitly does not handle this. Modify UMA to only omit origin map updates for malloc zones. Fixes: 459aa032e872 ("malloc: Refactor redzone and sanitizer handling") Reviewed by: rlibby Differential Revision: https://reviews.freebsd.org/D58574 (cherry picked from commit ea7d35526878ebf82f10080795e462d007485bf1) M sys/vm/uma_core.c _____________________________________________________________________________________________________________ Commit: 283a3b762dcc6825a40ec9cd4239fbfc7b2455dc URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=283a3b762dcc6825a40ec9cd4239fbfc7b2455dc Author: Mark Johnston (Fri 31 Jul 2026 13:55:59 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) malloc: Refactor redzone and sanitizer handling malloc_large() duplicates redzone and KASAN handling that is also present in malloc() and malloc_domainset(). Refactor the implementations to reduce this a bit. Also normalize KMSAN map handling: make malloc() and malloc_domainset() consistent, and do not update the KMSAN shadow map, as we can rely on UMA and kmem_malloc() to handle that. Reviewed by: rlibby MFC after: 3 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58272 (cherry picked from commit 459aa032e87275ebe10847592ea2ddea0c3ed693) M sys/kern/kern_malloc.c _____________________________________________________________________________________________________________ Commit: 4400dcf2b1eb3b54b55efdf9e27cac139c66717a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=4400dcf2b1eb3b54b55efdf9e27cac139c66717a Author: Mark Johnston (Fri 31 Jul 2026 13:55:48 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) uma: Insert KASAN redzones after slab-allocated items Without this, KASAN has the deficiency that inter-object overflows are not detected most of the time[*] when keg_layout() is able to perfectly pack a slab. Try to overcome this by adjusting the allocation size to include a redzone following the object. With this change, we automatically get a redzone following each item, so any overflow into the redzone will trigger a panic. Most of UMA doesn't need to know about this: at slab allocation time, the whole slab is poisoned, and then kasan_mark_item_valid() will unpoison only the buffer that is available to the consumer. Note that in most zones, most objects will follow another object's redzone, so there is some protection against underflow as well. It might be worthwhile to provide a stronger guarantee here. Add an assertion to item_ctor() that the returned item is properly aligned. I couldn't see any pre-existing checks which verify this. Reviewed by: rlibby MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58271 (cherry picked from commit f51a5e1d9c415d97b86f0f2c8da9cc9ad9dc683b) M sys/vm/uma_core.c _____________________________________________________________________________________________________________ Commit: 318915568443f1fdb65faab0f559c872f09628c6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=318915568443f1fdb65faab0f559c872f09628c6 Author: Mark Johnston (Mon 3 Aug 2026 15:02:33 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) atomic: Implement atomic_{set,clear}_8 in _atomic_subword.h Reimplement atomic_{set,clear}_16 using atomic_set_32. Remove emulation of these operations from vm_page.c. Reviewed by: alc, kib MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D58580 (cherry picked from commit fb63bc67483ee52245d6161150702974da3d001c) M sys/sys/_atomic_subword.h M sys/vm/vm_page.c _____________________________________________________________________________________________________________ Commit: 06833c3e98137c70309a0c92a96425f521e88c50 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=06833c3e98137c70309a0c92a96425f521e88c50 Author: Mark Johnston (Mon 10 Aug 2026 15:41:33 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) unix: Fix some bugs in the SOCK_STREAM receive path The main problem is with the handling of errors from unp_externalize(). It turns out that this was quite broken, and unfortunately it's easy to trigger such errors (e.g., by setting a low per-process fd limit with setrlimit()). In non-peek mode, uipc_soreceive_stream_or_seqpacket() cuts a bunch of mbufs from the head of the socket buffer, to be consumed by userspace. When unp_externalize() returns an error, we splice the removed mbuf chain back onto the head of the socket buffer. This is expensive, but that's ok since such errors are rare. The problem is that this cutting is not correctly implemented: it does not clear the "next" pointer for the last mbuf in the chain, so it still points to the first mbuf still resident in the socket buffer. This means that mc_init_m() creates a chain that still includes the rest of the socket buffer, so splicing the chain back into the socket buffer does not work properly. Fix this: fully detach the control chain from the socket buffer so that we can safely use mc_init_m(). Then, incrementally add data mbufs, taking care to handle "part". Fix some related bugs while here: - Don't swallow the error if unp_externalize() fails and there's nothing left in the socket buffer (i.e., control->m_next == NULL). - Roll back changes to the partially read mbuf. Reviewed by: glebius MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58695 (cherry picked from commit 3b93d3597cc336d5637e12ade8642d589cb0bc8a) M sys/kern/uipc_usrreq.c M sys/sys/mbuf.h M tests/sys/kern/unix_passfd_test.c _____________________________________________________________________________________________________________ Commit: e7070407aa8eae85bc412b9fd80865628b69f22d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=e7070407aa8eae85bc412b9fd80865628b69f22d Author: Gleb Smirnoff (Wed 15 Oct 2025 21:01:25 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) unix/stream: plug a corner case when control externalization failed while peer has closed its end. Reported by: syzbot+ffcc3612ea266e36604e@syzkaller.appspotmail.com (cherry picked from commit 4548b9f3a8167a340a5086ed51a76d932c9ab3cc) M sys/kern/uipc_usrreq.c _____________________________________________________________________________________________________________ Commit: 08933bbc499fbc6a29149da15024ad9ba4e0cdc9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=08933bbc499fbc6a29149da15024ad9ba4e0cdc9 Author: Mark Johnston (Mon 10 Aug 2026 16:59:10 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:54 BST) riscv/atomic: Provide some additional aliases These are already available and having them defined helps keep the KASAN atomic(9) interceptors uniform. Reviewed by: mhorne MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58680 (cherry picked from commit 4f87828402912a7e451fdbe53161c68faa489128) M sys/riscv/include/atomic.h _____________________________________________________________________________________________________________ Commit: 9e107eba08b162d22435096874852417ba8e9e67 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=9e107eba08b162d22435096874852417ba8e9e67 Author: Mark Johnston (Mon 10 Aug 2026 15:41:22 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:53 BST) unix: Simplify uipc_detach() uipc_close() handles detaching a unix socket from the vnode to which it's bound, if any, so doing the same in uipc_detach() is redundant. Moreover, it's conceptually wrong that uipc_detach() might need to handle this: detach happens when there are no remaining references to the socket, and that should include the vnode's reference, even though it's not explicitly counted. No functional change intended. Reviewed by: John Ericson , glebius MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58675 (cherry picked from commit e27d36e038bf0d681d19a07d3512e0dc5adb20c7) M sys/kern/uipc_usrreq.c _____________________________________________________________________________________________________________ Commit: b994e68f44cfe589b98c05a2e46503255e4756b9 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=b994e68f44cfe589b98c05a2e46503255e4756b9 Author: Mark Johnston (Mon 10 Aug 2026 15:41:04 BST) Committer: Mark Johnston (Mon 24 Aug 2026 16:17:53 BST) unix: Fix a missing initialization in uipc_sosend_stream_or_seqpacket() This could be triggered by an in-kernel sender, of which I can't find any examples. Fixes: d15792780760 ("unix: new implementation of unix/stream & unix/seqpacket") Reviewed by: glebius MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D58673 (cherry picked from commit 6dfd710963da7fe6086bcfb705b32b6a3646848f) M sys/kern/uipc_usrreq.c _____________________________________________________________________________________________________________ Commit: 750cc050291298b462abd099191cb995057eb34e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=750cc050291298b462abd099191cb995057eb34e Author: Martin Matuska (Thu 30 Jul 2026 09:13:34 BST) Committer: Martin Matuska (Mon 24 Aug 2026 10:20:52 BST) libarchive: merge from vendor branch libarchive 3.8.9 ChangeLog: https://github.com/libarchive/libarchive/compare/v3.8.7...v3.8.9 Obtained from: libarchive Vendor commit: 27cbc7827172698143e440801fc0ba39ccb4f1f5 MFC after: 2 weeks (cherry picked from commit 185becb1e1bd2657c156f78aeb52edac05ba5fb5) M contrib/libarchive/FREEBSD-Xlist M contrib/libarchive/NEWS M contrib/libarchive/SECURITY.md D contrib/libarchive/build/ci/github_actions/install-macos-dependencies.sh M contrib/libarchive/cpio/cpio.c M contrib/libarchive/cpio/test/test_extract_cpio_absolute_paths.c M contrib/libarchive/cpio/test/test_format_newc.c M contrib/libarchive/libarchive/archive.h M contrib/libarchive/libarchive/archive_acl.c M contrib/libarchive/libarchive/archive_acl_private.h M contrib/libarchive/libarchive/archive_check_magic.c M contrib/libarchive/libarchive/archive_cmdline.c M contrib/libarchive/libarchive/archive_crc32.h M contrib/libarchive/libarchive/archive_cryptor.c M contrib/libarchive/libarchive/archive_cryptor_private.h M contrib/libarchive/libarchive/archive_digest.c M contrib/libarchive/libarchive/archive_digest_private.h M contrib/libarchive/libarchive/archive_endian.h M contrib/libarchive/libarchive/archive_entry.c M contrib/libarchive/libarchive/archive_entry.h M contrib/libarchive/libarchive/archive_entry_link_resolver.c M contrib/libarchive/libarchive/archive_entry_sparse.c M contrib/libarchive/libarchive/archive_entry_strmode.c M contrib/libarchive/libarchive/archive_entry_xattr.c M contrib/libarchive/libarchive/archive_hmac.c M contrib/libarchive/libarchive/archive_hmac_private.h A contrib/libarchive/libarchive/archive_integer.h M contrib/libarchive/libarchive/archive_match.c M contrib/libarchive/libarchive/archive_options.c M contrib/libarchive/libarchive/archive_pack_dev.c M contrib/libarchive/libarchive/archive_parse_date.c M contrib/libarchive/libarchive/archive_pathmatch.c M contrib/libarchive/libarchive/archive_private.h M contrib/libarchive/libarchive/archive_random.c M contrib/libarchive/libarchive/archive_read.c M contrib/libarchive/libarchive/archive_read_append_filter.c M contrib/libarchive/libarchive/archive_read_data_into_fd.c M contrib/libarchive/libarchive/archive_read_disk_entry_from_file.c M contrib/libarchive/libarchive/archive_read_disk_posix.c M contrib/libarchive/libarchive/archive_read_disk_set_standard_lookup.c M contrib/libarchive/libarchive/archive_read_filter.3 M contrib/libarchive/libarchive/archive_read_open.3 M contrib/libarchive/libarchive/archive_read_open_fd.c M contrib/libarchive/libarchive/archive_read_open_file.c M contrib/libarchive/libarchive/archive_read_open_filename.c M contrib/libarchive/libarchive/archive_read_open_memory.c M contrib/libarchive/libarchive/archive_read_private.h M contrib/libarchive/libarchive/archive_read_support_filter_all.c M contrib/libarchive/libarchive/archive_read_support_filter_bzip2.c M contrib/libarchive/libarchive/archive_read_support_filter_compress.c M contrib/libarchive/libarchive/archive_read_support_filter_grzip.c M contrib/libarchive/libarchive/archive_read_support_filter_gzip.c M contrib/libarchive/libarchive/archive_read_support_filter_lrzip.c M contrib/libarchive/libarchive/archive_read_support_filter_lz4.c M contrib/libarchive/libarchive/archive_read_support_filter_lzop.c M contrib/libarchive/libarchive/archive_read_support_filter_program.c M contrib/libarchive/libarchive/archive_read_support_filter_rpm.c M contrib/libarchive/libarchive/archive_read_support_filter_uu.c M contrib/libarchive/libarchive/archive_read_support_filter_xz.c M contrib/libarchive/libarchive/archive_read_support_filter_zstd.c M contrib/libarchive/libarchive/archive_read_support_format_7zip.c M contrib/libarchive/libarchive/archive_read_support_format_all.c M contrib/libarchive/libarchive/archive_read_support_format_ar.c M contrib/libarchive/libarchive/archive_read_support_format_cab.c M contrib/libarchive/libarchive/archive_read_support_format_cpio.c M contrib/libarchive/libarchive/archive_read_support_format_iso9660.c M contrib/libarchive/libarchive/archive_read_support_format_lha.c M contrib/libarchive/libarchive/archive_read_support_format_mtree.c M contrib/libarchive/libarchive/archive_read_support_format_rar.c M contrib/libarchive/libarchive/archive_read_support_format_rar5.c M contrib/libarchive/libarchive/archive_read_support_format_raw.c M contrib/libarchive/libarchive/archive_read_support_format_tar.c M contrib/libarchive/libarchive/archive_read_support_format_warc.c M contrib/libarchive/libarchive/archive_read_support_format_xar.c M contrib/libarchive/libarchive/archive_read_support_format_zip.c M contrib/libarchive/libarchive/archive_string.c M contrib/libarchive/libarchive/archive_time.c M contrib/libarchive/libarchive/archive_util.3 M contrib/libarchive/libarchive/archive_util.c M contrib/libarchive/libarchive/archive_version_details.c M contrib/libarchive/libarchive/archive_write.c M contrib/libarchive/libarchive/archive_write_add_filter.c M contrib/libarchive/libarchive/archive_write_add_filter_b64encode.c M contrib/libarchive/libarchive/archive_write_add_filter_bzip2.c M contrib/libarchive/libarchive/archive_write_add_filter_compress.c M contrib/libarchive/libarchive/archive_write_add_filter_grzip.c M contrib/libarchive/libarchive/archive_write_add_filter_gzip.c M contrib/libarchive/libarchive/archive_write_add_filter_lrzip.c M contrib/libarchive/libarchive/archive_write_add_filter_lz4.c M contrib/libarchive/libarchive/archive_write_add_filter_lzop.c M contrib/libarchive/libarchive/archive_write_add_filter_program.c M contrib/libarchive/libarchive/archive_write_add_filter_uuencode.c M contrib/libarchive/libarchive/archive_write_add_filter_xz.c M contrib/libarchive/libarchive/archive_write_add_filter_zstd.c M contrib/libarchive/libarchive/archive_write_disk_posix.c M contrib/libarchive/libarchive/archive_write_disk_set_standard_lookup.c M contrib/libarchive/libarchive/archive_write_filter.3 M contrib/libarchive/libarchive/archive_write_format.3 M contrib/libarchive/libarchive/archive_write_private.h M contrib/libarchive/libarchive/archive_write_set_format_7zip.c M contrib/libarchive/libarchive/archive_write_set_format_ar.c M contrib/libarchive/libarchive/archive_write_set_format_cpio_binary.c M contrib/libarchive/libarchive/archive_write_set_format_cpio_newc.c M contrib/libarchive/libarchive/archive_write_set_format_cpio_odc.c M contrib/libarchive/libarchive/archive_write_set_format_gnutar.c M contrib/libarchive/libarchive/archive_write_set_format_iso9660.c M contrib/libarchive/libarchive/archive_write_set_format_mtree.c M contrib/libarchive/libarchive/archive_write_set_format_pax.c M contrib/libarchive/libarchive/archive_write_set_format_raw.c M contrib/libarchive/libarchive/archive_write_set_format_shar.c M contrib/libarchive/libarchive/archive_write_set_format_ustar.c M contrib/libarchive/libarchive/archive_write_set_format_v7tar.c M contrib/libarchive/libarchive/archive_write_set_format_warc.c M contrib/libarchive/libarchive/archive_write_set_format_xar.c M contrib/libarchive/libarchive/archive_write_set_format_zip.c M contrib/libarchive/libarchive/archive_write_set_options.3 M contrib/libarchive/libarchive/libarchive-formats.5 M contrib/libarchive/libarchive/test/read_open_memory.c A contrib/libarchive/libarchive/test/test_acl_from_text_overread.c A contrib/libarchive/libarchive/test/test_acl_nfs4_null_id_overflow.c A contrib/libarchive/libarchive/test/test_acl_nfs4_text.c A contrib/libarchive/libarchive/test/test_acl_posix1e_text.c M contrib/libarchive/libarchive/test/test_archive_match_path.c M contrib/libarchive/libarchive/test/test_archive_parse_date.c M contrib/libarchive/libarchive/test/test_archive_pathmatch.c A contrib/libarchive/libarchive/test/test_archive_pathmatch_oob.c A contrib/libarchive/libarchive/test/test_archive_pathmatch_oob_bracket.bin.uu A contrib/libarchive/libarchive/test/test_archive_pathmatch_oob_strchr.bin.uu M contrib/libarchive/libarchive/test/test_archive_read_close_twice.c D contrib/libarchive/libarchive/test/test_archive_read_set_option.c M contrib/libarchive/libarchive/test/test_archive_read_set_options.c A contrib/libarchive/libarchive/test/test_archive_seek_data_unsupported.c M contrib/libarchive/libarchive/test/test_archive_string.c M contrib/libarchive/libarchive/test/test_archive_string_conversion.c A contrib/libarchive/libarchive/test/test_archive_string_conversion_overread.c A contrib/libarchive/libarchive/test/test_archive_write_add_filter.c M contrib/libarchive/libarchive/test/test_archive_write_add_filter_by_name.c M contrib/libarchive/libarchive/test/test_archive_write_set_format_by_name.c M contrib/libarchive/libarchive/test/test_archive_write_set_format_filter_by_ext.c D contrib/libarchive/libarchive/test/test_archive_write_set_format_option.c D contrib/libarchive/libarchive/test/test_archive_write_set_option.c M contrib/libarchive/libarchive/test/test_archive_write_set_options.c M contrib/libarchive/libarchive/test/test_compat_bzip2.c M contrib/libarchive/libarchive/test/test_compat_cpio.c M contrib/libarchive/libarchive/test/test_compat_gtar.c M contrib/libarchive/libarchive/test/test_compat_gtar_large.c M contrib/libarchive/libarchive/test/test_compat_gzip.c M contrib/libarchive/libarchive/test/test_compat_lz4.c M contrib/libarchive/libarchive/test/test_compat_lzip.c M contrib/libarchive/libarchive/test/test_compat_lzma.c M contrib/libarchive/libarchive/test/test_compat_lzop.c M contrib/libarchive/libarchive/test/test_compat_mac.c M contrib/libarchive/libarchive/test/test_compat_perl_archive_tar.c M contrib/libarchive/libarchive/test/test_compat_plexus_archiver_tar.c M contrib/libarchive/libarchive/test/test_compat_solaris_pax_sparse.c M contrib/libarchive/libarchive/test/test_compat_tar_directory.c M contrib/libarchive/libarchive/test/test_compat_tar_hardlink.c M contrib/libarchive/libarchive/test/test_compat_xz.c M contrib/libarchive/libarchive/test/test_compat_zip.c M contrib/libarchive/libarchive/test/test_compat_zstd.c M contrib/libarchive/libarchive/test/test_entry.c M contrib/libarchive/libarchive/test/test_fuzz.c A contrib/libarchive/libarchive/test/test_fuzz_consumer.h M contrib/libarchive/libarchive/test/test_gnutar_filename_encoding.c M contrib/libarchive/libarchive/test/test_open_filename.c M contrib/libarchive/libarchive/test/test_pax_filename_encoding.c M contrib/libarchive/libarchive/test/test_pax_xattr_header.c A contrib/libarchive/libarchive/test/test_read_data_into_fd_size_exceeds_declared.c A contrib/libarchive/libarchive/test/test_read_data_into_fd_size_exceeds_declared_deflate.zip.uu A contrib/libarchive/libarchive/test/test_read_data_into_fd_size_exceeds_declared_stored.zip.uu M contrib/libarchive/libarchive/test/test_read_data_large.c M contrib/libarchive/libarchive/test/test_read_disk_directory_traversals.c R065 contrib/libarchive/libarchive/test/test_archive_write_set_filter_option.c contrib/libarchive/libarchive/test/test_read_files_compressed.c A contrib/libarchive/libarchive/test/test_read_files_compressed.part01.uu A contrib/libarchive/libarchive/test/test_read_files_compressed.part02.uu M contrib/libarchive/libarchive/test/test_read_filter_compress.c M contrib/libarchive/libarchive/test/test_read_filter_grzip.c M contrib/libarchive/libarchive/test/test_read_filter_gzip_recursive.c M contrib/libarchive/libarchive/test/test_read_filter_lrzip.c R066 contrib/libarchive/libarchive/test/test_archive_read_set_filter_option.c contrib/libarchive/libarchive/test/test_read_filter_lz4_raw.c A contrib/libarchive/libarchive/test/test_read_filter_lz4_raw_skip.uu M contrib/libarchive/libarchive/test/test_read_filter_lzop.c M contrib/libarchive/libarchive/test/test_read_filter_lzop_multiple_parts.c M contrib/libarchive/libarchive/test/test_read_filter_program.c M contrib/libarchive/libarchive/test/test_read_filter_uudecode_raw.c R069 contrib/libarchive/libarchive/test/test_archive_read_close_twice_open_fd.c contrib/libarchive/libarchive/test/test_read_filter_zstd_raw.c A contrib/libarchive/libarchive/test/test_read_filter_zstd_raw_loop.uu M contrib/libarchive/libarchive/test/test_read_format_7zip.c A contrib/libarchive/libarchive/test/test_read_format_7zip_archive_properties.7z.uu M contrib/libarchive/libarchive/test/test_read_format_7zip_encryption_data.c M contrib/libarchive/libarchive/test/test_read_format_7zip_encryption_header.c M contrib/libarchive/libarchive/test/test_read_format_7zip_encryption_partially.c A contrib/libarchive/libarchive/test/test_read_format_7zip_entries_oom.7z.uu A contrib/libarchive/libarchive/test/test_read_format_7zip_entries_oom.c A contrib/libarchive/libarchive/test/test_read_format_7zip_folders_oom.7z.uu A contrib/libarchive/libarchive/test/test_read_format_7zip_folders_oom.c M contrib/libarchive/libarchive/test/test_read_format_7zip_issue2765.c M contrib/libarchive/libarchive/test/test_read_format_7zip_malformed.c A contrib/libarchive/libarchive/test/test_read_format_7zip_malformed4.7z.uu A contrib/libarchive/libarchive/test/test_read_format_7zip_malformed_numfiles_oom.7z.uu M contrib/libarchive/libarchive/test/test_read_format_7zip_packinfo_digests.c A contrib/libarchive/libarchive/test/test_read_format_7zip_sfx_boundary_elf.elf.uu A contrib/libarchive/libarchive/test/test_read_format_7zip_sfx_boundary_pe.exe.uu M contrib/libarchive/libarchive/test/test_read_format_cab.c M contrib/libarchive/libarchive/test/test_read_format_cab_filename.c A contrib/libarchive/libarchive/test/test_read_format_cab_lzx_16bit.c A contrib/libarchive/libarchive/test/test_read_format_cab_lzx_16bit.cab.uu A contrib/libarchive/libarchive/test/test_read_format_cab_lzx_e8.c A contrib/libarchive/libarchive/test/test_read_format_cab_lzx_e8.cab.uu A contrib/libarchive/libarchive/test/test_read_format_cab_mszip_oob.c A contrib/libarchive/libarchive/test/test_read_format_cab_multi.c A contrib/libarchive/libarchive/test/test_read_format_cab_multi.p1.cab.uu A contrib/libarchive/libarchive/test/test_read_format_cab_multi.p2.cab.uu M contrib/libarchive/libarchive/test/test_read_format_cpio_afio.c A contrib/libarchive/libarchive/test/test_read_format_cpio_afio_header.part1.cpio.uu A contrib/libarchive/libarchive/test/test_read_format_cpio_afio_header.part2.cpio.uu M contrib/libarchive/libarchive/test/test_read_format_cpio_bin_bz2.c M contrib/libarchive/libarchive/test/test_read_format_cpio_bin_gz.c M contrib/libarchive/libarchive/test/test_read_format_cpio_filename.c M contrib/libarchive/libarchive/test/test_read_format_cpio_svr4_bzip2_rpm.c M contrib/libarchive/libarchive/test/test_read_format_cpio_svr4_gzip.c M contrib/libarchive/libarchive/test/test_read_format_cpio_svr4_gzip_rpm.c A contrib/libarchive/libarchive/test/test_read_format_cpio_symlink_trailer.c A contrib/libarchive/libarchive/test/test_read_format_cpio_symlink_trailer.cpio.uu M contrib/libarchive/libarchive/test/test_read_format_gtar_filename.c M contrib/libarchive/libarchive/test/test_read_format_gtar_gz.c M contrib/libarchive/libarchive/test/test_read_format_gtar_redundant_L.c M contrib/libarchive/libarchive/test/test_read_format_gtar_sparse.c A contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_reuse.tar.uu M contrib/libarchive/libarchive/test/test_read_format_gtar_sparse_skip_entry.c M contrib/libarchive/libarchive/test/test_read_format_huge_rpm.c A contrib/libarchive/libarchive/test/test_read_format_iso_joliet_utf16be_overflow.c A contrib/libarchive/libarchive/test/test_read_format_iso_joliet_utf16be_overflow.iso.uu A contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_ce_loop.iso.Z.uu A contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_zf_overflow.c A contrib/libarchive/libarchive/test/test_read_format_iso_rockridge_zf_overflow.iso.uu R096 contrib/libarchive/libarchive/test/test_read_format_isojoliet_bz2.c contrib/libarchive/libarchive/test/test_read_format_isojoliet_compress.c A contrib/libarchive/libarchive/test/test_read_format_isorr_ce_loop.c R098 contrib/libarchive/libarchive/test/test_read_format_isorr_bz2.c contrib/libarchive/libarchive/test/test_read_format_isorr_compress.c R098 contrib/libarchive/libarchive/test/test_read_format_isorr_new_bz2.c contrib/libarchive/libarchive/test/test_read_format_isorr_new_compress.c R098 contrib/libarchive/libarchive/test/test_read_format_isozisofs_bz2.c contrib/libarchive/libarchive/test/test_read_format_isozisofs_compress.c M contrib/libarchive/libarchive/test/test_read_format_lha.c M contrib/libarchive/libarchive/test/test_read_format_lha_bugfix_0.c M contrib/libarchive/libarchive/test/test_read_format_lha_filename.c M contrib/libarchive/libarchive/test/test_read_format_lha_filename_utf16.c A contrib/libarchive/libarchive/test/test_read_format_lha_symlink_missing_target.c A contrib/libarchive/libarchive/test/test_read_format_lha_symlink_missing_target.lzh.uu M contrib/libarchive/libarchive/test/test_read_format_mtree.c M contrib/libarchive/libarchive/test/test_read_format_pax_bz2.c M contrib/libarchive/libarchive/test/test_read_format_rar.c A contrib/libarchive/libarchive/test/test_read_format_rar3_lowdist_reset.rar.uu M contrib/libarchive/libarchive/test/test_read_format_rar5.c A contrib/libarchive/libarchive/test/test_read_format_rar5_bad_filter.c A contrib/libarchive/libarchive/test/test_read_format_rar5_bad_tables.c A contrib/libarchive/libarchive/test/test_read_format_rar5_bad_tables.rar.uu A contrib/libarchive/libarchive/test/test_read_format_rar5_block_hdr_fail_loop.c A contrib/libarchive/libarchive/test/test_read_format_rar5_bytes_remaining_underflow.rar.uu A contrib/libarchive/libarchive/test/test_read_format_rar5_main_block_extra_bytes.rar.uu A contrib/libarchive/libarchive/test/test_read_format_rar5_skip_block_extra_bytes.rar.uu A contrib/libarchive/libarchive/test/test_read_format_rar5_unpacked_size_exceeds_declared.rar.uu M contrib/libarchive/libarchive/test/test_read_format_rar_encryption.c M contrib/libarchive/libarchive/test/test_read_format_rar_encryption_data.c M contrib/libarchive/libarchive/test/test_read_format_rar_encryption_header.c M contrib/libarchive/libarchive/test/test_read_format_rar_encryption_partially.c M contrib/libarchive/libarchive/test/test_read_format_rar_invalid1.c A contrib/libarchive/libarchive/test/test_read_format_rar_newsub_rr_over_1m.rar.uu M contrib/libarchive/libarchive/test/test_read_format_rar_overflow.c A contrib/libarchive/libarchive/test/test_read_format_rar_seek_data_cursor0.rar.uu A contrib/libarchive/libarchive/test/test_read_format_rar_unbound_staticdata.rar.uu R062 contrib/libarchive/libarchive/test/test_archive_read_close_twice_open_filename.c contrib/libarchive/libarchive/test/test_read_format_tar_acl_oob_read.c A contrib/libarchive/libarchive/test/test_read_format_tar_acl_oob_read.tar.uu M contrib/libarchive/libarchive/test/test_read_format_tar_concatenated.c M contrib/libarchive/libarchive/test/test_read_format_tar_empty_filename.c M contrib/libarchive/libarchive/test/test_read_format_tar_empty_pax.c M contrib/libarchive/libarchive/test/test_read_format_tar_empty_with_gnulabel.c M contrib/libarchive/libarchive/test/test_read_format_tar_filename.c M contrib/libarchive/libarchive/test/test_read_format_tar_mac_metadata.c M contrib/libarchive/libarchive/test/test_read_format_tar_pax_g_large.c M contrib/libarchive/libarchive/test/test_read_format_tar_pax_large_attr.c M contrib/libarchive/libarchive/test/test_read_format_tar_pax_negative_time.c A contrib/libarchive/libarchive/test/test_read_format_tar_pax_sun_holesdata.c A contrib/libarchive/libarchive/test/test_read_format_tar_pax_sun_holesdata.tar.uu A contrib/libarchive/libarchive/test/test_read_format_tar_pax_timestamps.c A contrib/libarchive/libarchive/test/test_read_format_tar_pax_timestamps.tar.uu A contrib/libarchive/libarchive/test/test_read_format_tar_timestamp_overflow.c A contrib/libarchive/libarchive/test/test_read_format_tar_timestamp_overflow.tar.uu M contrib/libarchive/libarchive/test/test_read_format_tgz.c M contrib/libarchive/libarchive/test/test_read_format_ustar_filename.c M contrib/libarchive/libarchive/test/test_read_format_warc.c M contrib/libarchive/libarchive/test/test_read_format_xar.c A contrib/libarchive/libarchive/test/test_read_format_xar_atou64_overread.xar.uu A contrib/libarchive/libarchive/test/test_read_format_xar_base64_oob.xar.uu A contrib/libarchive/libarchive/test/test_read_format_xar_large_mode.xar.uu A contrib/libarchive/libarchive/test/test_read_format_xar_parse_time_overread.xar.uu M contrib/libarchive/libarchive/test/test_read_format_zip.c M contrib/libarchive/libarchive/test/test_read_format_zip_7075_utf8_paths.c M contrib/libarchive/libarchive/test/test_read_format_zip_comment_stored.c M contrib/libarchive/libarchive/test/test_read_format_zip_encryption_data.c M contrib/libarchive/libarchive/test/test_read_format_zip_encryption_header.c M contrib/libarchive/libarchive/test/test_read_format_zip_encryption_partially.c M contrib/libarchive/libarchive/test/test_read_format_zip_filename.c M contrib/libarchive/libarchive/test/test_read_format_zip_jar.c M contrib/libarchive/libarchive/test/test_read_format_zip_mac_metadata.c M contrib/libarchive/libarchive/test/test_read_format_zip_malformed.c M contrib/libarchive/libarchive/test/test_read_format_zip_nested.c M contrib/libarchive/libarchive/test/test_read_format_zip_nofiletype.c M contrib/libarchive/libarchive/test/test_read_format_zip_padded.c A contrib/libarchive/libarchive/test/test_read_format_zip_pkware_unix.zip.uu A contrib/libarchive/libarchive/test/test_read_format_zip_ppmd8_aes256_streaming.zipx.uu M contrib/libarchive/libarchive/test/test_read_format_zip_sfx.c A contrib/libarchive/libarchive/test/test_read_format_zip_size_exceeds_declared.c A contrib/libarchive/libarchive/test/test_read_format_zip_size_exceeds_declared_deflate.zip.uu A contrib/libarchive/libarchive/test/test_read_format_zip_size_exceeds_declared_stored.zip.uu A contrib/libarchive/libarchive/test/test_read_format_zip_symlink_unsupported_compression.c A contrib/libarchive/libarchive/test/test_read_format_zip_symlink_unsupported_compression.zip.uu M contrib/libarchive/libarchive/test/test_read_format_zip_traditional_encryption_data.c A contrib/libarchive/libarchive/test/test_read_format_zip_uncompressed_size_off_by_4gib.c A contrib/libarchive/libarchive/test/test_read_format_zip_uncompressed_size_off_by_4gib.zip.uu M contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes.c A contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes256_large_bzip2.zip.uu A contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes256_large_lzma.zip.uu A contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes256_large_ppmd.zip.uu A contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes256_large_xz.zip.uu A contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes256_large_zstd.zip.uu M contrib/libarchive/libarchive/test/test_read_format_zip_winzip_aes_large.c M contrib/libarchive/libarchive/test/test_read_format_zip_with_invalid_traditional_eocd.c M contrib/libarchive/libarchive/test/test_read_format_zip_zip64.c A contrib/libarchive/libarchive/test/test_read_format_zip_zipx_encrypted.c A contrib/libarchive/libarchive/test/test_read_format_zip_zipx_lzma_oom.c A contrib/libarchive/libarchive/test/test_read_format_zip_zipx_lzma_oom.zipx.uu M contrib/libarchive/libarchive/test/test_read_pax_empty_val_no_nl.c M contrib/libarchive/libarchive/test/test_read_pax_xattr_rht_security_selinux.c M contrib/libarchive/libarchive/test/test_read_pax_xattr_schily.c M contrib/libarchive/libarchive/test/test_read_set_format.c M contrib/libarchive/libarchive/test/test_sparse_basic.c M contrib/libarchive/libarchive/test/test_ustar_filename_encoding.c M contrib/libarchive/libarchive/test/test_write_disk_appledouble.c M contrib/libarchive/libarchive/test/test_write_disk_hfs_compression.c M contrib/libarchive/libarchive/test/test_write_disk_mac_metadata.c M contrib/libarchive/libarchive/test/test_write_disk_no_hfs_compression.c M contrib/libarchive/libarchive/test/test_write_disk_secure.c M contrib/libarchive/libarchive/test/test_write_disk_secure744.c M contrib/libarchive/libarchive/test/test_write_disk_secure745.c M contrib/libarchive/libarchive/test/test_write_disk_secure746.c M contrib/libarchive/libarchive/test/test_write_disk_secure_noabsolutepaths.c M contrib/libarchive/libarchive/test/test_write_filter_b64encode.c M contrib/libarchive/libarchive/test/test_write_filter_bzip2.c M contrib/libarchive/libarchive/test/test_write_filter_gzip.c M contrib/libarchive/libarchive/test/test_write_filter_lrzip.c M contrib/libarchive/libarchive/test/test_write_filter_lz4.c M contrib/libarchive/libarchive/test/test_write_filter_lzip.c M contrib/libarchive/libarchive/test/test_write_filter_lzma.c M contrib/libarchive/libarchive/test/test_write_filter_lzop.c M contrib/libarchive/libarchive/test/test_write_filter_uuencode.c M contrib/libarchive/libarchive/test/test_write_filter_xz.c M contrib/libarchive/libarchive/test/test_write_filter_zstd.c M contrib/libarchive/libarchive/test/test_write_format_7zip.c M contrib/libarchive/libarchive/test/test_write_format_7zip_empty.c M contrib/libarchive/libarchive/test/test_write_format_7zip_large.c M contrib/libarchive/libarchive/test/test_write_format_gnutar.c M contrib/libarchive/libarchive/test/test_write_format_gnutar_filenames.c A contrib/libarchive/libarchive/test/test_write_format_gnutar_huge.c M contrib/libarchive/libarchive/test/test_write_format_iso9660.c M contrib/libarchive/libarchive/test/test_write_format_iso9660_boot.c A contrib/libarchive/libarchive/test/test_write_format_iso9660_bugs.c M contrib/libarchive/libarchive/test/test_write_format_iso9660_empty.c M contrib/libarchive/libarchive/test/test_write_format_iso9660_filename.c A contrib/libarchive/libarchive/test/test_write_format_iso9660_joliet_id.c A contrib/libarchive/libarchive/test/test_write_format_iso9660_joliet_overflow.bin.uu A contrib/libarchive/libarchive/test/test_write_format_iso9660_null_deref.bin.uu R051 contrib/libarchive/libarchive/test/test_archive_read_set_format_option.c contrib/libarchive/libarchive/test/test_write_format_iso9660_rockridge.c A contrib/libarchive/libarchive/test/test_write_format_iso9660_rockridge_overflow.c A contrib/libarchive/libarchive/test/test_write_format_iso9660_underflow.bin.uu M contrib/libarchive/libarchive/test/test_write_format_iso9660_zisofs.c A contrib/libarchive/libarchive/test/test_write_format_iso9660_zisofs_overflow.c M contrib/libarchive/libarchive/test/test_write_format_mtree.c A contrib/libarchive/libarchive/test/test_write_format_mtree_absolute.c A contrib/libarchive/libarchive/test/test_write_format_mtree_dotdot.c A contrib/libarchive/libarchive/test/test_write_format_mtree_null_deref.bin.uu A contrib/libarchive/libarchive/test/test_write_format_mtree_null_deref.c M contrib/libarchive/libarchive/test/test_write_format_mtree_preset_digests.c M contrib/libarchive/libarchive/test/test_write_format_pax.c A contrib/libarchive/libarchive/test/test_write_format_pax_align.c A contrib/libarchive/libarchive/test/test_write_format_tar_empty_dirname.c M contrib/libarchive/libarchive/test/test_write_format_tar_ustar.c M contrib/libarchive/libarchive/test/test_write_format_warc.c M contrib/libarchive/libarchive/test/test_write_format_xar.c A contrib/libarchive/libarchive/test/test_write_format_xar_bugs.c M contrib/libarchive/libarchive/test/test_write_format_xar_empty.c A contrib/libarchive/libarchive/test/test_write_format_xar_fflags.c A contrib/libarchive/libarchive/test/test_write_format_xar_strcpy_overlap.bin.uu A contrib/libarchive/libarchive/test/test_write_format_xar_underflow.bin.uu M contrib/libarchive/libarchive/test/test_write_format_zip.c R097 contrib/libarchive/libarchive/test/test_write_format_zip_compression_lzmaxz.c contrib/libarchive/libarchive/test/test_write_format_zip_compression_lzma_xz.c A contrib/libarchive/libarchive/test/test_write_format_zip_empty_pathname.c A contrib/libarchive/libarchive/test/test_write_format_zip_long_pathname.c M contrib/libarchive/libarchive/test/test_write_format_zip_windows_path.c M contrib/libarchive/libarchive/test/test_write_format_zip_zip64.c M contrib/libarchive/libarchive/test/test_write_read_format_zip.c M contrib/libarchive/libarchive/xxhash.c A contrib/libarchive/libarchive_fe/lafe_fnmatch.c A contrib/libarchive/libarchive_fe/lafe_fnmatch.h M contrib/libarchive/tar/bsdtar.h M contrib/libarchive/tar/read.c M contrib/libarchive/tar/subst.c M contrib/libarchive/tar/test/test_option_P_upper.c M contrib/libarchive/tar/test/test_option_mtime.c M contrib/libarchive/tar/test/test_option_s.c A contrib/libarchive/tar/test/test_option_stdout_size_exceeds_declared.c A contrib/libarchive/tar/test/test_option_stdout_size_exceeds_declared_deflate.zip.uu A contrib/libarchive/tar/test/test_option_stdout_size_exceeds_declared_stored.zip.uu M contrib/libarchive/tar/test/test_stdio.c M contrib/libarchive/tar/util.c M contrib/libarchive/tar/write.c M contrib/libarchive/test_utils/test_main.c M contrib/libarchive/test_utils/test_utils.c M contrib/libarchive/unzip/bsdunzip.c M contrib/libarchive/unzip/bsdunzip_platform.h M contrib/libarchive/unzip/test/test_I.c M contrib/libarchive/unzip/test/test_P_encryption.c A contrib/libarchive/unzip/test/test_f.c A contrib/libarchive/unzip/test/test_f_new.zip.uu A contrib/libarchive/unzip/test/test_f_old.zip.uu A contrib/libarchive/unzip/test/test_symlink.c A contrib/libarchive/unzip/test/test_symlink_1.zip.uu A contrib/libarchive/unzip/test/test_symlink_2.zip.uu A contrib/libarchive/unzip/test/test_symlink_dotdot.c A contrib/libarchive/unzip/test/test_symlink_dotdot.zip.uu A contrib/libarchive/unzip/test/test_u.c A contrib/libarchive/unzip/test/test_u_new.zip.uu A contrib/libarchive/unzip/test/test_u_old.zip.uu M lib/libarchive/tests/Makefile M usr.bin/tar/tests/Makefile M usr.bin/unzip/tests/Makefile _____________________________________________________________________________________________________________ Commit: 86255d85e228d0e7e7b18c225e86b9040da17656 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=86255d85e228d0e7e7b18c225e86b9040da17656 Author: Kevin Bowling (Mon 24 Aug 2026 09:18:43 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 09:18:43 BST) ixl: Fix build after VF reset changes VF_FLAG_INITIALIZED belongs to the SR-IOV status-reporting interface, which was not merged to stable/15. The VF reset MFCs accidentally kept two status-only clears without the flag definition or the corresponding set operation. Remove the clears rather than pulling the unrelated reporting interface into stable/15. They do not participate in hardware reset sequencing. Fixes: d252dd2a841c ("ixl: Rebuild VF resources after a PF reset") Fixes: 1319574637fb ("ixl: Quiesce VF DMA before a PF reset") M sys/dev/ixl/ixl_pf_iov.c _____________________________________________________________________________________________________________ Commit: ef676ecff1c36b9273394c5628313e65ba420a20 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=ef676ecff1c36b9273394c5628313e65ba420a20 Author: Kristof Provost (Fri 7 Aug 2026 15:07:09 BST) Committer: Kristof Provost (Mon 24 Aug 2026 08:17:28 BST) pfsync: handle large MTU pfsync interfaces pfsync packets were allocated with m_get2(), which can't return packets larger than MJUMPAGESIZE. As a result 9k MTU pfsync interfaces simply didn't work. Use m_get3(), which can allocate sufficiently large mbufs. Extend the pfsync:bulk test case to provoke this problem. PR: 297307 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=297307 ) MFC after: 2 weeks Sponsored by: Rubicon Communications, LLC ("Netgate") (cherry picked from commit 7e2781fdcfdbe489cc07572d33dc36bca06a342d) M sys/netpfil/pf/if_pfsync.c M tests/sys/netpfil/pf/pfsync.sh _____________________________________________________________________________________________________________ Commit: 008259bb83551cf3d61f273b9bab682e00fa7940 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=008259bb83551cf3d61f273b9bab682e00fa7940 Author: Cy Schubert (Tue 18 Aug 2026 00:23:32 BST) Committer: Cy Schubert (Mon 24 Aug 2026 06:35:13 BST) ipfilter: Fix checksum update for NAT_DIVERTOUT When taking a snapshot of the before ip_len (s1) for comparison with the after-translated ip_len (s2), we must convert it from network to host byte order before we can use it. Add the missing ntohs() call. PR: 296944 ( https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296944 ) MFC after: 3 days (cherry picked from commit c08a97fa27b914988ef092352872b2f455abb7c3) M sys/netpfil/ipfilter/netinet/ip_nat.c _____________________________________________________________________________________________________________ Commit: dfbc676666f94bc58ab963b57334179775a83653 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dfbc676666f94bc58ab963b57334179775a83653 Author: Kevin Bowling (Mon 10 Aug 2026 17:02:16 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:52:19 BST) ixgbe: Recognize production X550 PHY IDs According to Linux 5f1c3589b0f0, the X550 PHY classifier still matches an alpha silicon ID, while the shared definitions contain the two production IDs. This can leave production hardware on the generic probing path and issue unnecessary PHY queries. (cherry picked from commit 392f0af6685a06e89fecdc38cc2e910d2b84d738) M sys/dev/ixgbe/ixgbe_phy.c _____________________________________________________________________________________________________________ Commit: dc670f157cc435c20859aa61731618c5032e2d30 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=dc670f157cc435c20859aa61731618c5032e2d30 Author: Kevin Bowling (Mon 10 Aug 2026 16:53:10 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:52:07 BST) ixgbe: Preserve the full VF RSS domain in the shared RETA The 82599 and X540 share the global RSS redirection table between the PF and its VFs. Programming that table from the PF queue count prevents a VF from using queue indices absent from the PF layout. A one-queue PF consequently directs every flow for a two- or four-queue VF to queue zero. Program at least four queue indices while SR-IOV is active. Each pool PSRTYPE.RQPL field masks the shared table to the queue subset available to that function, so the PF can continue using fewer queues. (cherry picked from commit 8b668bc7e7c8b0a1bcb018360a4aafa445ff554f) M sys/dev/ixgbe/if_ix.c _____________________________________________________________________________________________________________ Commit: 7316de43009550eff8348c763f842efb742c5e6e URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7316de43009550eff8348c763f842efb742c5e6e Author: Kevin Bowling (Mon 10 Aug 2026 17:29:24 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:51:57 BST) ixgbe: Add 10GBase-BX BiDi SFP+ module support 10G-BX optics use paired wavelengths to carry 10 Gb/s Ethernet over a single strand of single-mode fiber. Their 10G compliance byte is empty, so identify them from the SFF-8472 nominal signaling rate and single-mode reach fields. When an EEPROM also advertises 1G BASE-BX10, give the complete 10G bitrate and reach signature precedence. Otherwise retain FreeBSD's permissive 1G-BX identification rather than requiring a nominal 1.3 GBd rate. Relnotes: yes (cherry picked from commit f9ce33b0d8ef233063bd6c27bdba2580f97d9094) M sys/dev/ixgbe/if_ix.c M sys/dev/ixgbe/ixgbe_82599.c M sys/dev/ixgbe/ixgbe_phy.c M sys/dev/ixgbe/ixgbe_phy.h M sys/dev/ixgbe/ixgbe_type.h M sys/dev/ixgbe/ixgbe_x550.c _____________________________________________________________________________________________________________ Commit: 7dd9e379c0238e5612fd3db1a2deb207ad10dc58 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7dd9e379c0238e5612fd3db1a2deb207ad10dc58 Author: Kevin Bowling (Mon 10 Aug 2026 17:28:14 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:51:47 BST) net: Add ifmedia support for 10GBase-BX BiDi 10GBase-BX uses paired wavelengths to carry both directions over a single strand of single-mode fiber. The optics must be paired so that the transmit and receive wavelengths cross over. (cherry picked from commit 4220b52453c9701922955dcc1c1e1554d6a9f3ae) M sys/net/if_media.h _____________________________________________________________________________________________________________ Commit: 66972c47226128ed56e0258d7873f2fde72ad44a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=66972c47226128ed56e0258d7873f2fde72ad44a Author: Kevin Bowling (Mon 10 Aug 2026 16:12:43 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:51:35 BST) ixgbe: Expose EEE LPI event counters X550-family devices provide clear-on-read counters for transmit and receive Low Power Idle events. Accumulate each register once in the normal statistics poll and expose the monotonic totals below the eee sysctl node. Document the counters together with the existing EEE control. Obtained from: Intel ix 3.4.39 (cherry picked from commit ff86fd4f36618dacf1628180034c312c70294276) M share/man/man4/ix.4 M sys/dev/ixgbe/if_ix.c M sys/dev/ixgbe/ixgbe_type.h _____________________________________________________________________________________________________________ Commit: aa7d9c250b8ca33eb808e028d6bb211cec5a5912 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=aa7d9c250b8ca33eb808e028d6bb211cec5a5912 Author: Kevin Bowling (Mon 10 Aug 2026 16:11:01 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:51:25 BST) ixv: Report multigigabit link speeds The VF link-status path can receive 2.5 and 5 Gb/s speed bits from X550-family PFs, but media reporting has no cases for them. The bootverbose message also assumes every non-10-Gb/s link is 1 Gb/s. Expose the corresponding ifmedia subtypes and derive the diagnostic speed through the shared link-speed conversion helper. (cherry picked from commit a884921abbaf52ff862a32ff6806bf071974faa6) M sys/dev/ixgbe/if_ixv.c _____________________________________________________________________________________________________________ Commit: c8d38edfa266266a2ad20595c248124b3c4e138d URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c8d38edfa266266a2ad20595c248124b3c4e138d Author: Kevin Bowling (Mon 10 Aug 2026 16:09:56 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:51:15 BST) ixgbe: Compare flow control against requested mode The flow-control sysctl represents the configured policy, while current_mode is the mode negotiated with the link partner. Comparing a new request with current_mode can needlessly reprogram an unchanged policy or skip a requested policy change that happens to match the current negotiation result. Compare with requested_mode before deciding that no update is needed. (cherry picked from commit c410551b9feadf9b65f920fd25714fcda8299a56) M sys/dev/ixgbe/if_ix.c _____________________________________________________________________________________________________________ Commit: c7f0473df2ed901f9c6559fb152c457dc4296c13 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=c7f0473df2ed901f9c6559fb152c457dc4296c13 Author: Kevin Bowling (Mon 10 Aug 2026 16:09:41 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:51:04 BST) ixgbe: Validate EEPROM checksum section bounds The generic checksum walker trusts NVM section pointers and lengths and iterates with a 16-bit index. A corrupt section that crosses the end of the EEPROM can wrap the index and leave the driver in an effectively unbounded read loop during attach. Validate each non-empty section against the discovered EEPROM word size before reading it, and use widened arithmetic for the inclusive end and iterator. (cherry picked from commit be3e1068ea8699fb719691453899ca20a601fe1d) M sys/dev/ixgbe/ixgbe_common.c _____________________________________________________________________________________________________________ Commit: 7ea168178477c211dc288e7e04165dca53f6a307 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=7ea168178477c211dc288e7e04165dca53f6a307 Author: Kevin Bowling (Mon 10 Aug 2026 16:09:29 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:50:20 BST) ixgbe: Restore missed packet accounting missed_rx and total_missed_rx are never populated. As a result, the GPRC erratum workaround does not remove missed packets and iqdrops always remains zero. The rx_missed_packets sysctl and input-error total also expose only MPC bank zero. Read and accumulate all eight MPC banks. Use the interval total to correct GPRC and the cumulative total for iqdrops, input errors, and the aggregate sysctl. This matches DPDK's coverage of the hardware banks. (cherry picked from commit 660099c985e8bfc931b01398715441c90cf0d4db) M sys/dev/ixgbe/if_ix.c _____________________________________________________________________________________________________________ Commit: 09132e3cc15d6202cbc67310e5399358256baf4b URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=09132e3cc15d6202cbc67310e5399358256baf4b Author: Kevin Bowling (Mon 10 Aug 2026 16:08:49 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:50:10 BST) ixgbe: Preserve VF jumbo frame size across PF resets sc->max_frame_size represents the largest frame requested by the PF or an active VF. The MTU callback replaces it with the PF frame size, so a subsequent reinitialization can program MHADD below an active VF's jumbo-frame request. Recompute the aggregate before hardware initialization and use it when programming MHADD. Recompute after each VF LPE request as well, so a reduced request can lower the hardware limit when no other function needs the previous value. (cherry picked from commit 877f0ee40c2af801c5ca758a37b3ebddc560dad2) M sys/dev/ixgbe/if_ix.c M sys/dev/ixgbe/if_sriov.c _____________________________________________________________________________________________________________ Commit: 1319574637fb15f3ce176ce1638e25db05340c9a URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=1319574637fb15f3ce176ce1638e25db05340c9a Author: Kevin Bowling (Mon 10 Aug 2026 12:56:57 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:49:57 BST) ixl: Quiesce VF DMA before a PF reset A PF reset has a warning interval before the hardware reset begins. Cooperative VF drivers respond to the reset event by stopping and releasing their receive buffers, but notifying VFs did not stop the hardware queues. An active VF could therefore DMA through its old rings into freed mbuf clusters during the warning interval. Put every enabled VF in reset, drain its PCIe transactions, disable its queues, wait for receive queue shutdown, and drain transactions again before tearing down the PF HMC and AdminQ. Hold VFs in reset again while rebuilding the firmware topology. Release VF reset before programming the replacement VSI and queue mappings, since VF reset clears those registers, and publish VFACTIVE only after reconstruction succeeds. Leave a VF held in reset if rebuilding it fails. Fixes: 983e628a0c47 ("ixl: Rebuild VF resources after a PF reset") (cherry picked from commit 0048dfddc049f3ef050ba16544f42503d5c42db8) M sys/dev/ixl/ixl_pf.h M sys/dev/ixl/ixl_pf_iflib.c M sys/dev/ixl/ixl_pf_iov.c _____________________________________________________________________________________________________________ Commit: 924a15ac2f19b98a40d71ebe15b973e3865ab4a6 URL: https://git.freebsd.catflap.wales/src/stable-15/commit/?id=924a15ac2f19b98a40d71ebe15b973e3865ab4a6 Author: Kevin Bowling (Mon 10 Aug 2026 11:54:26 BST) Committer: Kevin Bowling (Mon 24 Aug 2026 01:49:42 BST) iavf: Resume AdminQ processing after PF reset A PF reset indication leaves IAVF_STATE_RESET_PENDING set while the VF recreates its AdminQ and negotiates new resources. The ordinary AdminQ task refuses to consume messages while that state is set. Consequently, the first DISABLE_QUEUES reply after successful mailbox rediscovery remains in the receive queue and initialization times out. Later retries and manual interface restarts repeat the same cycle. Clear the stale reset indication once VERSION and GET_VF_RESOURCES have succeeded, before enabling interrupts and resuming normal virtchnl requests. (cherry picked from commit 02fbb1ce07f60fab82e21e5bbe2dae85f024bb55) M sys/dev/iavf/if_iavf_iflib.c ____________________________________________________________________________________________________________