FreeBSD git weekly: 2026-06-29 to 2026-07-05

Introduction

This is a display of mostly-automatically-classified git commits from 2026-06-29 to 2026-07-05.

Table of contents and commits per category:

(1) Highlighted commits (these are copies, not in stats)
0 0.0% Userland programs
3 2.1% Documentation
18 12.6% Hardware support
10 7.0% Networking
7 4.9% System administration
10 7.0% Libraries
6 4.2% Filesystems
26 18.2% Kernel
3 2.1% Build system
3 2.1% Internal organizational stuff
10 7.0% Testing
3 2.1% Style, typos, and comments
5 3.5% Contrib code
39 27.3% Reverted commits
0 0.0% Unclassified commits
143 100% total
Technical notes about this page

Highlighted commits

For extra visibility, these are copies of commits found in other sections. Most (if not all) come from the commit message containing "Relnotes:", or commits modifying UPDATING.

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 <jhb@FreeBSD.org>
Differential Revision:  https://reviews.freebsd.org/D57974
08cda4bcd43cfcb2c0b1abd29bc7cd30896727bc Andrew Gallatin 2026-07-01 00:53:15

Userland programs

Commits about commands found in man section 1 (other than networking).

-- no commits in this category this week --

Documentation

Man pages, release notes, etc.

ntsync.4: be explicit about the effect of automatic vs manual event on waiters
Sponsored by: The FreeBSD Foundation
MFC after:      3 days
65251c43415aa0993b7d43962cbb71d772870c83 Konstantin Belousov 2026-06-29 06:09:17
ctfmerge.1: Import ENVIRONMENT from NetBSD
Import the ENVIRONMENT section from NetBSD, minus the variable that our
ctfmerge does not have. Alphabetize them, polish grammar and alignment,
and add the variables to the man database. While here, remove whitespace
from the end of some lines to quiet linter.

MFC after:      3 days
PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=291186
Co-authored-by: Alexander Ziaee <ziaee@FreeBSD.org>
Obtained from:  NetBSD (christos <christos@NetBSD.org>, 8a0c0d8)
Differential Revision:  https://reviews.freebsd.org/D54054
32cf24b725fdf899fb642c47004b69fcfae9b9db Wolfram Schneider 2026-06-30 13:20:41
ps.1: Fix broken comment line
While here, remove the long-unused dash in the first line.

Reviewed by:    ziaee, olce
Fixes:          https://cgit.freebsd.org/src/commit/?id=ddf144a04b53 ("ps.1: Revamp: Explain general principles, update to match reality")
MFC after:      1 day
Differential Revision:  https://reviews.freebsd.org/D58038
759ce9a2b38e1de70c14c81dee7e245bf0bc6b94 Artem Bunichev 2026-07-05 19:01:36

Hardware support

Hardware drivers and architecture-specific code.

generic_ehci_fdt: fix driver softc size
This subclass declares its own softc structure adding necessary members
after the embedded ehci_softc_t. The full size of the struct must be
included in the driver declaration, otherwise the allocation backing the
softc is not guaranteed to be large enough.

Reported by:    KASAN
Reviewed by:    jrtc27, manu
Fixes: https://cgit.freebsd.org/src/commit/?id=7a58744fd0f1 ("Split out the attachment from the generic-ehci driver")
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57951
d5332d3a904242cb82e7dbf35e4aeec7c2df4402 Mitchell Horne 2026-06-30 14:58:11
evdev: use a prometheus-safe label for ev_sysctl_tree
Prometheus doesn't allow spaces, let's normalize this to what we use
elsewhere for consistency.  The sysctl exporter could probably do this
itself, but let's decouple that from the immediate problem: matching the
label between the exported data and in-tree is nice for greppability.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296179
Reviewed by:    asomers, wulf
Differential Revision:  https://reviews.freebsd.org/D57966
cb8bda40695f5d402f334f48795b1ab27b72dce5 Kyle Evans 2026-06-30 16:51:57
Commit group #0: asmc
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
bb1e071be47fa03accadace587784c85654de91e Abdelkader Boudih 2026-07-01 00:13:42

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
6a1bd5212f290933d1429a6d4787394ee53e3181 Abdelkader Boudih 2026-07-01 00:15:24

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
126f82a3eb613976f477aa8326a208459f60465d Abdelkader Boudih 2026-07-01 00:15:51
rge: Fix 32-bit powerpc build
Book-E powerpc has 64-bit bus_addr_t but only a 32-bit bus_size_t.  Use
the right macros for maxsize and maxsegsize to fix the build.

Fixes:  https://cgit.freebsd.org/src/commit/?id=4bf8ce037 ("if_rge: initial import of if_rge driver from OpenBSD.")
Reviewed by:    adrian
Differential Revision:  https://reviews.freebsd.org/D57794
2b5d1d8e298b2f5aff68fd5106d9b09d59fda907 Justin Hibbits 2026-07-01 02:30:24
hym8563: Fix 32-bit powerpc build
Depend on clknode_if.h in the module Makefile, so that it gets
explicitly built for the module.  Also, reduce the #if guards to only
the new clock output code, and gate them on all powerpc, not just
powerpc64.

Fixes:  https://cgit.freebsd.org/src/commit/?id=6b77d34f ("HYM8563: Add support for clock output.")
Reviewed by:    mmel
Differential Revision:  https://reviews.freebsd.org/D57795
a8566c71ce4640d1339a64384f0089cffb249b2c Justin Hibbits 2026-07-01 02:30:31
powerpc/pmap: Fix 32-bit Book-E build
17f02f732dfdc29154fa3b6b664e6da1a577a839 Justin Hibbits 2026-06-22 22:51:54
powerpc: Remove DPAA from MPC85XX, it's 64-bit only now
21ae6119bbd03eb3ac4cf87df4e26f8ae0ffb78e Justin Hibbits 2026-06-22 22:53:37
powerpc/conf: Remove temporary additions from QORIQ64
These were added during the DPAA driver rewrite, and should not have
gone in then.  Remove them.
a88932b42c36b179656fd71ce6ce9907447da6af Justin Hibbits 2026-06-22 02:13:31
x86: add CPUID bits for SHA512/SM3/SM4
Reviewed by:  mav
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D58003
cf851111b02fae7425f9642460762d644983fdca Konstantin Belousov 2026-07-01 23:29:04
usb/quirks: Add entry for Verbatim Store'n'Go
PR:           https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=199101
MFC after:      1 week
Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D57929
e1a0592ccd8141c609b45dfbe2fba13929ee4d51 Damian Weber 2026-07-02 12:59:36
usb/quirks: Sort the USB mass storage quirks
MFC after:    1 week
Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D57930
43da0c93ff9da32fda89d58727cd9bbe7beea4c9 Dag-Erling Smørgrav 2026-07-02 12:59:42
acpi: ignore wake button press replayed by firmware on resume
Some firmware delivers the power or sleep button press that woke the
system as an ordinary button press (Notify 0x80) shortly after resume,
rather than as the wakeup notification (Notify 0x02) the ACPI
specification requires for a button that is also a wake source.

On affected machines (e.g. the Framework Laptop 12, Intel Raptor Lake-P)
the power button is a control-method device behind the embedded
controller.  The EC latches the key press that woke the system across the
sleep transition and flushes it through its normal _Qxx query path as
soon as it is reinitialized on resume.  The replayed press is
indistinguishable from a genuine one, so the kernel honors it as a fresh
suspend request and the machine suspends again immediately after waking;
it cannot be kept awake with the button.

The event cannot be filtered at its source: it arrives over the same EC
query path that also carries legitimate events (lid, AC, thermal,
battery), so suppressing the drain would lose real notifications.
Instead, record the time of resume and ignore a button-initiated suspend
that arrives within a short grace window of it.  The timestamp is taken
before DEVICE_RESUME() re-initializes the EC, so it is set before the
replay can be processed on the ACPICA notify taskqueue; otherwise the
replay can be evaluated before the timestamp is written and slip through.
Measured from that point, the replay lands at ~600 ms across many cycles
on a Framework Laptop 12, whereas a deliberate press cannot occur that
quickly -- it happens well after the display is back -- so a one-second
window separates the two without ignoring real presses for any
perceptible time.

Spec-compliant firmware reports the wake as Notify 0x02, which is handled
on a different path and never reaches this check, so there is no change
in behavior on such systems.

The replay window is a fixed compile-time constant rather than a tunable
on purpose: it tracks a hardware characteristic -- the EC's post-resume
replay latency -- not a user policy, so there is no value a user would
meaningfully choose.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296243
Reviewed by:    adrian, imp (earlier revision), olce
MFC after:      2 weeks
Differential Revision:  https://reviews.freebsd.org/D57712
d1b62492f97f5044b498fa4624e3a007a43efa6f Devin Teske 2026-06-20 16:17:40
hwpstate_intel(4): Use new cpu_get_pcpuid(), constify related variables
Also, add a check in the attach method that a per-CPU structure is
provided by the bus.  This allows to remove such checks in multiple
functions.  The check cannot currently fail as all x86 CPU drivers
(ACPI, legacy) provide the CPU_IVAR_PCPU instance variable, but it is
safer to have it, especially as an example to other driver writers.

Event:          Halifax Hackathon 202606
Location:       Seat 36K in AC667, still waiting for a gate at Montréal-Trudeau
Sponsored by:   The FreeBSD Foundation
74e43f631b51089e040e40b9887e94c1585203f9 Olivier Certner 2026-06-26 22:41:20
hwpstate_amd(4): Use new cpu_get_pcpuid(), constify related variables
Also, add a check in the attach method that a per-CPU structure is
provided by the bus.  This allows to remove such checks in multiple
functions.  The check cannot currently fail as all x86 CPU drivers
(ACPI, legacy) provide the CPU_IVAR_PCPU instance variable, but it is
safer to have it, especially as an example to other driver writers.

Event:          Halifax Hackathon 202606
Location:       Seat 25A in AF0349, before leaving Montréal-Trudeau
Sponsored by:   The FreeBSD Foundation
7e0df6af8dd0f7d1ab77ecc0c41cb543e015eeb1 Olivier Certner 2026-06-27 02:16:42
iwn: assign sequence number to raw transmit frames
This fixes associating to various APs.

It worked fine to a FreeBSD AP (which is a wholly separate problem
I'm going to need to dive into) but not to my tplink AX1800 Wifi-6
router.

PR: kern/https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296503

Locally tested:

* STA: Intel Centrino Advanced-N 6205 (iwn), Lenovo T420
* AP: TP-Link AX1800 wifi-6 router
830f690eb676ab1223bfc887a8d70691a355a656 Adrian Chadd 2026-07-03 23:06:22
fwip: Fix M_PKTHDR loss in fwip_async_output broadcast path
M_PREPEND in the broadcast branch may call m_prepend(9) which allocates
a new head mbuf and calls m_move_pkthdr(), stripping M_PKTHDR from the
old mbuf.

xfer->mbuf was set before M_PREPEND, so it pointed at the
deheadered old mbuf. bus_dmamap_load_mbuf(9) asserts M_PKTHDR and
panics.

Reviewed by:    zlei, adrian
Differential Revision:  https://reviews.freebsd.org/D57495
22ddc9eb1d7a4fffe78b0692bdc4ec03e1d04ac4 Abdelkader Boudih 2026-07-05 18:26:05

Networking

Network-related commands, library, and kernel.

loopback: use new names for checksum offloading flags
No functional change intended.

Reviewed by:            tuexen
MFC after:              1 week
Differential Revision:  https://reviews.freebsd.org/D57945
bcf4e3c001f5ec9cc206b0d81f0954559d1424d8 Timo Völker 2026-06-29 20:03:46
protocols: remove IPPROTO_DIVERT
f9a0147ee56e002fe31f155dcb2a7042f5b20a7e Gleb Smirnoff 2026-06-29 20:14:00
netinet6: cleanse safeguards against IFT_PFLOG
This "interface" type is no more.  Leave the constant in if_types.h, we
probably need an exp-run before removing it.
bdd0c4d0a7fe6db4c2c8f66fa260abe9d3049118 Gleb Smirnoff 2026-06-29 20:18:31
pflog: run VNET_SYSUNINIT in SI_SUB_PROTO_FIREWALL
Suggested by: pouria, glebius
Sponsored by:   Rubicon Communications, LLC ("Netgate")
b8c6f5811b2a948a265a4bd90d33a18efb2a6f1e Kristof Provost 2026-06-29 14:05:52
libalias: Fix buffer overflow in RTSP aliasing
In alias_rtsp_out(), we construct a new packet in a fixed-length buffer
before copying it back into the original buffer.  We never checked if
the data we were writing to this temporary buffer fit in it, nor if the
result fit in the original buffer.

* Use a dynamically sized allocated buffer instead of a fixed-length
  stack buffer.

* Check for overflow before appending to our temporary buffer.

* Check for overflow before copying the data back to the packet buffer.

* While here, use size_t for sizes and bool for booleans.

Approved by:    so
Security:       FreeBSD-SA-26:41.libalias
Security:       CVE-2026-49420
MFC after:      1 week
Reviewed by:    markj
Differential Revision:  https://reviews.freebsd.org/D57753
271b8f0f090836393d835219c37ae7e41ac39357 Dag-Erling Smørgrav 2026-06-28 22:10:40
rack: Reload the TCP stack PCB after reacquiring the inpcb lock
Malicious userspace might switch TCP stacks twice while the inpcb lock
is dropped.  If it does so, the validation of tp->t_fb might succeed,
but the saved pointer to the stack PCB might be invalid.  Reload it to
avoid this problem, as BBR already does.

Approved by:    so
Security:       FreeBSD-SA-26:43.tcp
Security:       CVE-2026-49422
Reported by:    Maik Münch
Reviewed by:    tuexen
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57791
eec9084656bcd7dd52f8f564c96dc6aced5be554 Mark Johnston 2026-06-23 21:46:17
net80211: fix CCMP/GCMP AAD for MFP frames
Update ieee80211_crypto_init_aad() to do what 802.11-2020 says -
only mask fc[0] bits 4-6 on data frames, not on management frames.
This (with other diffs to actually negotiate MFP and configure
ath(4) for MFP + software keys) allows the CCMP path to decrypt
CCMP MFP frames in the software path.

Differential Revision:  https://reviews.freebsd.org/D57799
a2d087b67e14ea2a2496d6424df8d9668e271177 Adrian Chadd 2026-07-01 00:18:00
inpcb: use correct mask in in6_pcblookup_lbgroup()
There is no visible bug fixed as in current tree masks are the same.

Fixes:  https://cgit.freebsd.org/src/commit/?id=6883b120c53735ff1681ef96d257f376731f56b3
6b75f8ff5e1b0d7ac7d576c1723d734681247fbf Gleb Smirnoff 2026-07-01 05:40:22
netlink: add const variants of NLA iteration macros
Add const-qualified versions of the NLA iteration helpers to allow
walking immutable netlink attribute buffers without discarding const
qualifiers.

This introduces NLA_NEXT_CONST(), _NLA_END_CONST(), and
NLA_FOREACH_CONST() in netlink_snl.h.

Signed-off-by: Ishan Agrawal <iagrawal9990@gmail.com>
Sponsored-by : Google LLC (GSoC 2026)
c9d98c0134864d8bc69006b92d34a3b22c940870 Ishan Agrawal 2026-06-28 04:14:28
truss: track Netlink socket protocols
Record the Netlink protocol associated with AF_NETLINK sockets when
they are created and pass it to libsysdecode during message decoding.

Use the protocol to distinguish between Generic Netlink and Route
Netlink sockets, ensuring that Generic Netlink decoding is only
performed for NETLINK_GENERIC sockets.

Signed-off-by:  Ishan Agrawal <iagrawal9990@gmail.com>
Reviewed by:    kp
Sponsored-by :  Google LLC (GSoC 2026)
8a1576dc26b90706948061e5ed33f07a03a5899c Ishan Agrawal 2026-07-04 03:40:31

System administration

Stuff in man section 8 (other than networking).

Commit group #1: rtld
rtld: add spinlock around the crt malloc calls

Right now, the rtld malloc is called under the write-locked rtld bind
lock. A future change adds places where only read-locked rtld bind lock
is held, and then the spinlock protects the malloc structures from the
parallel updates.

Reviewed by:    kevans
Tested by:      Marek Zarychta <zarychtam@plan-b.pwste.edu.pl>
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D57908
559f45638dfa50195c591bb0f7f3d3d8f3bb8dc0 Konstantin Belousov 2026-06-27 18:50:29

rtld: stop using unbound alloca()

For DoneList allocations, its size depends on the number of loaded DSOs.
Small images could be served by alloca(), but large donelists need to
go into heap.

For map_object(), alloca size is the number of segments in the object.

In both cases, over-grown situations would cause a stack overflow.

PR:     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295991
Noted and reviewed by:  kevans
Tested by:      Marek Zarychta <zarychtam@plan-b.pwste.edu.pl>
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D57908
1e370f038778e16c4b31f8992dda339d429e5cb8 Konstantin Belousov 2026-06-27 15:11:37

rtld: unify the return path for map_object()

Reviewed by:    kevans
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D57908
70fb92cd56bfe88a12d2a253542320bad7198321 Konstantin Belousov 2026-06-29 20:08:31
stand: Fix shadow buffer offset handling
The shadow buffer is addressed relative to `tg_origin`, which includes
the padding offset, whereas `gfxfb_blt` operates on coordinates without
that offset. To make `gfx_fb_copy_area` emulate the behavior of
`gfxfb_blt`, the source coordinates must include the padding offset,
while the destination coordinates must not. The original implementation
omitted the offset from the source coordinates; this change corrects
that.

Additionally, `gfx_fb_cons_display` already applies the padding offset,
so the redundant adjustment is removed.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296246
Reported by:    2khramtsov@gmail.com
Reviewed by:    imp
Tested by:      2khramtsov@gmail.com, junchoon@dec.sakura.ne.jp,
naito.yuichiro_@gmail.com
Fixes:          https://cgit.freebsd.org/src/commit/?id=32da2f23ae4d
MFC after:      2 weeks
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57821
76aa776b5f47ecd0d45336e22795fef98af57d2f ShengYi Hung 2026-06-24 14:31:03
syslogd: Handle connection errors when setting up forwarding sockets
Since syslogd was converted to run in a Capsicum sandbox, it needs to
explicitly connect() its forwarding sockets rather than using sendmsg().
At the time syslogd starts during boot, some of its forwarding
destinations may not be routable, in which case connect() fails.

Fix this by making connect() failures non-fatal, and use cap_net to
lazily connect sockets once something actually tries logging to the
destination.

Add a regression test.

Reported by:    ae
Reviewed by:    ae
Discussed with: jfree
Fixes:          https://cgit.freebsd.org/src/commit/?id=4ecbee2760f7 ("syslogd: Open forwarding socket descriptors")
MFC after:      2 weeks
Differential Revision:  https://reviews.freebsd.org/D57394
8a62a5f77b10ddfa593c4a3d7751cf9bac3bb1b3 Mark Johnston 2026-06-30 19:19:50
bhyve: Add CPU pinning diagnostic message
When pinning a vcpu to a hostcpu fails, print out a diagnostic message
to stderr indicating the failing CPU pair.

MFC after:      1 month
Reviewed by:    bnovkov
Differential Revision:  https://reviews.freebsd.org/D57619
9ea13242985dc145b2471cc8f651be87c6a74bfe John De Boskey 2026-06-30 21:29:50
jail: prevent a null derefence on array parameter assignment
The same variable was used as a counter for an inner and out loop.
Add a new one for the inner loop.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=283934
Reported by:    crest at rlwinm.de
6d9bc46cd7fc48ece597162d3ca413fc9d67b5f0 Jamie Gritton 2026-07-01 18:36:08

Libraries

do_posix_spawn(): use bool
Sponsored by: The FreeBSD Foundation
MFC after:      1 week
b516c234d0e4ccd69ca1f3d3a8bb80eed3f0a87c Konstantin Belousov 2026-06-26 17:15:12
posix_spawn(3): create a guard page below the stack for rfork_thread on x86
Reviewed by:  kevans
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D57955
2767a1f3686e5b1657ff4c3d57737c7f21598125 Konstantin Belousov 2026-06-29 22:06:53
iconv(3): Fix problems in various encodings
Fix null pointer dereference with HZ8 encoding.

Fix output buffer overrun in UTF-7, VIQR, ZW encodings.

Approved by:    so
Security:       FreeBSD-SA-26:49.iconv
Security:       CVE-2026-58081
Reviewed by:    markj, kevans
Differential Revision:  https://reviews.freebsd.org/D57947
a9d3259c4e50da8aac100da23aa37c43055f8be2 Taylor R Campbell 2026-06-22 21:15:25
iconv: Fix a buffer overflow in the HZ encoding
wcrtomb may store up to 2 2-byte escape sequences to the state buffer in
addition to the character itself.  In the worst case, a 3-byte heap
overflow is possible.

Approved by:    so
Security:       FreeBSD-SA-26:49.iconv
Security:       CVE-2026-58081
Reviewed by:    kevans
Differential Revision:  https://reviews.freebsd.org/D57949
8bc3abb7d71eebe6819af1e61640067733e596dc Mark Johnston 2026-06-23 16:05:31
powerpc64le: switch from calling wrappers to weak references
c9991e01149b5cd5a6710d70921b203ef7f16fc2 Piotr Kubaj 2026-06-25 17:33:42
libsysdecode: Fix shutdownhow table
MFC after:    1 week
Fixes:          https://cgit.freebsd.org/src/commit/?id=c3276e02beab ("sockets: make shutdown(2) how argument a enum")
Reviewed by:    glebius
Differential Revision:  https://reviews.freebsd.org/D57915
402a6574886a90b8025777b3b2c960c88677462d Dag-Erling Smørgrav 2026-07-01 10:06:52
libc locale/localeconv.c: use release semantic when clearing locale_changed
PR:   https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296410
Submitted by:   Tomas Vondra <tomas@vondra.me>
MFC after:      1 week
4efbcf36a0d49ab142023a767871532f515f1381 Konstantin Belousov 2026-07-05 02:50:27
Commit group #2: libsysdecode
libsysdecode: decode Generic Netlink controller messages

Decode Generic Netlink controller (GENL_ID_CTRL) messages in
Netlink payloads. Display the Generic Netlink header along with
the CTRL_CMD_GETFAMILY attributes, including the family ID and
family name.

Signed-off-by:  Ishan Agrawal <iagrawal9990@gmail.com>
Reviewed by:    kp
Sponsored-by:   Google LLC (GSoC 2026)
80586e853674c6d63888379274accea5c82407f2 Ishan Agrawal 2026-06-29 05:17:14

libsysdecode: cache Generic Netlink family IDs

Record Generic Netlink family IDs learned from
CTRL_CMD_GETFAMILY responses and use them to decode subsequent
Generic Netlink messages using symbolic family names instead of
numeric IDs.

Signed-off-by:  Ishan Agrawal <iagrawal9990@gmail.com>
Reviewed by:    kp
Sponsored-by:   Google LLC (GSoC 2026)
c268c80fc3d5eaeec2d01205b338dbaa7661502a Ishan Agrawal 2026-06-29 06:00:40

libsysdecode: decode PF Generic Netlink commands

Decode the Generic Netlink command header for messages
belonging to the PF Generic Netlink family. Display the
command name using the PF Generic Netlink command decoder.

Signed-off-by:  Ishan Agrawal <iagrawal9990@gmail.com>
Reviewed by:    kp
Sponsored-by:   Google LLC (GSoC 2026)
fa50691ecf87c2d0ec35480222557173c11a5baa Ishan Agrawal 2026-06-29 06:21:59

Filesystems

autofs: rename sx lock description for am_lock
Rename am_lock description from autofslk -> autfsm.

The lock description, autofslk, is used as the description for
autofs_softc->sc_lock, which is used to protect autofs requests and the
like as opposed to am_lock which protects autofs nodes for a given
mount.

This change allows witness to distinguish different lock orders for each
lock.

Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D57972
29b07ef31379575fff4344ec331b90c96d899cc7 Robert Wing 2026-07-01 09:18:33
zfs: fix SIMD defines to match OpenZFS HAVE_SIMD() macro
The OpenZFS merge 80aae8a3f8aa introduced HAVE_SIMD() which checks for
HAVE_TOOLCHAIN_* defines via simd_config.h.  The kernel module Makefile
was updated, but kern.pre.mk (static kernel build) and the libzpool/libzfs
Makefiles were missed, still using the old HAVE_SSE2 etc. names.  This
caused all vectorized raidz, fletcher, and blake3 implementations to be
compiled out.
de6872045c07b7eeffe66cba40e7feed23eefc9e Alexander Motin 2026-07-01 17:09:49
ffs: do not return ESTALE on attempt to ffs_unotovp() on unlinked inode
The consequences are:
- for nfs exports and fhopen(2), unlinked but still referenced inodes
  are accessible
- for ffs_vput_pair() with unlock_vp = false, spurious ESTALE is not
  returned when the inode is still alive but unlinked

Note that tmpfs does not return ESTALE for the unlinked nodes.
The same behavior is claimed for Linux in
https://github.com/openzfs/zfs/issues/18699

Reviewed by:    rmacklem
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D57982
c041b82c59e885d106f45454302bad3d9dcc58a7 Konstantin Belousov 2026-07-01 01:14:45
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:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295957
Reported by:    dan.kotowski@a9development.com
MFC after:      2 weeks
Sponsored by:   ConnectWise
Reviewed by:    markj
Differential Revision: https://reviews.freebsd.org/D57536
ee1c3d38a26aa63fca8e9f86c0d456800d5e2576 Alan Somers 2026-06-10 20:39:22
autofs: enable witness for autofs node lock
Previously, an_vnode_lock was initialized with SX_NOWITNESS to silence
lock order reversals. The reversals would occur when autofs_node_vn()
was called with the directory vnode lock held, then lock an_vnode_lock,
then lock the vnode attached to the autofs node. It looked like:

    directory vnode -> an_vnode_lock -> vnode attached to autofs node

The established lock order is now vnode -> an_vnode_lock

Currently, we don't have to worry about losing an autofs node during the
unlock/lock as autofs nodes are only removed during an unmount() after
vflush(). When autofs_node_vn() is called, the mountpoint has either
been busied (preventing unmount) or a directory vnode is locked which
prevents vflush() from finishing until the directory vnode is unlocked.

Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D57857
2de20c5c77cf8d5b2059054cff0e0c1fc124739d Robert Wing 2026-07-03 18:55:37
nfs_clstate.c: Fix handling of delegation upgrades
Commit 016570c4463d modified the client to handle
the upgrade of a read delegation to a write delegation,
where the server provides the same delegation stateid
to the client.  However, it failed to check if the
delegation structure was currently in use.  Without this
patch, if the structure was in use, a use after free
could occur.

This patch handles the "in use" case by copying the
necessary fields into the current/old structure and
free's the new one instead of the old one that is
"in use".

PR:     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296224
MFC after:      2 weeks
fe6677e7f440d1aa52de036639efc55047ab9a2b Rick Macklem 2026-07-04 22:00:02

Kernel

Kernel stuff (other than networking, filesystems, and drivers).

CHERI: declare copy{in,out}ptr{,_nofault}
These provenance-preserving functions are to be used when copying
objects that are expected to contain pointers.  Data buffers which do
not contain pointers should be copied by the traditional copyin/copyout
functions which *do not* preserve pointer provenance (on CHERI they
clear validity tags).

NOTE: Going forward, this requires changes when adding new syscalls or
ioctl that take pointers to objects containing pointers.  Fortunately,
the vast majority (>90%) of copyin and copyout statements do not copy
pointers and require no change.  Failure to make the chance will have no
effect on non-CHERI architectures.

Reviewed by:    kib, markj
Effort:         CHERI upstreaming
Sponsored by:   DARPA, AFRL, Innovate UK
Differential Revision:  https://reviews.freebsd.org/D57663
b517edb8deed23b8c616f0ad4453e4dee7b0ac0f Brooks Davis 2026-06-29 12:58:52
Commit group #3: CHERI: declare fueptr and suptr
CHERI: declare fueptr and suptr

These should replace fueword and suword when manipulating pointers in
memory.  On CHERI targets they will be implemented using capability
aware instructions and otherwise they are defined to fueword and suword.

Reviewed by:    kib, markj
Effort:         CHERI upstreaming
Sponsored by:   Innovate UK
Differential Revision:  https://reviews.freebsd.org/D57664
a1c52e05f571607db361f49993b36b0288f1d8f3 Brooks Davis 2026-06-29 12:59:44

fetch.9: fix a typo

Fixes:          https://cgit.freebsd.org/src/commit/?id=a1c52e05f571 ("CHERI: declare fueptr and suptr")
Effort:         CHERI upstreaming
Sponsored by:   Innovate UK
524fb0444f3ad0f52b6f706267181564e33f9771 Brooks Davis 2026-07-01 14:09:15
witness: harden tunables for large settings
Harden witness against reasonable tunable settings causing boot panics
or scribblers.  For now, don't bother to harden this completely.  Panics
are still achievable by setting the tunables to negative or very large
values.

The recent change to respect the setting of debug.witness.witness_count
(08180f1b613b) exposed that there are no guard rails on that setting,
setting it to large but plausible values can cause integer overflow or
cause attempted use of memory beyond what is actually available.  Add
some guard rails, fall back to default configuration if the tuned values
are too large, and fall back to a minimum memory allocation if even the
defaults are too large.  Also don't allow witness to use over half of
the memory segment, as there are other early allocators after witness
too.

Reported by:    asomers
Reviewed by:    kib, markj (previous version)
Fixes:  https://cgit.freebsd.org/src/commit/?id=08180f1b613b ("witness: actually set read-only tunables in time for witness_startup")
Sponsored by:   Dell Inc.
Differential Revision:  https://reviews.freebsd.org/D57793
2407abc9fb3b45d6d734d564706c76aa793b102a Ryan Libby 2026-06-29 16:54:30
device_pager: Avoid double-insertion of pages into the pager list
Unmanaged device pager objects maintain a linked list of pages that were
returned from the fault handler.  Initially, such pages are valid, but
msync(MS_INVALIDATE) can mark them invalid (and clean).  They are not
removed from page tables (since they are unmanaged), but a subsequent
mlock() call can trigger a page fault that is handled by the pager.
dev_pager_getpages() then re-inserts the page into the linked list even
though it's already present there.

This patch fixes the problem by removing the linked list.  OBJ_PG_DTOR
is set, so vm_object_terminate_pages() does nothing, and
dev_pager_dealloc() instead handles cleanup of the object.

Add a regression test case which triggers a queue.h assertion failure in
unpatched kernels.

Note, in stable branches we should avoid changing the layout of struct
vm_object.

Approved by:    so
Security:       FreeBSD-SA-26:37.vm
Security:       CVE-2026-49418
Reported by:    slidybat
Reviewed by:    kib
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57743
97a064125e8a0326159dcc35e9c522c049eb3b95 Mark Johnston 2026-06-22 14:40:22
unlinkat: Pass flags down to the work functions
The unlinkat(2) and funlinkat(2) system calls were ignoring
AT_RESOLVE_BENEATH.

Also pass pathseg through instead of assuming it's UIO_USERSPACE.

Add some tests which make sure that AT_RESOLVE_BENEATH is handled
properly by various system calls.

Approved by:    so
Security:       FreeBSD-SA-26:42.unlinkat
Security:       CVE-2026-49421
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:    kib
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57790
8b24b19d08f9dc10e6af9a1695b9b0d62fb80cc2 Mark Johnston 2026-06-23 20:43:53
Commit group #4: posixshm
posixshm: Disallow fspacectl() on largepage objects

As with truncation, the operation isn't supported, but nothing prevented
it.

Add a regression test.

Approved by:    so
Security:       FreeBSD-SA-26:44.posixshm
Security:       CVE-2026-49428
Reported by:    Chris Jarrett-Davies <chrisjd@openai.com>
Reviewed by:    kib
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57830
713747f87c85e9b961e460cb9a496c094a6aa375 Mark Johnston 2026-06-24 19:56:07

posixshm: Disallow truncation of largepage objects

We correctly handled ftruncate(), but not open(O_TRUNC).

Add a regression test.

Approved by:    so
Security:       FreeBSD-SA-26:44.posixshm
Security:       CVE-2026-49428
Reported by:    Chris Jarrett-Davies <chrisjd@openai.com>
Reviewed by:    kib
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57831
1491dec424e72a2f429d84d11b0d248abc6c6cda Mark Johnston 2026-06-23 22:47:02

posixshm: Fix handling of sendfile() with largepage objects

sendfile(2) can transmit POSIX shared memory objects.  Typically it will
look up and wire each page before sending it to a socket; once
transmission is complete, the page is unwired and typically released
back into the page queues.  sendfile() has an advisory flag, SF_NOCACHE,
which means, "try to free the page once transmission is complete."  This
is implemented in vm_page_release(), which expects to operate on managed
pages.

Pages belonging a largepage object are de-facto wired not explicitly so.
Thus, vm_page_release() will unwire and, having found no additional
references, free the page.  Because mappings of largepage objects are
unmanaged, userspace can still access the now freed page.

Fix the problem by explicitly wiring largepage pages.  Make the VM
object destructor responsible for unwiring and freeing them.

Add a regression test.

Approved by:    so
Security:       FreeBSD-SA-26:44.posixshm
Security:       CVE-2026-49427
Reported by:    Chris Jarrett-Davies <chrisjd@openai.com>
Reviewed by:    kib
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57832
1bad1d8c14cdff127d97accd49b0e6da22501b99 Mark Johnston 2026-06-24 19:57:00
kern: fix auditing of ptrace(2) syscall requests
`error` here is the return value of syscall_thread_enter() rather than
the syscall itself, so the committed audit records do not reflect
reality.  This is less harmful than them recording an error when the
operation actually succeeded, but it could still possibly be used to
throw off IDS techniques with things like bsmtrace.

Approved by:    so
Security:       FreeBSD-SA-26:45.audit
Security:       CVE-2026-49426
Reviewed by:    des, kib, markj, csjp
Differential Revision:  https://reviews.freebsd.org/D57847
bcbbee810fc9733da27b31b23baeaa2e1af53232 Kyle Evans 2026-06-25 17:02:47
ktls CBC decrypt: Only increment iovec index when an entry is used
If an mbuf in the chain was skipped because it only contained bytes
from the header, the iovec index ('i') was incremented even though the
entry was not populated.  Only increment 'i' when an iovec entry is
consumed.

Add a new type of KTLS receive test which writes a single TLS record
via two separate write(2) calls over a TCP_NODELAY socket to trigger
a split in the mbuf chain in the kernel.  Test various split locations
including after the "plain" TLS header (5 bytes), after the full TLS
header, in the middle of the data payload, just before the start of
the trailer, and in the middle of the trailer.  These tests are also
run against all supported ciphers, not just CBC.  The 'header' test
for CBC ciphersuites was able to trigger the bug.

Approved by:    so
Security:       FreeBSD-SA-26:46.ktls
Security:       CVE-2026-49423
Sponsored by:   Chelsio Communications
ba4c8cc6e810fc64e53d6ca539649932016ed1f7 John Baldwin 2026-06-24 01:14:11
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
1756d1cab3ce28085eec94a45c557e1af265ccd0 John Baldwin 2026-06-30 18:11:29
kern: syscall_thread_enter() cannot fail
Attempting to handle the error gracefully can easily result in missing
SIGSYS, so this was made to always succeed in
39024a89146 ("syscalls: fix missing SIGSYS for several ENOSYS errors")
and returns the nosys entry on failure.

Drop the pretense of returning an error and clean up a few dead error
paths.

Reviewed by:    kib, markj
Differential Revision:  https://reviews.freebsd.org/D57848
eca26803d880060555393ab89b44b967cd467a0e Kyle Evans 2026-06-30 19:12:10
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
9cee48180d7a3d612110b4433f82bade288f326b John Baldwin 2026-07-01 00:52:55
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 <jhb@FreeBSD.org>
Differential Revision:  https://reviews.freebsd.org/D57974
08cda4bcd43cfcb2c0b1abd29bc7cd30896727bc Andrew Gallatin 2026-07-01 00:53:15
Commit group #5: linuxulator: Fix O_PATH file descriptors errno for f*xattr(2)
linuxulator: Fix O_PATH file descriptors errno for f*xattr(2)

LTP open13 expects these operations to fail with EBADF, matching
Linux behavior, but FreeBSD currently returns EOPNOTSUPP
for fgetxattr() on an O_PATH fd

Look up Linux fd-based xattr descriptors with getvnode()
and route the operations through shared kern_extattr_*_fp()
helpers so the O_PATH check and the extattr operation use the
same referenced file.

Apply the same EBADF handling to fsetxattr(), fremovexattr(), and
flistxattr() so the xattr paths stay consistent.

Signed-off-by:  YAO, Xin <mr.yaoxin@outlook.com>
PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295537
Reviewed by:    kib
Pull Request:   https://github.com/freebsd/freebsd-src/pull/2263
2c905456312b2e5986afe3402a9c87d49eb9cf86 YAO, Xin 2026-05-07 06:39:16

linuxulator: Fix operator precedence for LINUX_XATTR_FLAGS in setxattr()

The LINUX_XATTR_FLAGS macro expands to (LINUX_XATTR_CREATE|LINUX_XATTR_REPLACE).
Without parentheses around the macro expansion, the bitwise & operator has
higher precedence than |, causing incorrect flag evaluation and a compiler
warning.

Add the missing parentheses around LINUX_XATTR_FLAGS to ensure correct
operator grouping, matching the existing usage in getxattr().

Signed-off-by:  YAO, Xin <mr.yaoxin@outlook.com>
Fixes:          https://cgit.freebsd.org/src/commit/?id=2c905456312b ("linuxulator: Fix O_PATH file descriptors errno for f*xattr(2)")
Reviewed by:    kib
Pull Request:   https://github.com/freebsd/freebsd-src/pull/2306
8ad097de02263d92df3368a2f5035faa365e7956 YAO, Xin 2026-07-01 20:10:13
linuxulator: Add linux_extattr_get_vp() for atomic getxattr
Move the atomic size-probe-and-read logic into a new
linux_extattr_get_vp() function in linux_xattr.c instead of
modifying the generic extattr_get_vp() in vfs_extattr.c.
This keeps Linux-specific getxattr semantics (ERANGE on
too-small buffer, EOPNOTSUPP to ENOATTR mapping)
self-contained within the linuxulator.

The function probes the attribute size and reads the data
under a single vnode lock, preventing a TOCTOU race between
the size probe and data read.

Signed-off-by:  YAO, Xin <mr.yaoxin@outlook.com>
Reviewed by:    kib
Pull Request:   https://github.com/freebsd/freebsd-src/pull/2263
2fc95fe26e725439209217f53dd76437a52be76b YAO, Xin 2026-06-29 01:55:25
Commit group #6: CHERI
CHERI: declare mem{cpy,move}_data

Declare kernel-only, provenance-discarding memcpy_data, and memmove_data
APIs intended to copy raw data which does not contain pointers (e.g.,
buffers on their way to or from network or storage devices).  On CHERI
architectures, they will explicitly remove tags from capabilities,
removing any provenance.  This reduces the risk of accidental spread of
pointers on CHERI systems.

Document that bcopy preserves pointer provenance.

Reviewed by:    ziaee, kib, adrian, markj
Effort:         CHERI upstreaming
Sponsored by:   DARPA, AFRL, Innovate UK
Differential Revision:  https://reviews.freebsd.org/D57662
7f55dbe6ae89c356db1bc4fb2c42d9d007ae5da1 Brooks Davis 2026-07-01 11:45:51

CHERI: add sooptcopyinptr to preserve pointer provenance

Most socket options don't involve pointers so make the default
sooptcopyin discard provenance and add a sooptcopyinptr that preserves.

Reviewed by:    markj, emaste
Effort:         CHERI upstreaming
Sponsored by:   DARPA, AFRL, Innovate UK
Differential Revision:  https://reviews.freebsd.org/D57665
f14bdfefa41c7d81dd1317e61b98de22dc03016c Brooks Davis 2026-07-01 11:46:39

CHERI: make mem{cpy,move}(9) CHERI compatible

- Use intptr_t in place of long as the word type in the core copying
  loop where aligned words a copied.  This preserved the provenance of
  any copied pointers.
- When working with the address of src or dst use ptraddr_t rather than
  uintptr_t.  This avoid ambigious provenance in expressions involving
  multiple addresses.

As a minor tweak, rename the function to memmove since that is the
interface it implements (overlapping src and dst are permitted) and make
memcpy the alias rather than the other way around.

Reviewed by:    kib, markj
Effort:         CHERI upstreaming
Sponsored by:   Innovate UK
Differential Revision:  https://reviews.freebsd.org/D57965
17602eb3eae95a53c973a5ceb4fc3134a770e8d6 Brooks Davis 2026-07-01 11:46:55
unix: Fix a socket refcount leak in uipc_sendfile_wait()
Fixes:                https://cgit.freebsd.org/src/commit/?id=d15792780760 ("unix: new implementation of unix/stream & unix/seqpacket")
Reviewed by:    glebius
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D57967
2a4b8fd1dc070e71fbaab6f12c1c9e4452652aa7 Mark Johnston 2026-07-01 15:35:10
jail: prevent a race between jail_attach in different threads
Attaching to a jail changes its root directory and its process
credentials. These operations both require unlocking the jail, and also
need allprison_lock unlocked. That means that if two threads are trying
to attach to different jails at the same time, it's possible for the
process to end up with one jail's root directory but the other jail's
credentials.

Solve this by forcing the process into single-threaded mode during
system calls that attach to a jail (jail_attach, jail_attach_jd, and
sometimes jail_set).

Reviewed by:    kib, markj
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D57858
d4e0f4dab2d7f4de46bb79db1ca7e6e8a2e34746 Jamie Gritton 2026-07-02 22:48:07
newvers.sh: Avoid spurious -dirty in git revision
If git is installed and .git exists but git rev-parse failed to report a
hash we previously produced just "-dirty" as the git revision.  Gate the
git commit count and -dirty check on the rev-parse passing.

Reviewed by:    jlduran
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57995
465a3b7adc008c068741594f6c922ede98924f39 Ed Maste 2026-07-01 14:35:10
cpu: New cpu_get_pcpuid(), retrieves internal CPU ID
It is a handy shortcut that will be used extensively in
hwpstate_intel(4) and hwpstate_amd(4).

Warn users that it panics if the parent bus does not provide the
CPU_IVAR_PCPU instance variable.  That condition should be tested by
callers (doing so once is enough).  Suggest to do that in driver's
attach method.

Reviewed by:    jhb (code)
Event:          Halifax Hackathon 202606
Location:       Seat 36K in AC667, waiting for a gate at Montréal-Trudeau
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57897
c3c8f4d9e66287b24af2b3881c528236b836f2f1 Olivier Certner 2026-06-26 22:17:35
sys/systm.h: include sys/limits.h for SSIZE_MAX
This makes the header more self-contained.
The symbol is needed only on 32bit arches, but the include file is
provided unconditionally to make the namespace population predictable.

PR:     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296489
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
bcb471cfb499f61d98abdc7bfd48bee0e229b02b Konstantin Belousov 2026-07-04 01:24:00

Build system

OptionalObsoleteFiles: Add missing headers
The header files for dialog, figpar, dpv were never listed.

Fixes:          https://cgit.freebsd.org/src/commit/?id=bc6c827078b7 ("OptionalObsoleteFiles: Add figpar to dialog section")
acf6518a2d6f33fb56c861861cbad0c0cb56817e Dag-Erling Smørgrav 2026-06-29 19:17:52
pkgconf: match the update to version 2.9.93
This update brings spdxtool(1), with the ability to generate software
bill of material files (SBOM) in the SPDX 3.0.1 format (JSON-LD).

Reviewed by:    markj
Approved by:    markj
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57953
43b1ade21e22c0b758f8d83e4707df3024413833 Pierre Pronchery 2026-06-24 20:01:00
src.conf(5): Suggest using ccache4
We have separate ports for Ccache 3 and 4.  Suggest both, rather than
only the Ccache 3 port.  Rearrange the text somewhat to avoid an
excessively ragged edge on a standard 80-column terminal.

MFC after:      1 week
Reviewed by:    markj
Differential Revision:  https://reviews.freebsd.org/D58005
a2545f68f64b4cfcc13ca2d372c8b9fef1c6331e Dag-Erling Smørgrav 2026-07-02 15:16:52

Internal organizational stuff

.git-blame-ignore-revs: Reverted accidental commits
82c38777319f601c9b88e6d7dd3aec499c5085bf Dag-Erling Smørgrav 2026-06-29 15:59:34
tools: Add git-mfc
This is a utility that effectively wraps git-cherry-pick for performing
MFCs, though it has some other usages.  In addition to actually
cherry-pick the specified commits, it looks at the upstream branch for
fixup commits, denoted by a `Fixes:` tag which references the fixed
commit.

Aside from actually cherry-picking commits, git-mfc can also be used to
list pending MFCs (commits in the upstream branch which are eligible for
MFC based on the `MFC after` tag), and "dangling" MFCs, where a commit
was MFCed to the currently checked out stable branch, and the upstream
branch has one or more fixup commits which have not been merged.

The utility requires python and the gitpython module.

Reviewed by:    des
Differential Revision:  https://reviews.freebsd.org/D57845
1361901baac43997daafd6ed41d3cdec6c119110 Mark Johnston 2026-06-30 19:27:06
Add myself as ports committer, update mentor/mentee
This completes step 5 from Committer's Guide.

Approved by:            jbo (mentor)
Differential Revision:  https://reviews.freebsd.org/D57934
e89a398c108ff4db2b7985ad591e62b9e1ea7222 Martin Cracauer 2026-07-03 18:22:09

Testing

ping: Fix bell char ordering in -A test cases
Previously, these tests expected the bell chars to arrive
before the initial status line. This appeared to be ok because
ping(8) incorrectly mixed unbuffered and buffered writes by using
printf(3) calls for the initial status, but direct write(2) calls
for the bell chars. 141bb85798 revealed that the test's assertions
only passed because the buffered writes did not get flushed before
the direct writes in the test runs.

8bda488114f3 fixed ping(8) to use POSIX stdio buffered writes
in all cases and guarantee a deterministic output ordering to stdout
observers. This patch fixes the test to match the correct ordering.

Reviewed by:    des
Sponsored by:   The FreeBSD Foundation
f7f916d755fe5b48a2a68a937beea770b7bafa95 Siva Mahadevan 2026-06-26 12:22:57
libc: gen: add a test for rtld underflowing our posix_spawn thread
This is a distillation of the environment described in the PR, using
a dummy shlib and mapping it repeatedly.  This takes advantage of the
guard page added in 2767a1f3686e5b16 to reliably crash if rtld tries to
scale its stack usage excessively with the # DSOs loaded.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=295991
Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D57954
3de9dc5bf4b438e0d98222dc028982380d5a25d2 Kyle Evans 2026-06-30 13:12:51
tests/libalias: Add a regression test for an alias_smedia bug
Approved by:  so
Security:       FreeBSD-SA-26:41.libalias
Security:       CVE-2026-49420
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57747
5c7a97aaf1ca4b8bc078bc18f73e04499d48598f Mark Johnston 2026-06-22 17:25:56
tests/socket_afinet: make child_bind() return a full spectre of results
There is no functional change for existing tests, but allows to write a test
that would expect an immediate success of bind(2).
57cc01057bb21fec37fa4fb7416b4a1f29a211c0 Gleb Smirnoff 2026-07-01 05:47:47
tests/socket_afinet: extend bind_connected_port_test to cover more cases
- Test SOCK_DGRAM (UDP) sockets.
- Test binding to 0:port and to a addr:port in presence of connected socket
  using the port.

Differential Revision:  https://reviews.freebsd.org/D56707
0bc0b0c3f73812fdcdb89865879c7478bcbc7323 Gleb Smirnoff 2026-07-01 05:48:06
tests/netinet/socket_afinet: reduce tautology in test cases names
Just avoid repeating the test program name in every test case name.
No functional change.

Reviewed by:            markj
Differential Revision:  https://reviews.freebsd.org/D56727
51eb574064802d7697a55b502cc169eeb43fba58 Gleb Smirnoff 2026-07-01 05:48:16
tests/socket_afinet: make multibind test more verbose on failure
07db0309378cd85ba72992e838675ba57abdca75 Gleb Smirnoff 2026-07-01 05:48:23
tests: fix checksum computation
This fixes an endianness bug in sys/netinet/ip_reass_test.
Just use the code from RFC 1071.

Reported by:            glebius
Reviewed by:            glebius, Timo Völker
MFC after:              1 week
Sponsored by:           Netflix, Inc.
Differential Revision:  https://reviews.freebsd.org/D57988
fbc039e512c3bb1635ad20cc8f70ad608ea818b7 Michael Tuexen 2026-07-01 16:07:04
tests/aslr: Fix spurious test failures
/sbin/ping and /sbin/ping6 are hard-linked, and the vmmap sysctl handler
doesn't know which name was used to launch the process.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296116
MFC after:      3 days
Fixes:          https://cgit.freebsd.org/src/commit/?id=080a4087014e ("tests: Fix race condition in aslr_setuid")
81cf9a0ca765b48a430da61c221be17c4d0f753a Mark Johnston 2026-07-03 19:28:22
tests/if_wg: Let wg_vnet_parent_routing run in a VNET jail
MFC after:    1 week
0dbd497fff17416728c9c98f27a0612c89c7143c Mark Johnston 2026-07-03 19:31:15

Style, typos, and comments

These could go in other categories, but it's more clear if they're here instead.

iwlwifi.4, rtw88.4, rtw89.4: Fix xref typos
MFC after:    3 days
Reviewed by:    bz, ziaee
Fixes:  https://cgit.freebsd.org/src/commit/?id=0a2f7683bf0c ("man: iwlwifi/rtw88/rtw89: update man pages for Linux v7.0 based updates")
Differential Revision:  https://reviews.freebsd.org/D57720
d036b3b348d3f7be21f79461d7ad48e97b088ba8 Artem Bunichev 2026-06-29 00:42:30
pf.conf.5: Fix typo
Fix small typo in pf.conf(5)

MFC after:              3 days
Reviewed by:            ziaee
Differential Revision:  https://reviews.freebsd.org/D57938
bbc2d15857b8c44cf8558bf00663b508d421c94c Oleksandr Kryvulia 2026-06-29 09:51:18
ctfmerge.1: Fix uniqlabel typos
The flag is -D, but it was written as a second -d. Add a period too.

MFC after:      3 days
4f293e32e4529617dd05bd64fd3c22a57a56a355 Alexander Ziaee 2026-06-30 14:12:03

Contrib code

iconv(3): Draft some automatic tests.
Based on a report by Nick Wellnhofer.

Approved by:    so
Security:       FreeBSD-SA-26:49.iconv
Reviewed by:    markj, kevans
Differential Revision:  https://reviews.freebsd.org/D57948
2ee2274244e7f09a7bd04d1aaf9b04dfa678921a Taylor R Campbell 2026-06-22 19:44:55
iconv: Fix a stack buffer overflow in _ISO2022_sputwchar()
In the ISO2022-CN encoding, characters may require at least seven bytes,
and MB_LEN_MAX==6 is insufficient.  From code inspection,
_ISO2022_sputwchar() can emit 10 bytes in the worst case, so use that to
size buffers.

Add a regression test.

Approved by:    so
Security:       FreeBSD-SA-26:49.iconv
Security:       CVE-2026-58082
Reviewed by:    kevans
Differential Revision:  https://reviews.freebsd.org/D57950
150df709c28ca10a7ccec02482441257ec9c13da Mark Johnston 2026-06-23 17:45:28
Merge commit '0cf7106da9f36671ef62142c27de98eee9d874d6' into khorben/pkgconf-2.9.93
592efe252472a3385acf36b1f49ecf710a7f3d9c Pierre Pronchery 2026-07-01 00:24:13
pkgconf: determine the default paths dynamically
This automatically computes the correct PKG_CONFIG_PATH with LOCALBASE
from the environment (when set) or from the "user.localbase" sysctl, in
this order.

Reviewed by:    des
Approved by:    des
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D57246
c146f5ae308ee47f2832fb3df1e14f864be70015 Pierre Pronchery 2026-05-26 13:48:49
Merge bmake-20260704
Merge commit 'e988c5eab5231646c612d35ff5b16122cebfbf6a'
5dfe1956df4b37af4892aaff3fafe70c0d6d7466 Simon J. Gerraty 2026-07-05 18:29:48

Reverted commits

Commit & revert pair: resolver(5): Overhaul
resolver(5): Overhaul

* Modernize the markup

* Describe the comment syntax

* Drop obsolete advice

* Capitalize sentences

* Improve the language

* Replace no_tld_query with no-tld-query; both are supported, but all the
  other multi-word options use hyphens rather than underscores.

* Add missing ENVIRONMENT section

* Redo the example

MFC after:      1 week
066bef580b21bed9100c727045e1dbfdeb9bf1a9 Dag-Erling Smørgrav 2026-06-27 18:55:46

Revert "resolver(5): Overhaul"

This reverts commit 066bef580b21bed9100c727045e1dbfdeb9bf1a9.
51a4a96f63dabc786abe4dd2dac74b2872165ceb Dag-Erling Smørgrav 2026-06-29 15:54:01
Commit & revert pair: libc/resolv: Drop Solaris 2 compatibility
libc/resolv: Drop Solaris 2 compatibility

MFC after:      1 week
b27e21f304f260d539288756c5bb85421a549d44 Dag-Erling Smørgrav 2026-06-25 10:57:11

Revert "libc/resolv: Drop Solaris 2 compatibility"

This reverts commit b27e21f304f260d539288756c5bb85421a549d44.
208c43d6f57b036cfd207a54de54c4dd7b8123da Dag-Erling Smørgrav 2026-06-29 15:54:01
Commit & revert pair: libc/resolv: Refactor the option parser
libc/resolv: Refactor the option parser

Start the loop by finding the end of the option name, the name-value
separator (if any), and the end of the option.  Use those pointers to
simplify matching the option name and parsing the option value.

This means that:

* We no longer accept trailing garbage in an option name or value.  For
  instance, we would previously interpret “edns0123” as “edns0” and
  “timeout:3xyz” as “timeout:3”.  This was actually quite lucky because
  we also failed to recognize the newline at the end of the option line
  as a whitespace character.

* For options that take a numerical value, we would previously happily
  set a numerical option to a negative value and treat non-numerical
  arguments as 0, while a numerical argument that happened to exceed
  the maximum for the option would result in the option being set to its
  default value.  Now, any failure to parse the argument, including
  overflow, results in the option being set to its default value.

MFC after:      1 week
40e10af6c6dc46d9c0835db3dc95368ce7d69b55 Dag-Erling Smørgrav 2026-06-25 11:33:47

Revert "libc/resolv: Refactor the option parser"

This reverts commit 40e10af6c6dc46d9c0835db3dc95368ce7d69b55.
550dacea138e5df66780a152ab1ba91c466d7395 Dag-Erling Smørgrav 2026-06-29 15:54:00
Commit & revert pair: libc/resolv: Refactor the configuration parser
libc/resolv: Refactor the configuration parser

This was previously all a single loop in res_init(), apart from option
parsing which we cleaned up in a previous commit.  Break it out into
separate functions for reading the configuration line by line, setting
the default domain, setting the search list, and adding a nameserver
to the nameserver list.  Sprinkle bounds checks and code comments all
around.

The sortlist code, which has been disabled for the past 20 years, will
be dealt with in a separate commit.

MFC after:      1 week
9fd22951233219b5e9985575c1b3aaf3532961fd Dag-Erling Smørgrav 2026-06-25 15:27:02

Revert "libc/resolv: Refactor the configuration parser"

This reverts commit 9fd22951233219b5e9985575c1b3aaf3532961fd.
d9b907be0048558c512ebd0d872542df7548ec0c Dag-Erling Smørgrav 2026-06-29 15:53:59
Commit & revert pair: libc/resolv: Reimplement the sortlist parser
libc/resolv: Reimplement the sortlist parser

When we switched from the BIND4 resolver to the BIND9 resolver, the
sortlist parser was inadvertently disabled, and nobody noticed.  The
sorting code remained enabled in the resolver, but there was no way to
set a sort order.

Reimplement the sortlist parser, but correctly, and update the
documentation accordingly.  The new parser accepts IPv4 and IPv6
addresses with or without a prefix length.

Fixes:          https://cgit.freebsd.org/src/commit/?id=5342d17f09a8 ("Update the resolver in libc to BIND9's one.")
Relnotes:       yes
507ab02d751b4aaa7f35f30882299e9908448e53 Dag-Erling Smørgrav 2026-06-27 18:31:36

Revert "libc/resolv: Reimplement the sortlist parser"

This reverts commit 507ab02d751b4aaa7f35f30882299e9908448e53.
8538c69d84ff2ee4462d09ac21a69e8c907116f1 Dag-Erling Smørgrav 2026-06-29 15:53:59
Commit & revert pair: libc/resolv: Add no-debug and no-rotate options
libc/resolv: Add no-debug and no-rotate options

These are simply the reverse of the debug and rotate options.
61697e9cd5cccc367a38f9851efebad4d7c2bb65 Dag-Erling Smørgrav 2026-06-27 19:00:52

Revert "libc/resolv: Add no-debug and no-rotate options"

This reverts commit 61697e9cd5cccc367a38f9851efebad4d7c2bb65.
955963148a99cc2c45756db76811ef61c75fb5a8 Dag-Erling Smørgrav 2026-06-29 15:53:58
Commit & revert pair: resolv.h: Remove unused parts
resolv.h: Remove unused parts
95978326cb326c69592c75323914bdc52ada0346 Dag-Erling Smørgrav 2026-06-27 22:58:41

Revert "resolv.h: Remove unused parts"

This reverts commit 95978326cb326c69592c75323914bdc52ada0346.
55227ef42de5fbcd2d765b150689e4a5c0d5e352 Dag-Erling Smørgrav 2026-06-29 15:53:57
Commit & revert pair: libc/resolv: Dead code and style cleanup
libc/resolv: Dead code and style cleanup
5028a8489f54fcf0a96399059c14e28c6a69d159 Dag-Erling Smørgrav 2026-06-27 22:58:53

Revert "libc/resolv: Dead code and style cleanup"

This reverts commit 5028a8489f54fcf0a96399059c14e28c6a69d159.
4fd9dffb2514b1d62ce9618c87a9700606f12db3 Dag-Erling Smørgrav 2026-06-29 15:53:57
Commit & revert pair: libfetch: Overhaul socket read / write
libfetch: Overhaul socket read / write

* Make fetch_ssl_read() and fetch_ssl_write() behave more like read(2)
  and write(2), and drop fetch_socket_read() in favor of read(2).

* Don't request POLLERR, it's implied.

* Don't needlessly set errno, it's relatively costly.

* Always check for EAGAIN from writev(2), otherwise we will abort on a
  short write instead of proceeding to poll(2).

* Always check for EAGAIN from poll(2) even though it can't happen on
  FreeBSD; POSIX says it can, and it might in the future.

* Rewrite fetch_read() and fetch_writev() to be more similar to each
  other.  The main difference is that a partial read is treated as
  success while a partial write is treated as failure.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=296316
MFC after:      1 week
298f37a71ae6d9f2cb0c2abd4ff2887e81e0942c Dag-Erling Smørgrav 2026-06-27 12:16:31

Revert "libfetch: Overhaul socket read / write"

This reverts commit 298f37a71ae6d9f2cb0c2abd4ff2887e81e0942c.
da4d1ced75f3be17f8b089a364f642a04eb0d466 Dag-Erling Smørgrav 2026-06-29 15:53:56
Commit & revert pair: libfetch: Add read buffering
libfetch: Add read buffering

Previously, we would read FTP control connection messages and HTTP
reponse headers one character at a time.  Now, we read as much as will
fit in our buffer and look for a newline.  If there is data left over,
it will be reused by the next fetch_getln() call.  This also requires
the addition of a fetch_bufread() which takes the buffer into account,
otherwise the start of the HTTP response body will be stuck in the
buffer after we read the last line of the header.

This should noticeably improve HTTP performance, especially for small
transfers.

MFC after:      1 week
afb60498e0c9836a6e3a7efda8a51710e208a608 Dag-Erling Smørgrav 2026-06-27 14:11:38

Revert "libfetch: Add read buffering"

This reverts commit afb60498e0c9836a6e3a7efda8a51710e208a608.
fde60e3a4e922e7931c39f10105e3fbe33f54534 Dag-Erling Smørgrav 2026-06-29 15:53:55
Commit & revert pair: libfetch: Apply timeout to connection attempts
libfetch: Apply timeout to connection attempts

Mark the socket non-blocking before connecting and poll for completion,
applying fetchTimeout if set.

MFC after:      1 week
d53af4112273f7b234a1cdd6694b3a7ca0aae0eb Dag-Erling Smørgrav 2026-06-27 15:34:53

Revert "libfetch: Apply timeout to connection attempts"

This reverts commit d53af4112273f7b234a1cdd6694b3a7ca0aae0eb.
667ef98c29f94c34d06f5ff1d5d32c99a04f6082 Dag-Erling Smørgrav 2026-06-29 15:53:54
Commit & revert pair: libfetch: Document fetchTimeout
libfetch: Document fetchTimeout

Document the global fetchTimeout variable, now that it works reliably.

MFC after:      1 week
c83e9ee0ef3e6af982e6fd35afe420d460fa84b3 Dag-Erling Smørgrav 2026-06-27 15:37:23

Revert "libfetch: Document fetchTimeout"

This reverts commit c83e9ee0ef3e6af982e6fd35afe420d460fa84b3.
15ee1fc07457b5fb7e1b027d18afc4ffc9aa56b2 Dag-Erling Smørgrav 2026-06-29 15:53:54
Commit & revert pair: fetch: Stop setting an alarm
fetch: Stop setting an alarm

Now that fetchTimeout works reliably, setting an alarm is not only no
longer necessary but counterproductive, as it will trigger even if the
connection is not actually stalled but merely slow.

While here, improve the wording of the manual page's description of the
various options for setting a timeout.

MFC after:      1 week
23380f3e6ac9334e85489f92f7f20b700ede3368 Dag-Erling Smørgrav 2026-06-27 15:41:22

Revert "fetch: Stop setting an alarm"

This reverts commit 23380f3e6ac9334e85489f92f7f20b700ede3368.
1b5f832e268f1f1092d0ebfc3bab4a7228aae20b Dag-Erling Smørgrav 2026-06-29 15:53:53
Commit & revert pair: libfetch: Make fetch_ref an inline
libfetch: Make fetch_ref an inline

Make fetch_ref() an inline and provide a fetch_deref().

MFC after:      1 week
672cb7320a2754788bddf5cd026721b6f70a0d30 Dag-Erling Smørgrav 2026-06-29 13:29:10

Revert "libfetch: Make fetch_ref an inline"

This reverts commit 672cb7320a2754788bddf5cd026721b6f70a0d30.
d40b35f8eb1dbab430d595193ddb1c950766bcac Dag-Erling Smørgrav 2026-06-29 15:53:53
Commit & revert pair: libc/resolv: Export __res_conf_name
libc/resolv: Export __res_conf_name

Add a new global variable, __res_conf_name, which is initialized to
_PATH_RESCONF and used in its place by res_init().  This allows test
programs (and applications) to select a different configuration file
to read instead of /etc/resolv.conf.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220610
702c24ccc0c208e9bc697e775abe47ff723e3012 Dag-Erling Smørgrav 2026-06-28 09:37:40

Revert "libc/resolv: Export __res_conf_name"

This reverts commit 702c24ccc0c208e9bc697e775abe47ff723e3012.
f52803e475d50f6d1996aa97c14be043e288185c Dag-Erling Smørgrav 2026-06-29 15:53:52
Commit & revert pair: pkgbasify: Add new utility
pkgbasify: Add new utility

The pkgbasify utility converts a system installed from distribution sets
to packaged base by registering, without actually installing, a set of
packages that corresponds to what is already installed.

MFC after:      1 week
e6467516f584505ac29fd370966abd530a7b5454 Dag-Erling Smørgrav 2026-06-29 00:41:11

Revert "pkgbasify: Add new utility"

This reverts commit e6467516f584505ac29fd370966abd530a7b5454.
b3a970fc9202cc7c9e80e1bcb83d7d860a3475c5 Dag-Erling Smørgrav 2026-06-29 15:53:52
Commit & revert pair: Retire dialog
Retire dialog

This is the last remaining piece of GPL software in the base system.
The installer transitioned to bsddialog four years ago, and the last
remaining dialog consumer, dpv, was turned off more than two years ago.
Retire dpv, libdpv, libfigpar (used only by dpv), and dialog itself.

(cherry picked from commit 73bb4a92985d747462d866248c1e7623f7ff1a7f)
5b2bdadeb6c25c10dac9722fd66a668e14d3b384 Dag-Erling Smørgrav 2026-02-17 13:21:23

Revert "Retire dialog"

This reverts commit 5b2bdadeb6c25c10dac9722fd66a668e14d3b384.
2b9f38236151f1bb0f26ec14a72e553b8420da8b Dag-Erling Smørgrav 2026-06-29 15:53:51
Commit & revert pair: Retire the GNU subtree
Retire the GNU subtree

With GNU diff and cdialog gone, this is now an empty shell.

(cherry picked from commit 151dd62e005119dda24b8ff9b14aa5beaaa681ac)
9cc87ca23d9ccae814bea514aa4bdc791f2d6e46 Dag-Erling Smørgrav 2026-02-18 09:02:08

Revert "Retire the GNU subtree"

This reverts commit 9cc87ca23d9ccae814bea514aa4bdc791f2d6e46.
7aa0fb6181b8f520c0dde548eb7f0e03cdf3ae13 Dag-Erling Smørgrav 2026-06-29 15:53:48
Revert "ping/tests: expect bell chars from stderr after initial status"
This reverts commit 5b8c28adb829b50fb8ac065637fa99f717858bab.

The commit message was wrong.

Reported by:    des
7ac9995a062ff9f78b634fe403e6a313f5637945 Siva Mahadevan 2026-06-30 13:00:30
Commit & revert pair: zfs: Wire sha512 offload to the build
zfs: Wire sha512 offload to the build

FreeBSD main just got the CPUID_STDEXT4_SHA512 define.

OpenZFS PR #18732
cd61eb4f6681b13d98b6a7be252500ad30f05f74 Alexander Motin 2026-07-02 17:58:12

Revert "zfs: Wire sha512 offload to the build"

This reverts commit cd61eb4f6681b13d98b6a7be252500ad30f05f74.

Some people report module load failure due to undefined symbol.
I don't have those problems myself, so it might be a question of
full rebuild.  But I don't have time right now, so just revert.
b77f6ae68941c0a1f624fe351becd3726bac1cee Alexander Motin 2026-07-04 09:14:02

Unclassified commits

Not classified automatically, and waiting for manual attention.

-- no commits in this category this week --

Technical notes

Dates:

Automatic grouping:

Automatic categories:

Source code:


Generated with commits-periodical 0.20 at 2026-07-13 17:53:16+00:00.

This work is supported by Tarsnap Backup Inc.

Alternate version: 2026-06-29 (debug) (contains info about the classification)