FreeBSD git weekly: 2025-09-08 to 2025-09-14

Introduction

This is a display of mostly-automatically-classified git commits from 2025-09-08 to 2025-09-14.

In the future, these reports might include summaries or additional information, but for now our focus is figuring out what type of classification would be most useful.

DEBUG: This version of the report is primarily for checking the classifiers, and therefore contains extra information (in this colour).

DEBUG: In addition, debug pages for the latest week are often produced by a daily or hourly cronjob, and thus might not have any human review. Don't worry if you see commits in the wrong section; I'll check and fix them.

Table of contents and commits per category:

(2) Emphasized commits (these are copies, not in stats)
0 0.0% Userland programs
7 5.0% Documentation
30 21.3% Hardware support
8 5.7% Networking
28 19.9% System administration
2 1.4% Libraries
3 2.1% Filesystems
27 19.1% Kernel
15 10.6% Build system
0 0.0% Internal organizational stuff
3 2.1% Testing
9 6.4% Style, typos, and comments
3 2.1% Contrib code
6 4.3% Reverted commits
0 0.0% Unclassified commits
141 100% total
Technical notes about this page

debug: info about the automatic classification

num % num changed stage
6 4.3% 0 00-reverts
9 6.4% 0 01-style
15 10.6% 0 02-filenames_wildcards
75 53.2% 0 03-filenames_plain1
26 18.4% 0 04-filenames_plain2
9 6.4% 0 05-summary-prefix
1 0.7% 0 Manually-classified commits
0 0.0% 0 Unclassified commits

debug: more stats

num % stage
0 0.0% Misclassified commits
140 99.3% Classified commits, no corrections

debug: groups

26 18.4% Commits in groups

Emphasized commits

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

packages: Turn off MANSPLITPKG by default
Manpages are very small, and having a separate manpages package for
every base package is quite annoying for users.  Turn this option
off by default.

Discussed with: bapt
Reviewed by:    manu, emaste
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D52417
a8a18eeb5e1711ad27c3ee20eb342b73d3badffa Lexi Winter 2025-09-10 18:38:01

debug: classified in 05-summary-prefix by '^packages:'

UPDATING: mention the src.conf change
Fixes:                https://cgit.freebsd.org/src/commit/?id=dd8c666d8b78 ("src.sys.mk: Support src.conf in SRCTOP")
ab2fea3f9a5a58f0ba90499ad3a8614e3dca0c5f Dag-Erling Smørgrav 2025-09-12 17:13:51

debug: classified in 05-summary-prefix by '^UPDATING'

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.

man: Fix usage message
dc38cf116c820df0be341ec5e359de0012b2d58a Dag-Erling Smørgrav 2025-09-08 13:26:43

debug: classified in 03-filenames_plain1 by 'usr.bin/man/'

random.4: Document the kern.random.nist_healthtest_enabled tunable
Reviewed by:  cem, emaste
MFC after:      2 weeks
Sponsored by:   Stormshield
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D52231
27e2afa4f27cda036bd81d72357cc6be98869783 Mark Johnston 2025-09-08 14:45:08

debug: classified in 02-filenames_wildcards by '.*\.[1-9]'

ports.7: Fix example of passing variables on the command line
make(1)'s -D flag does not allow for setting the value of the variable.
It just defines the variable and sets its value to 1. In fact, make(1)
treats "=" as just another character in the variable name:

```
$ make -DA=2 -V A  # Output is just an empty line.

$ make -DA=2 -V A=2  # Variable "A=2" is defined and set to "1".
1
```

Fixes:  https://cgit.freebsd.org/src/commit/?id=d25f7d324a9d ports.7: Document DEBUG_FLAGS and the process of debugging ports
MFC after:      3 days
9365a328596c9f156deaa15fa018b76b3a6e6b18 Mateusz Piotrowski 2025-09-10 08:52:15

debug: classified in 02-filenames_wildcards by '.*\.[1-9]'

nuageinit: Remove duplicate description of users.{user}.groups
Reviewed by:            bapt@
Approved by:            bapt@
Differential Revision:  https://reviews.freebsd.org/D52436
9f3330f5224ea2384a1c7d79a5b1f2784f7c14b6 Jesús Daniel Colmenares Oviedo 2025-09-11 16:47:07

debug: classified in 02-filenames_wildcards by '.*\.[1-9]'

backlight(9): add cross-ref to backlight(8)
Reviewed by:  bcr
MFC after:      3 days
a74c8b8236c9816fb28186c16f7ca999f6fdd573 Lars Engels 2025-09-11 19:47:00

debug: classified in 02-filenames_wildcards by '.*\.[1-9]'

uptime: Mention libxo support in manual page
MFC after:    3 days
Sponsored by:   Klara, Inc.
Reviewed by:    markj
Differential Revision:  https://reviews.freebsd.org/D52489
55bd607b9930e5f61219007ad0a81801c8cfdbf3 Dag-Erling Smørgrav 2025-09-11 20:51:48

debug: classified in 02-filenames_wildcards by '.*\.[1-9]'

UPDATING: mention the src.conf change
Fixes:                https://cgit.freebsd.org/src/commit/?id=dd8c666d8b78 ("src.sys.mk: Support src.conf in SRCTOP")
ab2fea3f9a5a58f0ba90499ad3a8614e3dca0c5f Dag-Erling Smørgrav 2025-09-12 17:13:51

debug: classified in 05-summary-prefix by '^UPDATING'

Hardware support

Hardware drivers and architecture-specific code.

random: Make the min-entropy estimate configurable
Right now the cutoff values for the RCT and APT tests are computed with
a fixed min-entropy estimate of 1.  In preparation for permitting
alternative estimates for "pure" sources (i.e., hardware noise sources),
extend the code to handle alternative estimates of an integer number of
bits.

For the RCT test, the cutoff is simply the formula from section 4.4.1 of
NIST SP 800-90B.  For the APT test, I used Excel to compute a lookup
table using the formula provided in section 4.4.2.

Reviewed by:    cem
MFC after:      2 weeks
Sponsored by:   Stormshield
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D52228
228302e630dd95586fc22b29b025b8a98b593740 Mark Johnston 2025-09-08 14:40:42

debug: classified in 03-filenames_plain1 by 'sys/dev/'

random: Fix synchronization of hc_source_mask
This variable provides a mask of all registered entropy sources and is
updated when drivers attach and detach (or by sysctl).  However, nothing
was synchronizing accesses to it.  Use the harvest lock to provide
mutual exclusion for updates, and use atomic_load_int() to mark unlocked
reads.

Reviewed by:    cem
MFC after:      2 weeks
Sponsored by:   Stormshield
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D52230
c942d9e83ef1122a670bb39736d55fe8f90af83e Mark Johnston 2025-09-08 14:42:14

debug: classified in 03-filenames_plain1 by 'sys/dev/'

random: Allow pure entropy sources to provide a min-entropy estimate
The current implementation of the NIST health tests assumes a
min-entropy estimate of one bit per sample, which is quite conservative.
For so-called "pure" sources (e.g., virtio-random, TPM) it might be nice
to support larger estimates so that the tests catch failed devices more
quickly.

Thus:
- let each pure random source provide an estimate, so that downstreams
  or driver implementors can override defaults if they want to;
- increase the default estimate for pure sources;
- for pure sources initialize the state machine at source registration
  time.

Reviewed by:    cem
MFC after:      2 weeks
Sponsored by:   Stormshield
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D52232
f865264f6a5eba4025c0f6284a48f383717fd74e Mark Johnston 2025-09-08 14:45:23

debug: classified in 03-filenames_plain1 by 'sys/dev/'

random: Exclude the timestamp from healthtest for pure sources
So-called pure sources provide entropy at regular intervals, so the
timestamp counter provides little entropy.  Exclude it from health
testing for such sources.

Reviewed by:    cem, emaste
MFC after:      2 weeks
Sponsored by:   Stormshield
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D52233
480928ae657d81e41f8c10837cd1cf0ca87b14ae Mark Johnston 2025-09-08 14:46:12

debug: classified in 03-filenames_plain1 by 'sys/dev/'

Add random Intel Elkhart Lake device IDs.
ef083de7d472b13bbaa18a165b66b93909422b2e Dmitry Luhtionov 2025-09-08 16:28:24

debug: classified in 03-filenames_plain1 by 'sys/dev/'

vtnet: fix compilation for NOIP configs
Reported by:  bz
Fixes:          https://cgit.freebsd.org/src/commit/?id=3008f30d2c2c ("vtnet: improve checksum offloading")
MFC after:      3 days
614e9b33bf5594d9d09b5d296afa4f3aa6971823 Michael Tuexen 2025-09-08 20:46:41

debug: classified in 03-filenames_plain1 by 'sys/dev/'

nvme: Linux compat: don't filter & 0x3.
Strictly speaking, opc & 0x3 == 3 is input and output at the same
time. This is undefined, in general. But for vendor commands, it's
vendor specific. Linux allows it generally and treats it as a read,
which is what we do too, so remove this check to be more compatible with
Linux's behavior (which we're trying to emulate).

Sponsored by:           Netflix
952ce991ec6c699ef59528731a9af75152767ef0 Warner Losh 2025-09-08 21:09:49

debug: classified in 03-filenames_plain1 by 'sys/dev/'

run: enable seqno offload
Enable sequence number offload.

This should both enable the sequence number offloading and disable
the net80211 TX lock from being acquired/released/checked.

Differential Revision:  https://reviews.freebsd.org/D50747
Okayed by: bz
e76e631bb0e9d338f48f6208e7f8df9d76980abd Adrian Chadd 2025-06-08 22:01:05

debug: classified in 03-filenames_plain1 by 'sys/dev/'

rsu: enable seqno offload
Enable sequence number offload.

This should both enable the sequence number offloading and disable
the net80211 TX lock from being acquired/released/checked.

Differential Revision:  https://reviews.freebsd.org/D50749
Okayed by: bz
5d31e67a2003d0405b83806da22135b6c2e1390b Adrian Chadd 2025-06-09 02:06:19

debug: classified in 03-filenames_plain1 by 'sys/dev/'

rsu: implement A-MPDU TX; add TODO items for further work
* Enable A-MPDU TX by fixing the A-MPDU TX establish routine;
  always assign sequence numbers from net80211 (for now); and
  fix the descriptor programming.

* Add TODO items around CAM allocation for keys, MAC ID stuff which
  we likely need to fix for working IBSS/AP behaviour, and whatever
  other bits and pieces I noticed.

* Disable amsdu2ampdu, we can decap A-MSDU just fine in net80211,
  doubly so if we somehow get A-MSDU inside an A-MPDU.

I've tested / verified that A-MPDU TX and A-MPDU RX is correctly
established and functioning by using rtwn in monitor mode.

I used an old r92su linux out of tree driver for comparison.

Differential Revision:  https://reviews.freebsd.org/D50748
Okayed by: bz
b73f52a0344d0f18207ef51397ceded3ffe58cd0 Adrian Chadd 2025-06-09 02:09:37

debug: classified in 03-filenames_plain1 by 'sys/dev/'

Commit group #0: qlnxe
qlnxe: Unconditionally enable extended media types

Those extended media types are available since about 2015 [1]. All
supported branches already have them defined.

No functional change intended.

[1] eb7e25b22f1c ifmedia changes: Extend the number of available subtypes for Ethernet media ...

Reviewed by:    kbowling
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D52374
08356a733eb7a7bef1afe20ded2d983b55310de7 Zhenlei Huang 2025-09-09 10:04:54

qlnxe: Support SIOCGIFXMEDIA ioctl

ifconfig(8) will try SIOCGIFXMEDIA first and then retry SIOCGIFMEDIA if
that fails. Since the driver reports extended media types, support
SIOCGIFXMEDIA ioctl directly rather than doing another round.

Reviewed by:    kbowling
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D52375
6e3c8c0f709ab0b9d70e2725e58f4a4ba7a4404e Zhenlei Huang 2025-09-09 10:04:54

qlnxe: Report speeds in decimal format

It is more natural to read the speed in decimal format than hexadecimal
one.

Spotted this while diagnosing PR 287445,

```
[__ecore_configure_pf_max_bandwidth:6864(qlnx-0)]Configured MAX bandwidth to be 000061a8 Mb/sec
[__ecore_configure_pf_min_bandwidth:6922(qlnx-0)]Configured MIN bandwidth to be 750 Mb/sec
```

Reviewed by:    kbowling
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D52376
e1c5e043961ab3a5429a0c6e727265dfa819cf00 Zhenlei Huang 2025-09-09 10:04:55
hwpmc: On attach, ensure owner is a target effective GID's member
This restores a check that existed prior to commit be1f7435ef218b1d
("kern: start tracking cr_gid outside of cr_groups[]").

While here, improve pmc_can_attach()'s style by changing the type of
'decline_attach' to 'bool', fixing tests on it, adding missing
parentheses to 'return' statements, and by changing its return value
type to 'bool'.

Fixes:          https://cgit.freebsd.org/src/commit/?id=be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52252
1c3c698ba4c40485ebbbd157cb49172cfa7de9b2 Olivier Certner 2025-08-26 09:43:38

debug: classified in 03-filenames_plain1 by 'sys/dev/'

hwpmc: On attach, fix allowing a PMC's owner to attach it to itself
The returned value in this case was wrong, and would basically prevent
some PMC's owner process to attach that PMC to itself although the
security checks underneath would have allowed it.

Now that this early return has been fixed, its block basically becomes
a performance short-circuit which has no effect from a functional
standpoint.

Fixes:          https://cgit.freebsd.org/src/commit/?id=ebccf1e3a6b1 ("Bring a working snapshot of hwpmc(4), ...")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
1c40b15971f09c0c0676ae476b88b32166eae8ac Olivier Certner 2025-09-09 12:48:05

debug: classified in 03-filenames_plain1 by 'sys/dev/'

hwt: On attach, ensure owner is a target effective GID's member
This restores a check that existed prior to commit be1f7435ef218b1d
("kern: start tracking cr_gid outside of cr_groups[]").

Fixes:          https://cgit.freebsd.org/src/commit/?id=be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52253
d9e11f01ef076749e58614c03168e89f161dd978 Olivier Certner 2025-08-26 10:05:15

debug: classified in 03-filenames_plain1 by 'sys/dev/'

ixgbe: Fix incomplete speed coverage in link status logging
Originally ixgbe_if_update_admin_status() only handled 1G and 10G speeds,
causing any other speeds to display as "1 Gbps" in link status logs.

This issue is fixed by adding link speed to string conversion logic through
the introduction of a helper function, ixgbe_link_speed_to_str(), which
corrects the misleading logs to reflect accurate link speeds.

Signed-off-by: Yogesh Bhosale yogesh.bhosale@intel.com

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=288960
Reported by:    Mike Belanger - QNX
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D52442
46347b3619757e3d683a87ca03efaf2ae242335f Yogesh Bhosale 2025-09-09 17:01:04

debug: classified in 03-filenames_plain1 by 'sys/dev/'

ixgbe: Remove unused function ixgbe_is_media_cage_present
Remove the unused function ixgbe_is_media_cage_present that
generates a compiler warning.

Signed-off-by: Yogesh Bhosale yogesh.bhosale@intel.com

Reported by:    markj
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D52467
275f7d72ff6a71bbe46b4282a88f0ea9a24be22a Yogesh Bhosale 2025-09-10 07:26:09

debug: classified in 03-filenames_plain1 by 'sys/dev/'

re: Make sure re_rxeof() is called in net epoch context
It may pass packets up the stack and so needs to be called in a network
epoch.  When a watchdog timeout happens, we need to enter a section
explicitly.

Reviewed by:    zlei, glebius, adrian
MFC after:      2 weeks
Sponsored by:   Innovate UK
Differential Revision:  https://reviews.freebsd.org/D51885
b653a281f5a977ba73b3d405874f8af8e8b6b50d Mark Johnston 2025-09-10 14:35:24

debug: classified in 03-filenames_plain1 by 'sys/dev/'

ixgbe: Correct ixgbe_link_speed_to_str comment
PR:           https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=288960
Reported by:    michaelo
MFC after:      2 days
c1532f74e4684f4b4227e873bae05b16ccc0a17c Kevin Bowling 2025-09-10 16:45:35

debug: classified in 03-filenames_plain1 by 'sys/dev/'

pci_vendors: update to 2025-07-11
2e72bd422956f831ec7e54255bd12fb721887f4a Baptiste Daroussin 2025-09-11 07:53:32

debug: classified in 03-filenames_plain1 by 'share/misc/pci_vendors'

usb_vendors: update to 2025-07-26
70afc95fc6ecec6edabf5b1e8b060bb0b29ebd55 Baptiste Daroussin 2025-09-11 07:54:17

debug: classified in 03-filenames_plain1 by 'share/misc/usb_vendors'

bnxt: Fix the request length in bnxt_hwrm_func_backing_store_cfg()
PR:           https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=286720
Reviewed by:    zlei
MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D50491
5ca390f03bc63bccc8952313d536fd4bcabf2cab Mark Johnston 2025-09-11 14:36:00

debug: classified in 03-filenames_plain1 by 'sys/dev/'

ichwd: address unused function warning by marking as __unused
Reported by:    markj, bz
Approved by:    markj (mentor)
Fixes:  https://cgit.freebsd.org/src/commit/?id=2b74ff5fceb6 ("ichwd: introduce i6300esbwd watch dog driver")
Differential Revision: https://reviews.freebsd.org/D52476
3449a3abab892a0a1124ee4edbc10d6d28b87af3 ShengYi Hung 2025-09-10 16:33:33

debug: classified in 03-filenames_plain1 by 'sys/dev/'

snd_hda: Add patch for Framework 16 AMD Ryzen AI 300 Series
The new Framework 16 with ALC285 exhibits the same issue as the previous
model. Therefore, we apply the same fix to the new model.

Reviewed by:    emaste, Daniel Schaefer <dhs@frame.work>
Approved by:    lwhsu (mentor)
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
Sponsored by:   Framework Computer Inc
Differential Revision: https://reviews.freebsd.org/D52423
7f81b2519aebcf90d7e027122ca99b628ca81ed9 ShengYi Hung 2025-09-08 11:15:14

debug: classified in 03-filenames_plain1 by 'sys/dev/'

Commit group #1: cxgbe tom
cxgbe tom: Halve the size of offload transmit software descriptors

Use bitfields to pack tx_credits and plen into a single 32-bit word.

Reviewed by:    np
Sponsored by:   Chelsio Communications
Differential Revision:  https://reviews.freebsd.org/D47759
5a38857684907c52982787dbac2c5e5c8abfd4f8 John Baldwin 2025-09-11 21:10:39

cxgbe tom: Support sending "raw" WR mbufs on plain TCP and TLS sockets

This is intended to support control work requests that manipulate
connection state but do not transmit data.  Raw WRs are transmitted
immediately if possible, otherwise they are queued to an mbufq in the
toe pcb until sufficient credits are available.  Raw WRs take
precendence over transmitting socket data.

Reviewed by:    np
Sponsored by:   Chelsio Communications
Differential Revision:  https://reviews.freebsd.org/D47761
e2a2a7581c9663a08b8d92a34040d6fcdfc20816 John Baldwin 2025-09-11 21:10:39

cxgbe tom: Export alloc_raw_mbuf for use in other TOE drivers

Reviewed by:    np
Sponsored by:   Chelsio Communications
Differential Revision:  https://reviews.freebsd.org/D47762
a7aab22d2bf36191baa646fc136ca020dad209f3 John Baldwin 2025-09-11 21:10:40

cxgbe tom: Send auxiliary TLS work requests as raw WR mbufs

In particular, the work request to update the TCB state when switching
from plain TCP to TLS is now queued on the connection's offload
transmit queue rather than over the per-port control queue.

This also handles an unlikely edge case that a connection does not
have sufficient credits to transmit other work requests synchronously
such as programming the key in on-card memory or altering TCB fields.

Reviewed by:    np
Sponsored by:   Chelsio Communications
Differential Revision:  https://reviews.freebsd.org/D47763
d869395ac4bd248da7c5bdc67afb19ca89fbeeee John Baldwin 2025-09-11 21:10:40
e1000: fix igb VF stats
igb VF must not read normal stat registers and only read a limited
set of registers.  The PF registers also don't make since as the VF
is an internal port, and there is no PHY to collect stats like CRC
errors from.

PR:     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282309
Obtained from:  Juniper Networks, Inc.
Differential Revision:  https://reviews.freebsd.org/D52326
3c60ea77649d0f0d944c0830225c525541010710 John-Mark Gurney 2025-09-01 22:03:07

debug: classified in 03-filenames_plain1 by 'sys/dev/'

Networking

Network-related commands, library, and kernel.

[net80211] Quieten the logging from ieee80211_vht_get_vhtflags()
The commit in Fixes: introduced logging the output bits from
ieee80211_vht_get_vhtflags().  This ends up causing quite a lot
of logging when net80211 is doing things like processing
received beacons.

So just remove the logging; if it's needed again then a developer
can add it back to that location, or just use dtrace to capture
the return value.

Fixes:  https://cgit.freebsd.org/src/commit/?id=4bf049bfeefd9
Differential Revision: https://reviews.freebsd.org/D52142
Reviewed by:    bz
d6616705231ce5a90068136f1aae05c143e8c0eb Adrian Chadd 2025-08-25 00:50:01

debug: classified in 03-filenames_plain1 by 'sys/net80211/'

vtnet: improve checksum offloading
When transmitting a packet over the vtnet interface, map the
csum flags CSUM_DATA_VALID | CSUM_PSEUDO_HDR to the virtio
flag VIRTIO_NET_HDR_F_DATA_VALID.
When receiving a packet over the virtio network channel, translate
the virtio flag VIRTIO_NET_HDR_F_NEEDS_CSUM not to CSUM_DATA_VALID |
CSUM_PSEUDO_HDR, but to CSUM_TCP, CSUM_TCP_IPV6, CSUM_UDP, or
CSUM_UDP_IPV6.
The second change fixes a series of issue related to checksum
offloading for if_vtnet.
While there, improve the stats counters to allow a detailed view
on what is going on in relation to checksum offloading.

PR:                     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=165059
Reviewed by:            tuexen, manpages
MFC after:              3 days
Differential Revision:  https://reviews.freebsd.org/D51686
3008f30d2c2cabdd7e17f7fb922139da8681ffbd Timo Völker 2025-09-08 20:38:49

debug: classified in 05-summary-prefix by '^vtnet:'

net80211: add support for drivers to disable sending NULL data frames
net80211 has various places where null data / null qos data frames
are sent.  However plenty of NICs shouldn't be sending them from
net80211 and it may even upset their 802.11n window / sequence number
tracking.

So add support here.

Differential Revision:  https://reviews.freebsd.org/D52297
Reviewed by:    bz
9bfb1405332c6c847dd29e4db4dd3afb56662021 Adrian Chadd 2025-08-27 17:03:22

debug: classified in 03-filenames_plain1 by 'sys/net80211/'

sockstat: fix the -j option with piped output after libxo integration
The legacy code handling -j in display() was causing xo_finish() to be
skipped.  It has also been causing a memory leak since 0726c6574f8
(sockstat: Add automatic column sizing and remove -w option)

Fixes:          https://cgit.freebsd.org/src/commit/?id=7b35b4d1963 (sockstat: add libxo support)
MFC after:      1 week
Reported by:    glebius
Reviewed by:    glebius
Sponsored by:   ConnectWise
Pull Request:   https://github.com/freebsd/freebsd-src/pull/1842
9bfbc6826f72eb385bf52f4cde8080bccf7e3ebd Alan Somers 2025-09-09 16:29:34

debug: classified in 03-filenames_plain1 by 'usr.bin/sockstat/'

tcp: minor cleanup
No functional change intended.

MFC after:      3 days
Sponsored by:   Netflix, Inc.
c3d5387a7bd814a6c341902c29a3f8aaa956fadb Michael Tuexen 2025-09-10 19:46:24

debug: classified in 03-filenames_plain1 by 'sys/netinet/'

ng_device: replace dependency on vnode.h with fcntl.h
Update to current convention of using fcntl.h O_* flags instead of vnode.h IO_*
ones, as explained in sys/fs/devfs/devfs_vnops.c.

Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr>
Reviewed by: imp, jhb
Pull Request: https://github.com/freebsd/freebsd-src/pull/1827
593d432e5852a254eeef83a8b1762492bb08668e Quentin Thébault 2025-08-28 06:27:03

debug: classified in 03-filenames_plain1 by 'sys/netgraph/'

ng_device: enable setting the device to non-blocking mode
Return success when FIONBIO or FIOASYNC ioctl are received in order to support
being set to non-blocking through fcntl(2). We return an error on FIOASYNC with
non-zero data argument since we do not support O_ASYNC.

Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr>
Reviewed by: imp, jhb
Pull Request: https://github.com/freebsd/freebsd-src/pull/1827
9fadaee7ecce02ab11cfbb18ea63b9bf1fb11bfc Quentin Thébault 2025-08-28 08:19:41

debug: classified in 03-filenames_plain1 by 'sys/netgraph/'

bridge: Do outbound VLAN filtering in bridge_enqueue
Outbound VLAN filtering wasn't being done for host-originated frames,
because bridge_output was missing a call to bridge_vfilter_out, like
in bridge_forward and bridge_broadcast.

Rather than adding another call, move the filtering to bridge_enqueue,
which ensures all frames will be filtered.  This slightly changes the
observable behaviour since we now do pfil before vlan filtering, but
that's probably closer to what users expect anyway.

MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D52380
6a888f62413a1a6117f5053f124c97277ed18484 Lexi Winter 2025-09-12 21:03:00

debug: classified in 03-filenames_plain1 by 'sys/net/'

System administration

Stuff in man section 8 (other than networking).

leap-seconds: Update to leap-seconds.3960835200 from IERS
Current leap-seconds file has already expired on 28 June 2025

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289352
Obtained from:  https://hpiers.obspm.fr/iers/bul/bulc/ntp/leap-seconds.3960835200
MFC after:      3 days
4729d5e2e2e3013fe1aaf92d5d932a3414f22ab3 Yasuhiro Kimura 2025-09-07 11:38:46

debug: classified in 03-filenames_plain1 by 'sbin/'

moused: fix GCC build
error: 'static' is not at beginning of declaration [-Werror=old-style-declaration]
54cc3da443da7e4a8a483d1fe46071382ff06ed0 Ahmad Khalifa 2025-09-09 03:54:24

debug: classified in 03-filenames_plain1 by 'sbin/'

bsdinstall: Drop outdated comments about ZFS dataset compression
All datasets on zroot pool are compressed by default since FreeBSD 11.0 [1],
no need to mention that on some specific datasets these days.

[1] 47206692f2cca020891d1eec5028e02c3e6f56c5

Reviewed by:    jrm (mentor), ziaee
MFC after:      3 days
Differential Revision:   https://reviews.freebsd.org/D52304
f304c5bb8be65df83b86f8a50e1c7982b266262d Michael Osipov 2025-08-31 10:10:48

debug: classified in 03-filenames_plain1 by 'sbin/'

certctl: Use __DECONST rather than reimplementing
26d56dec1e0e3bab571a00fcb9c39d3269fbcf97 Jessica Clarke 2025-09-09 13:27:02

debug: classified in 03-filenames_plain1 by 'sbin/'

certctl: Include sys/types.h
This is needed to fix bootstrapping on FreeBSD versions before commit
56ee5c551f89 ("sysctl: make sys/sysctl.h self contained").  Moreover,
certctl should really be including sys/types.h directly since it uses
size_t.

MFC after:      1 week
2024887abc7d1b931e00fbb0697658e98adf048d Mark Johnston 2025-09-09 13:47:42

debug: classified in 03-filenames_plain1 by 'sbin/'

stand: remove unused variables
7d48a56205224cfa969c32b47496dc8ac6a6a637 Ahmad Khalifa 2025-09-09 17:19:24

debug: classified in 03-filenames_plain1 by 'stand/'

Commit group #2: loader/efi
loader/efi: return error from efi_find_framebuffer

Also return actual errno values in other code paths.
(suggested by tsoome)

Reviewed by:    tsoome, imp
Differential Revision:  https://reviews.freebsd.org/D52432
cd9b43edd5a716fdb764adc281a4a09c617148f0 Ahmad Khalifa 2025-09-09 17:19:33

loader/efi: plug memory leak

Reviewed by:    tsoome
Differential Revision:  https://reviews.freebsd.org/D52433
b4c5d5827fdd4c4cf6c1c7576c29a4b3345a7390 Ahmad Khalifa 2025-09-09 17:19:50

loader/efi: remove is_last parameter from find_currdev

It is unused.

Reviewed by:    tsoome
Differential Revision:  https://reviews.freebsd.org/D52434
18141961df8ce00d44da83989d06a789e8415491 Ahmad Khalifa 2025-09-09 17:19:55
efi: translate errno to EFI status on exit
Translate the given errno to an efi status instead of always exiting
with EFI_LOAD_ERROR.
101a35e84da311000b9ee12341bbd80bc4c7a721 Ahmad Khalifa 2025-09-09 17:19:59

debug: classified in 03-filenames_plain1 by 'stand/'

freebsd-update: sort options alphabetically
This helps future developers when adding additional options handlers in the
surrounding blocks.

This is effectively a no-op.

MFC after:      1 month
0adec3d7ec96105c402ff2286e402ad63c845066 Enji Cooper 2025-09-09 19:11:13

debug: classified in 03-filenames_plain1 by 'sbin/'

cpucontrol: fix -DDEBUG build
f113980fe24fbbb95b75321cb916ed9d48771840 Gleb Smirnoff 2025-09-09 20:32:16

debug: classified in 03-filenames_plain1 by 'sbin/'

nanobsd: Alphebetize -I
Put -I in its proper place alphabetically

Sponsored by:           Netflix
0833a3fe5b33f0ef4cdbd4e9b3af0fcd223d366a Warner Losh 2025-09-09 15:56:09

debug: classified in 05-summary-prefix by '^nanobsd:'

nanobsd: Expose do_image_prep on command line
do_image_prep will skip the customizations and other image prep that's
the same each time. It was just set before for -I. Expose it now with -p
which doesn't have the other side effects. Also, fix a bug where early
customization was run in this case. We don't want that run multiple
times when building an image from an existing tree or when skipping
image prep (there's no reason to make it a separate hook). Also change
example small media from Compact Flash to SD Card (though maybe it
should be microSD card, eMMC or similar, but that's getting too
verbose).

Sponsored by:           Netflix
90593b1bdb80a41b499b47437b4f545c24666b2d Warner Losh 2025-09-09 16:00:14

debug: classified in 05-summary-prefix by '^nanobsd:'

ngctl: Fix build without JAIL
Reported by:  Michael Dexter
Fixes:          https://cgit.freebsd.org/src/commit/?id=72d01e62b082 netgraph: teach ngctl to attach and run itself in a jail
MFC after:      1 day
685e60e860d61f6e1bcf981f5c30647e0c025702 Zhenlei Huang 2025-09-10 04:00:05

debug: classified in 03-filenames_plain1 by 'sbin/'

loader/efi: fix non-x86 build
Pointy hat to:        vexeduxr
Reported by:    Bakul Shah
80661e2153d2bc916444cb3be8aa50d0d110ad57 Ahmad Khalifa 2025-09-10 07:43:27

debug: classified in 03-filenames_plain1 by 'stand/'

dhclient: improve UDP checksum handling
When sending UDP packets:
* compute the checksum in the correct order. This only has an impact
  if the length of the payload is odd.
* don't send packet with a checksum of zero, use 0xffff instead as
  required.
When receiving UDP packets:
* don't do any computations when the checksum is zero.
* compute the checksum in the correct order. This only has an impact
  if the length of the payload is odd.
* when computing the checksum, store the pseudo header checksum
* if the checksum is computed as zero, use 0xffff instead.
* also accept packets, when the checksum in the packet is the pseudo
  header checksum.
The last point fixes a problem when the DHCP client runs in a VM,
the DHCP server runs on the host serving the VM and the network
interface supports transmit checksum offloading. Since dhclient
doesn't use UDP sockets but bpf devices to read the packets, the
checksum will be incorrect and only contain the checksum of the
pseudo header.

PR:                     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=263229
Reviewed by:            markj, Timo Völker
Tested by:              danilo
MFC after:              3 days
Differential Revision:  https://reviews.freebsd.org/D52394
187ee62c71f2be62870f26ae98de865e330121be Michael Tuexen 2025-09-10 15:13:35

debug: classified in 03-filenames_plain1 by 'sbin/'

pfctl: Use pfctl_fopen
Use pfctl_fopen (which checks to ensure the given file isn't a directory)
for pfctl -f /path/to/pf.conf. Otherwise, if you accidentally use a dir
instead of a file (e.g. if you have an /etc/pf directory and don't notice
the name when tab-completing), you successfully install an empty ruleset.
ok sashan@

Obtained from:  OpenBSD, sthen <sthen@openbsd.org>, 2f48098846
Sponsored by:   Rubicon Communications, LLC ("Netgate")
66694675be291927d1442c62f852ad7f73652aaf Kristof Provost 2025-08-19 11:41:44

debug: classified in 03-filenames_plain1 by 'sbin/'

pfctl: support recusive printing of tables
Currently 'pfctl -a "*" -sr' recursively walks anchor tree and shows
rules found in every anchor. This commit introduces the same behavior
for tables. Command 'pfctl -a "*" -sT' prints all tables attached to
every anchor loaded to pf(4).

Inconsistency has been noticed by Klemens (kn@).

OK @bluhm, OK @kn

Obtained from:  OpenBSD, sashan <sashan@openbsd.org>, 3898e3532e
Sponsored by:   Rubicon Communications, LLC ("Netgate")
7aac81a639b49849e9ce1f59f538a2f491395037 Kristof Provost 2025-08-20 12:41:57

debug: classified in 03-filenames_plain1 by 'sbin/'

pfctl: fix killing state by source and destination address
The fix to pfctl_kill_src_nodes() comes from Olivier Croquin.
bluhm@ pointed out pfctl_net_kill_states() suffers from the
same copy'n'paste typo. Commit combines both fixes.

OK @bluhm, OK @kn

Obtained from:  OpenBSD, sashan <sashan@openbsd.org>, cde97ca321
Sponsored by:   Rubicon Communications, LLC ("Netgate")
4889545b8795b69bd9aca1c8320a8847f3cd6aeb Kristof Provost 2025-08-20 14:16:03

debug: classified in 03-filenames_plain1 by 'sbin/'

ifconfig: also fix removing IPv6 addresses without netlink
Reported by:  bdrewery
MFC after:      1 week
See also:       da50f49977cc4e6aae55cb2379313599249a8dd2
Sponsored by:   Rubicon Communications, LLC ("Netgate")
c8fb5a4d032b28dd97b9fa4a73f85a84d8d35fdd Kristof Provost 2025-09-10 14:55:56

debug: classified in 03-filenames_plain1 by 'sbin/'

rmuser.sh: Improve prompt consistency with adduser
While here, improve userlist error message.

PR:                     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289399
MFC after:              3 days
Reviewed by:            kbowling, rgrimes
Approved by:            kbowling, rgrimes (src)
Reported by:            michaeldexter, rgrimes
Differential Revision:  https://reviews.freebsd.org/D52464
fc68f8aac623b5494484adfa41ac600415609870 Alexander Ziaee 2025-09-09 17:06:29

debug: classified in 03-filenames_plain1 by 'sbin/'

pkg(7): Add support for pkg+ prefix to bootstrap pubkey
MFC After:    1 day
Sponsored by:   Amn Afzar Hoopad Inc
Differencial Revision:  https://reviews.freebsd.org/D52418
08b8843137b8be3f71608400907cb38bcda14965 Seyed Pouria Mousavizadeh Tehrani 2025-09-11 07:01:54

debug: classified in 03-filenames_plain1 by 'sbin/'

loader.efi: improve StartImage error message
StartImage() may return additional data from failure. This data
has text message followed by optional binary blob. Print
out the text message (if present) and free the data.
See 7.4.2 EFI_BOOT_SERVICES.StartImage() page 199
UEFI_Spec_Final_2.11.pdf.

Reviewed by:    imp
ed19c4ff846e09e00d8e2a756845261e2b6b7345 Toomas Soome 2025-09-04 12:24:25

debug: classified in 03-filenames_plain1 by 'stand/'

Commit group #3: nuageinit
nuageinit: chmod sudoers directory instead of chmod (again) sudoers file

* Set mode of sudoers to 0440.

Reviewed by:            bapt@, jlduran@
Approved by:            bapt@, jlduran@
Differential Revision:  https://reviews.freebsd.org/D52438
a5cc9b7b96dcba4d3ee98f2eb58c3f389590ddf0 Jesús Daniel Colmenares Oviedo 2025-09-11 16:49:56

nuageinit: Allow the use of network parameters from network-config

To better comply with the cloud-init specification, we need to
support the configuration of network-related parameters from
the network-config file, which is common in most deployments.

Reviewed by:            bapt@
Approved by:            bapt@
Differential Revision:  https://reviews.freebsd.org/D52419
95230b248f6412c2d1c416c1e9795c3192cdf750 Jesús Daniel Colmenares Oviedo 2025-09-11 16:52:30

nuageinit: Add doas support

* Set mode of etc directory to 0755.
* Use user.localbase sysctl instead of /usr/local.
* Add test case for doas.
* Set ${LOCALBASE} instead of /usr/local in nuageinit(7) man page.

Reviewed by:            bapt@
Approved by:            bapt@
Differential Revision:  https://reviews.freebsd.org/D52437
9a829e865697e623a046800545be7781a117125e Jesús Daniel Colmenares Oviedo 2025-09-11 16:54:24

nuageinit: Add me to copyright list

Approved by:    bapt@
18555060dcae4cad8f2f8968142fc02a2571377b Jesús Daniel Colmenares Oviedo 2025-09-11 17:00:41

Libraries

kvm_proclist(): Restore outputting the effective GID
In particular, fixes 'procstat -s -M' (only if there are less than 16
groups).

Reviewed by:    kib, emaste
Fixes:          https://cgit.freebsd.org/src/commit/?id=be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52260
7676df2faeb6dcbf20456574dcd2a7f4ab8fff8a Olivier Certner 2025-08-28 14:19:43

debug: classified in 03-filenames_plain1 by 'lib/'

lib/msun: cpow{,f,l}(CMLX(0.0, 0.0)) should return 1.0
8b41ba845c7e10b5f241a1f944fe9a8e19ad75a9 Steve Kargl 2025-09-11 16:38:17

debug: classified in 03-filenames_plain1 by 'lib/'

Filesystems

nfs: newnfs_setroot(): Remove an obsolete comment
This comment is obsolete, as:
1. This code is FreeBSD-specific and is not shared with other BSDs.
2. With our recent changes in commit be1f7435ef218b1d ("kern: start
   tracking cr_gid outside of cr_groups[]"), all of NetBSD, OpenBSD and
   FreeBSD have the effective GID in a separate field (DragonFlyBSD
   remains to this day an outlier).

MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52254
67f8bd5986a42a173ef9082abfcd523b1a3ac056 Olivier Certner 2025-08-26 10:26:36

debug: classified in 03-filenames_plain1 by 'sys/fs/'

nfscl: Restore sending the effective GID to the server
Fixes:          https://cgit.freebsd.org/src/commit/?id=be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52256
71db32347665753a3384e36dcf89c9e3a8af6529 Olivier Certner 2025-08-26 12:55:41

debug: classified in 03-filenames_plain1 by 'sys/fs/'

procfs: Restore printing the effective GID in 'status'
Reviewed by:    kib
Fixes:          https://cgit.freebsd.org/src/commit/?id=be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52257
d859d4c57eda8ad277611466b840637234712e42 Olivier Certner 2025-08-26 13:03:19

debug: classified in 03-filenames_plain1 by 'sys/fs/'

Kernel

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

kern: replace several EBADF with EINVAL
EBADF semantic is that the passed fd is invalid, not that it is of wrong
type.  Using EBADF in these places in kern_event.c and sys_procdesc.c
give bad examples to copy from.

Note that places in kern_event.c that checks KQ_CLOSING and return EBADF
are kept, since KQ_CLOSING is the transient state before the fd is
finally closed and become eligible for EBADF.

Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D52410
fd9e09cb2ab07993e8dc783c802f273329e70bb8 Konstantin Belousov 2025-09-07 10:59:45

debug: classified in 04-filenames_plain2 by 'sys/'

random: Make the entropy source registration interface more uniform
Most pure sources work under a "pull" model wherein a dedicated thread
polls the source at regular intervals (every 100ms).  A couple of
sources, however, will instead call random_harvest_direct() to provide
entropy samples.  Such sources were not calling random_source_register()
and thus weren't in the global random source list.

Modify "push" sources to use random_source_register() like other sources
do.  Such sources omit an implementation of rs_read and are thus skipped
by the above-mentioned thread.  This makes it easier to allow pure
sources to provide a min-entropy estimate in a uniform way.

Reviewed by:    cem
MFC after:      2 weeks
Sponsored by:   Stormshield
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D52229
8635f86977638eed966ec59cd319521fffb4df70 Mark Johnston 2025-09-08 14:41:47

debug: classified in 04-filenames_plain2 by 'sys/'

iommu_get_requester(): make it more resilient against arbitrary dev arg
If passed the parent of a device instead of the device, the loop might
end up with the host bridge in the pci local variable.  If the passed
device is not from the pci hierarchy, any of the calculated parents
might be NULL.

Change the interface to allow the caller to receive error.
Instead of asserting, just issue a message and return ENXIO,
allowing the caller to select appropriate action.

PR:     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289318
Reviewed by:    jah
Sponsored by:   The FreeBSD Foundation
MFC after:      2 weeks
Differential revision:  https://reviews.freebsd.org/D52406
c745a6818bcbf33cf7f59641c925d19b3f98cea8 Konstantin Belousov 2025-09-05 23:06:18

debug: classified in 04-filenames_plain2 by 'sys/'

kern_thr_exit(): clear kASTs in advance
PR:   https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289204
Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D52421
f51d7d5139a76d225c9f537bd948525ababdef0c Konstantin Belousov 2025-09-08 03:43:09

debug: classified in 04-filenames_plain2 by 'sys/'

geom: only set TDP_GEOM for user threads
For kernel threads, ASTs are not handled at all, so there is no reason
to expect that g_waitidle() would be called through AST scheduling.

PR:     https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289204
Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D52421
b0474e14895908f45c64158b0e558236923b8eb2 Konstantin Belousov 2025-09-08 13:46:08

debug: classified in 04-filenames_plain2 by 'sys/'

Commit group #4: vm_domainset
vm_domainset: Only probe domains once when iterating, instead of up to 4 times

Because of the 'di_minskip' logic, which resets the initial domain, an
iterator starts by considering only domains that have more than
'free_min' pages in a first phase, and then all domains in a second one.
Non-"underpaged" domains are thus examined twice, even if the allocation
can't succeed.

Re-scanning the same domains twice just wastes time, as allocation
attempts that must not wait may rely on failing sooner and those that
must will loop anyway (a domain previously scanned twice has more pages
than 'free_min' and consequently vm_wait_doms() will just return
immediately).

Additionally, the DOMAINSET_POLICY_FIRSTTOUCH policy would aggravate
this situation by reexamining the current domain again at the end of
each phase.  In the case of a single domain, this means doubling again
the number of times domain 0 is probed.

Implementation consists in adding two 'domainset_t' to 'struct
vm_domainset_iter' (and removing the 'di_n' counter).  The first,
'di_remain_mask', contains domains still to be explored in the current
phase, the first phase concerning only domains with more pages than
'free_min' ('di_minskip' true) and the second one concerning only
domains previously under 'free_min' ('di_minskip' false).  The second,
'di_min_mask', holds the domains with less pages than 'free_min'
encountered during the first phase, and serves as the reset value for
'di_remain_mask' when transitioning to the second phase.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277476
Fixes:          https://cgit.freebsd.org/src/commit/?id=e5818a53dbd2 ("Implement several enhancements to NUMA policies.")
Fixes:          https://cgit.freebsd.org/src/commit/?id=23984ce5cd24 ("Avoid resource deadlocks when one domain has exhausted its memory."...)
MFC after:      10 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D51249
d440953942372ca275d0743a6e220631bde440ee Olivier Certner 2025-07-07 20:29:12

vm_domainset: Simplify vm_domainset_iter_next()

As we are now visiting each domain only once, the test in
vm_domainset_iter_prefer() about skipping the preferred domain (the one
initially visited for policy DOMAINSET_POLICY_PREFER) becomes redundant.
Removing it makes this function essentially the same as
vm_domainset_iter_rr().

Thus, remove vm_domainset_iter_prefer().  This makes all policies behave
the same in vm_domainset_iter_next().

No functional change (intended).

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277476
MFC after:      10 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D51250
d0b691a7c1aacf5a3f5ee6fc53f08563744d7203 Olivier Certner 2025-07-07 20:37:14

vm_domainset: Refactor iterators, multiple fixes

vm_domainset_iter_first() would not check if the initial domain selected
by the policy was effectively valid (i.e., allowed by the domainset and
not marked as ignored by vm_domainset_iter_ignore()).  It would just try
to skip it if it had less pages than 'free_min', and would not take into
account the possibility of no domains being valid.

Factor out code that logically belongs to the iterator machinery and is
not tied to how allocations (or impossibility thereof) are to be
handled.  This allows to remove duplicated code between
vm_domainset_iter_page() and vm_domainset_iter_policy(), and between
vm_domainset_iter_page_init() and _vm_domainset_iter_policy_init().
This also allows to remove the 'pages' parameter from
vm_domainset_iter_page_init().

This also makes the two-phase logic clearer, revealing an inconsistency
between setting 'di_minskip' to true in vm_domainset_iter_init()
(implying that, in the case of waiting allocations, further attempts
after the first sleep should just allocate for the first domain,
regardless of their situation with respect to their 'free_min') and
trying to skip the first domain if it has too few pages in
vm_domainset_iter_page_init() and _vm_domainset_iter_policy_init().  Fix
this inconsistency by resetting 'di_minskip' to 'true' in
vm_domainset_iter_first() instead so that, after each vm_wait_doms()
(waiting allocations that could not be satisfied immediately), we again
start with only the domains that have more than 'free_min' pages.

While here, fix the minor quirk that the round-robin policy would start
with the domain after the one pointed to by the initial value of
'di_iter' (this just affects the case of resetting '*di_iter', and would
not cause domain skips in other circumstances, i.e., for waiting
allocations that actually wait or at each subsequent new iterator
creation with same iteration index storage).

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277476
Tested by:      Kenneth Raplee <kenrap_kennethraplee.com>
Fixes:          https://cgit.freebsd.org/src/commit/?id=7b11a4832691 ("Add files for r327895")
Fixes:          https://cgit.freebsd.org/src/commit/?id=e5818a53dbd2 ("Implement several enhancements to NUMA policies.")
Fixes:          https://cgit.freebsd.org/src/commit/?id=23984ce5cd24 ("Avoid resource deadlocks when one domain has exhausted its memory."...)
MFC after:      10 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D51251
637d9858e6a8b4a8a3ee4dd80743a58bde4cbd68 Olivier Certner 2025-07-08 12:28:31
sys: NOTES: Fix comment for wlan_* devices; GENERIC*: Re-order 'wlan_tkip'
Fix the comment introducing the 'wlan_*' devices (AES-CCMP is missing)
after introducing AES-GCMP.

While here, re-order the devices in order of appearance of the related
technologies.

No functional change (intended).

Reviewed by:    adrian, emaste
Fixes:          https://cgit.freebsd.org/src/commit/?id=7bf82ea4fdda ("sys: add wlan_gcmp to GENERIC kernels as appropriate")
MFC after:      3 days
MFC to:         stable/15
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52444
c1eff1d745a1193c199f735733e376161c69b12c Olivier Certner 2025-09-09 12:03:59

debug: classified in 04-filenames_plain2 by 'sys/'

ddb ps: Print again the effective GID, separately
Following commit be1f7435ef218b1d ("kern: start tracking cr_gid outside
of cr_groups[]"), cr_groups[] doesn't contain the effective GID anymore.
Fix the 'show proc' DDB command to show it again, and make it stand out
with respect to the supplementary ones.

Fixes:          https://cgit.freebsd.org/src/commit/?id=be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52251
de974a0f1b73e79466c25f3c85fe727004576fea Olivier Certner 2025-08-26 08:56:54

debug: classified in 04-filenames_plain2 by 'sys/'

imgact_elf: procstat groups: Restore sending the effective GID
Fixes 'procstat -s' run on a core file when the number of groups in
effect at the moment of core dump exceeds KI_NGROUPS (16).

Reviewed by:    kib
Fixes:          https://cgit.freebsd.org/src/commit/?id=be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52258
5568b4441dff078733a76835312a6ce1ccb50a17 Olivier Certner 2025-08-26 13:41:49

debug: classified in 04-filenames_plain2 by 'sys/'

kinfo_proc: Restore outputting the effective GID
In particular, fixes 'procstat -s' on a live system or a core file (only
if there are less than 16 groups).

Reviewed by:    kib
Fixes:          https://cgit.freebsd.org/src/commit/?id=be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52259
63a40ca813a9995e8e2dee0142297d9c38106c05 Olivier Certner 2025-08-26 13:53:06

debug: classified in 04-filenames_plain2 by 'sys/'

'kern.proc.groups' sysctl knob: Restore outputting the effective GID
In particular, fixes 'procstat -s' on a live system (for processes with
more than 16 groups).

Reviewed by:    kib, emaste
Fixes:          https://cgit.freebsd.org/src/commit/?id=be1f7435ef218b1d ("kern: start tracking cr_gid outside of cr_groups[]")
MFC after:      9 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D52261
faf7e99375910fadb1b409a756be5477b561a517 Olivier Certner 2025-08-26 15:54:47

debug: classified in 04-filenames_plain2 by 'sys/'

jaildesc: replace EBADF with EINVAL
Following fd9e09cb, EBADF is not the suitable error code for a non-
jail descriptor passed to jail_set, jail_get, jail_attach_fd, and
jail_remove_fd.

Reported by:    kib
16f600dc30b7bb82429660e540da802a1e3f7449 Jamie Gritton 2025-09-09 18:13:11

debug: classified in 04-filenames_plain2 by 'sys/'

iflib: report output drops and handle ENOBUFS properly
- Fix an mbuf leak with iflib.simple_tx=1 when we run out of tx descs
in iflib_encap().  It seems odd to free the mbuf in iflib_encap(),
but that routine consumes mbufs for other reasons, and it seemed
safest to free there rather than have the simple tx routine parse
return values to determine what needed to be freed.

- Increment counters for output drops when ENOBUFS is encountered
and output errors when other transmit errors are encountered for both
the simple and normal tx routines.

- Performed driver changes so that iflib drivers now add the generic
output drop and output error counters to their private counters in their
ifdi_get_counter routines.

Reviewed by: kbowling, markj
Differential Revision: https://reviews.freebsd.org/D52369
Sponsored by: Netflix
6577e32ea2c7868c275eae6d1c68f1c37d418c71 Andrew Gallatin 2025-09-10 13:17:35

debug: classified in 04-filenames_plain2 by 'sys/'

Fix possible out of bounds read in armv8_crc32c
Reviewed by:  andrew
Obtained from:  CheriBSD
Differential Revision:  https://reviews.freebsd.org/D52401
f48b1a34ef859ca17de0cc9149cc22e07364ef85 Zhongqi Zhao 2025-09-10 14:21:38

debug: classified in 04-filenames_plain2 by 'sys/'

fcntl(F_SETFL): Don't unconditionally invoke FIONBIO and FIOASYNC
Currently, F_SETFL always invokes FIONBIO and FIOASYNC ioctls on the
file descriptor even if the state of the associated flag has not
changed.  This means that a character device driver that implements
non-blocking I/O but not async I/O needs a handler for FIOASYNC that
permits setting the value to 0.  This also means that
fcntl(fd, F_SETFL, fcntl(fd, F_GETFL)) can fail for a character device
driver that does not handle both FIONBIO and FIOASYNC.  These
requirements are not obvious nor well documented.

Instead, only invoke FIONBIO and FIOASYNC if the relevant flag changes
state.  This only requires a device driver to implement support for
FIONBIO or FIOASYNC if it supports the corresponding flag.

While here, if a request aims to toggle both F_NOBLOCK and F_ASYNC and
FIOASYNC fails, pass the previous state of F_NONBLOCK to FIONBIO
instead of always disabling non-blocking I/O and then possibly
reverting the flag back to on in f_flags.

Reviewed by:    mckusick, imp, kib, emaste
Differential Revision:  https://reviews.freebsd.org/D52403
3c152a3de42a7d077e8d19159b679c3fb7572820 John Baldwin 2025-09-10 14:22:19

debug: classified in 04-filenames_plain2 by 'sys/'

tslog: Move sysinit_tslog_shim() into kern_tslog.c
struct sysinit's func pointer requires its address, thus a real function
is generated in every translation unit when the source file has SYSINITs
declared. That results in plenty of identical sysinit_tslog_shim in the
final kernel file, in which only one is used and others are left useless.

MFC after:      1 week
Differential Revision:  https://reviews.freebsd.org/D52413
5f9a05e574050c8b3f6b444311a12e8fb293ad1a Zhenlei Huang 2025-09-10 14:44:36

debug: classified in 04-filenames_plain2 by 'sys/'

zfs: merge openzfs/zfs@7939bad5e
Notable upstream pull request merges:
 #15869 ee7c36264 Add description of default sorting behavior to zfs_list.8
 #17375 ced72fdd6 tunables: remove legacy FreeBSD aliases
 #17600 1da2c30be Update pam_zfs_key.c default path for FreeBSD
 #17632 b6bd3228b Synchronize the update of feature refcount
 #17645 59f8f5dfe zfs_vnops_os.c: Add support for the _PC_CLONE_BLKSIZE name
 #17665 0d54ae288 zdb: Fix format strings on 32-bit systems
 #17673 976f76534 Update compatibility.d files
 #17699 e3c3e86c0 Fix wrong dedup_table_size for legacy dedup
 #17704 e29bfa5bd Fix warnings about sha2_is_supported on FreeBSD/i386
 #17706 a2424312c Fix the build on 32-bit FreeBSD with GCC

Obtained from:  OpenZFS
OpenZFS commit: 7939bad5e79225288a2580e8ea217f5c6f616db2
70999532eea52da609e90c003b583ee0bfa5246b Martin Matuska 2025-09-10 15:28:34

debug: classified in 04-filenames_plain2 by 'sys/'

vmm: Suspend the VM before destroying it
Otherwise we don't do anything to kick vcpu threads out of a sleep
state when destroying a VM.  For instance, suppose a guest executes hlt
on amd64 or wfi on arm64 with interrupts disabled.  Then,
bhyvectl --destroy will hang until the vcpu thread somehow comes out of
vm_handle_hlt()/vm_handle_wfi() since destroy_dev() is waiting for vCPU
threads to drain.

Note that on amd64, if hw.vmm.halt_detection is set to 1 (the default),
the guest will automatically exit in this case since it's treated as a
shutdown.  But, the above should not hang if halt_detection is set to 0.

Here, vm_suspend() wakes up vcpu threads, and a subsequent attempt to
run the vCPU will result in an error which gets propagated to userspace,
allowing destroy_dev() to proceed.

Add a new suspend code for this purpose.  Modify bhyve to exit with
status 4 ("exited due to an error") when it's received, since that's
what'll happen generally when the VM is destroyed asynchronously.

Reported by:    def
MFC after:      2 weeks
Sponsored by:   Innovate UK
Differential Revision:  https://reviews.freebsd.org/D51761
3d39856d4dfeab5b5a5e6bbdb6ce965db5bc4dc1 Mark Johnston 2025-09-10 16:00:36

debug: classified in 05-summary-prefix by '^vmm:'

pf: Remove dead code in pf_pull_hdr().
pf_pull_hdr() allows to pass an action pointer parameter as output
value.  This is never used, all callers pass a NULL argument.  Remove
ACTION_SET() entirely.

The logic (fragoff >= len) in pf_pull_hdr() does not work since
revision 1.4.  Before it was used to drop short TCP or UDP fragments
that contained only part of the header.  Current code in pf_pull_hdr()
drops the packets anyway, so always set reason PFRES_FRAG.

OK kn@ sashan@

Obtained from:  OpenBSD, bluhm <bluhm@openbsd.org>, 46650f23db
Sponsored by:   Rubicon Communications, LLC ("Netgate")
94804658ab045fd386c2f031186c86f686c6870a Kristof Provost 2025-08-19 11:16:51

debug: classified in 04-filenames_plain2 by 'sys/'

jaildesc: remove file-mode-based access controls
Jail descriptors were given a file-like mode, user, and group, for the
purpose of controlling how the descriptor may be used.  This is too far
removed from the file paradigm to make sense.  Remove it in favor of a
better access control method to be added, such as Capsicum.

Also add missing code in jaildesc_fill_kinfo.

Reported by:    crest at rlwinm.de, kib
MFC after:      3 days
d81b337d690c971d60c731494795ee4b81fb929e Jamie Gritton 2025-09-10 23:21:11

debug: classified in 04-filenames_plain2 by 'sys/'

LinuxKPI: 802.11: avoid recursive wiphy lock
When freeing the last reference of the net80211 node the net80211
node_free() code may directly call into the crypto code to delete
the keys.  While we still holding the wiphy lock this would lead to
a recursion on the non-recursive wiphy lock.  Defer freeing the
reference until we are back under the net80211 com lock.

Reported by:    Mark Phillips (mark freebsdfoundation.org) on 15.0-ALPHA1
MFC after:      3 days
3c38dce87ecd2c87744e4b7ff1904ee841f88a47 Bjoern A. Zeeb 2025-09-11 14:44:10

debug: classified in 04-filenames_plain2 by 'sys/'

ossl: Add GCM support on powerpc64/powerpc64le (POWER8+)
Separate ossl's existing AES-NI GCM implementation into a common
ossl_aes_gcm.c and add conditionals to switch between OpenSSL's AES-NI
and POWER8 GCM routines depending on the architecture. Since the
existing AVX-512 implementation is less agnostic, move it into a
separate ossl_aes_gcm_avx512.c.

Reviewed by:    markj
MFC after:      1 month
Differential Revision:  https://reviews.freebsd.org/D44274
5daf8ed625af70ebb7e4740ab98a6054e9e52329 Timothy Pearson 2025-09-10 16:54:24

debug: classified in 04-filenames_plain2 by 'sys/'

jail: simplify EVFILT_JAIL events
Instead of using the EVFILT_PROC model of attempting to automatically
register new events when a child jail is created, just give a single
event when a child jail is created.  As was already done with jail
attach events, make a best-effort report of the added jail's id in
kn_data.  If the are multiple NOTE_JAIL_CHILD and/or NOTE_JAIL_ATTACH
events, set the NOTE_JAIL_MULTI flag, and don't report anything in
data, indicating that the caller will need to query the system state
on their own.

MFC after:      3 days
dbcaac13e49c88d1c077f34f56dd2b7ba77a145a Jamie Gritton 2025-09-12 05:22:45

debug: classified in 04-filenames_plain2 by 'sys/'

gunion: Also destroy the rw_lock
We also need to destroy the rw_lock when we free the softc.

Noticed by: markj
Fixes: https://cgit.freebsd.org/src/commit/?id=656f7f43f204
Sponsored by:           Netflix
ecca34fa969579e53e4940ef9d7a7e170e872e77 Warner Losh 2025-09-09 23:42:50

debug: classified in 04-filenames_plain2 by 'sys/'

jaildesc: add kevent support
Give jail descriptors the same kevent flags as jails.  Also fix the
event reporting in jails, where it was including data for events the
user didn't ask for.

MFC after:      3 days
66d8ffe3046ded1eb3f78599c6af8eb965482ef5 Jamie Gritton 2025-09-12 18:33:19

debug: classified in 04-filenames_plain2 by 'sys/'

Build system

Update the installed manpages to match OpenSSL 3.5.1
MFC after:    1 week
Differential Revision:  https://reviews.freebsd.org/D52008
fdb3b695a4d19f098367be4fe2df51bec991170d Enji Cooper 2025-09-07 21:23:01

debug: classified in 02-filenames_wildcards by '.*Makefile'

src.opts.mk: Remove REPRODUCIBLE_BUILD from the default list
It was added to the list in bsd.opts.mk in commit 4f81c42fbd76, so
should have been removed here.

Reported by:    cperciva
Fixes:          https://cgit.freebsd.org/src/commit/?id=4f81c42fbd76 ("share/mk: Substitute reproducible prefixes in dwarf info")
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
Sponsored by:   Klara, Inc.
b2f5dc591ef2547ee2e9b68e58a263cd34948db1 Mark Johnston 2025-09-07 15:44:53

debug: classified in 03-filenames_plain1 by 'share/mk/'

loader/efi: build with -Wall
Reviewed by:  tsoome
Differential Revision:  https://reviews.freebsd.org/D52431
d81b84d6de652e6bff2d6af690752cec05d1ac0d Ahmad Khalifa 2025-09-09 17:19:15

debug: classified in 02-filenames_wildcards by '.*Makefile'

release: Remove a duplicate package listing in oracle.conf
sysutils/panicmail is specified again several lines down.

MFC after:      1 week
Sponsored by:   The FreeBSD Foundation
Sponsored by:   Klara, Inc.
cc6e21cb946337e2b4584dd2b55209d45805fec2 Mark Johnston 2025-09-09 19:06:31

debug: classified in 02-filenames_wildcards by 'release/.*'

src.sys.mk: Support src.conf in SRCTOP
If SRCCONF is not defined and src.conf exists at the top level of the
source tree, use that instead of /etc/src.conf.

MFC after:      3 days
Reviewed by:    kevans, imp
Differential Revision:  https://reviews.freebsd.org/D52470
dd8c666d8b78f6b9ddb691f0505837fa885ff3b4 Dag-Erling Smørgrav 2025-09-10 16:57:26

debug: classified in 05-summary-prefix by '^src\..*\.mk:'

packages: Turn off MANSPLITPKG by default
Manpages are very small, and having a separate manpages package for
every base package is quite annoying for users.  Turn this option
off by default.

Discussed with: bapt
Reviewed by:    manu, emaste
MFC after:      3 days
Differential Revision:  https://reviews.freebsd.org/D52417
a8a18eeb5e1711ad27c3ee20eb342b73d3badffa Lexi Winter 2025-09-10 18:38:01

debug: classified in 05-summary-prefix by '^packages:'

release: Made it possible to specify more attributes in metalog entries
Verify that the target file or directory exists, and add support for an
optional mode.  This is required to enable NO_ROOT builds of some
cloudware image types.  No functional change intended.

Reviewed by:    cperciva, emaste
MFC after:      2 weeks
Sponsored by:   The FreeBSD Foundation
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D52449
6207325f3aac067fb16f0aa42012302014035ebf Mark Johnston 2025-09-11 13:05:13

debug: classified in 02-filenames_wildcards by 'release/.*'

release: Create /firstboot in common VM image creation code
Some services, such as growfs, only run upon the first boot of an image.
The first boot is indicated by the presence of the file /firstboot,
which is unlinked after boot.

Individual cloudware types shouldn't be responsible for creating it.  Do
so in a centralized place.  Aside from simplifying things, this ensures
that we create a metalog entry for the firstboot file.

Reviewed by:    cperciva, emaste
MFC after:      2 weeks
Sponsored by:   The FreeBSD Foundation
Sponsored by:   Klara, Inc.
Differential Revision:  https://reviews.freebsd.org/D52450
1d6b6ea2d0e617d29681da3cf121abec309d272f Mark Johnston 2025-09-11 13:05:31

debug: classified in 02-filenames_wildcards by 'release/.*'

usr.bin/gh-bc: fix invocation of test scripts
The “all.sh” script in version 7.1.0 accepts one less parameter for
selecting the tests to be run.
1a6ffcb27ddcfdc66c2ea58d6789b3d527f68ba9 Stefan Eßer 2025-09-11 14:33:42

debug: classified in 02-filenames_wildcards by '.*Makefile'

usr.bin/gh-bc: update for version 7.1.0
Add extra defines required for bc-7.1.0 to the Makefiles.
2d06844521ecd9e1298b53f13c18ffbfa97b1e28 Stefan Eßer 2025-09-11 14:42:42

debug: classified in 02-filenames_wildcards by '.*Makefile'

krb5: Enable PRINC_LOOK_AHEAD in ksu
PRINC_LOOK_AHEAD is the upstream default. Normally ksu determines the
target princiapl by (quoted from the man page)

a. default principal of the source cache

b. target_user@local_realm

c. source_user@local_realm

With PRINC_LOOK_AHEAD emabled, for each candidate in the above
list, select an authorized principal that has the same realm name
and first part of the principal name equal to the prefix of the
candidate. For example if candidate a) is jqpublic@ISI.EDU and
jqpublic/secure@ISI.EDU is authorized to access the target account
then the default principal is set to jqpublic/secure@ISI.EDU.

Case 2: source user is root.

If the target user is non-root then the default principal name
is target_user@local_realm.  Else, if the source cache exists
the default principal name is set to the default principal of
the source cache.  If the source cache does not exist, default
principal name is set to root\@local_realm.

This commit restores the same behaviour as Heimdal ksu.

Reported by:            Dan Mahoney <dmahoney@isc.org>
Requested by:           Dan Mahoney <dmahoney@isc.org>
MFC after:              3 days
MFC to:                 15/stable
Differential revision:   https://reviews.freebsd.org/D52478
b0e7b55a0e90d737cf469b78e9785b492b3c0d0f Cy Schubert 2025-09-10 20:13:08

debug: classified in 02-filenames_wildcards by '.*Makefile'

pkgbase: fix alpha and beta versioning
MFC After:    1 day
1bc7ee74b6a80081f0f5764970e3949e834965f1 Baptiste Daroussin 2025-09-12 15:20:25

debug: classified in 02-filenames_wildcards by '.*Makefile'

Commit group #5: packages
packages: Use LIB_PACKAGE for zfs and ufs packages

Commit f9513c334ff7 moved the shared libraries for ZFS and UFS into
separate packages (libzfs and libufs), which resulted in a rather
large number of packages being created, e.g. for ZFS:

FreeBSD-libzfs
FreeBSD-libzfs-dbg
FreeBSD-libzfs-dbg-lib32
FreeBSD-libzfs-dev
FreeBSD-libzfs-dev-lib32
FreeBSD-libzfs-lib32
FreeBSD-zfs
FreeBSD-zfs-dbg
FreeBSD-zfs-dbg-lib32
FreeBSD-zfs-dev
FreeBSD-zfs-dev-lib32
FreeBSD-zfs-lib32
FreeBSD-zfs-man

Use LIB_PACKAGE instead, which significantly reduces the number of
packages:

FreeBSD-zfs
FreeBSD-zfs-dbg
FreeBSD-zfs-dbg-lib32
FreeBSD-zfs-dev
FreeBSD-zfs-dev-lib32
FreeBSD-zfs-lib
FreeBSD-zfs-lib32
FreeBSD-zfs-man

MFC after:      3 days
Reviewed by:    bapt
Differential Revision:  https://reviews.freebsd.org/D52416
29185c9a26204383270cf96957c685c51f5bc894 Lexi Winter 2025-09-11 19:46:26

packages: Add correct license for zoneinfo

Source: contrib/tzdata/LICENSE

MFC after:      3 days
Reviewed by:    bapt
Differential Revision:  https://reviews.freebsd.org/D51886
163f8625c4df3ccdfab0717cf8b8d13a163e22eb Lexi Winter 2025-09-11 19:49:09

packages: Add meta-package sets

Add several metapackages which contain no files themselves, but depend
on other packages.  This allows the user to install a system by using
a set like "FreeBSD-set-minimal" instead of having to know which
specific packages are required, and it means if we add more package
in the future, existing installations will get them automatically as
long as they were installed using a set.

The defined sets are significantly less granular than the actual
packages; the assumption is that users who want a very specific set of
packages installed can do that manually, while sets are intended more
for typical users who just want to install FreeBSD.

The following sets are defined:

* minimal: the set of packages required to boot the system and bring
  up a multi-user UNIX system.  This includes hardware support,
  networking (wireless, DHCP), basic functionality like syslogd, cron
  and periodic.  It does not include a kernel, because the kernels are
  quite large and the user might want to use a custom kernel.

  sendmail and DMA are not included in minimal.  Since we provide two
  MTAs, the user should select which one they want, or install one from
  ports.  sshd is not included because it's not required for the base
  system, and the user might want to install it from ports.

  Some other significant subsystems (e.g. NFS, Kerberos) are also not
  included.

  The minimal set does not include any libraries itself, since we rely
  on dependencies to pull these in.  This implies it doesn't include
  library manpages, which is fine, since users won't want manpages for
  libraries unless they've also installed the development packages.

* devel: the compiler toolchain for building software, along with all
  "-dev" packages which include header files and static libraries.

* lib32: 32-bit compatibility packages.  This includes both runtime
  and development packages.

* kernels: the kernel packages.  For freebsd.org builds, this will be
  GENERIC, GENERIC-DEBUG, etc., for custom builds it will be whatever
  was set in $KERNCONF.

* base: everything else; this includes the entire base system.

For each set, also generate a <setname>-dbg set containing the debug
packages for the set.

The sets are built along with the rest of the packages using a new
script called create-sets.sh, which examines the "set" annotation in
each package and puts it in the appropriate set.  This is in
anticipation of the later "groups" feature appearing in pkg itself, at
which point we can simply replace the set annotation with the group.

MFC after:      3 days
Reviewed by:    imp, bapt
Differential Revision:  https://reviews.freebsd.org/D52412
66f36c3686762d9a6e48b0453fc7221be36a0eb8 Lexi Winter 2025-09-12 20:59:25

Internal organizational stuff

-- no commits in this category this week --

Testing

pf tests: recusrive table printing test
Sponsored by: Rubicon Communications, LLC ("Netgate")
d3020caed603e3b1bfb82099557134ccd4c71449 Kristof Provost 2025-08-20 12:42:50

debug: classified in 03-filenames_plain1 by 'tests/'

pf tests: test state killing by source and destination address
Sponsored by: Rubicon Communications, LLC ("Netgate")
53e44c59d13ed0dd5dc5563b1109df8d6dd63325 Kristof Provost 2025-08-20 14:16:54

debug: classified in 03-filenames_plain1 by 'tests/'

tools: Drop cryptotest
This has been supplanted by cryptocheck and has bitrotted to the point
where it no longer builds.

PR:             https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289325
Reviewed by:    jhb
Differential Revision:  https://reviews.freebsd.org/D52399
4c6cf6107b824f7ba4a3fe66db8e0a36c8dd8b04 Dag-Erling Smørgrav 2025-09-12 15:29:40

debug: Commit manually moved from "unknown" to "tests".

Style, typos, and comments

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

makeobjops.awk: Style nits in generated files
MFC after:    1 week
Differential Revision:  https://reviews.freebsd.org/D52407
0cba6880787a2c18c2c4f045e0c9f0d02b81e88c Zhenlei Huang 2025-09-08 15:33:28

debug: classified in 01-style by '[sS]tyle'

NOTES: Fix whitespace in "options MAC_DO"
For "options", we put a space before a TAB so that commenting out an
option doesn't move the columns.

No functional change.

Fixes:          https://cgit.freebsd.org/src/commit/?id=c8d8cac2a847 ("mac_do(4): allow compiling into kernel")
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
1cf67b587023af90f2b2c6e87d9103ec42b2b9b2 Olivier Certner 2025-09-09 15:47:50

debug: classified in 01-style by '[wW]hitespace'

jaildesc: fix typo and style(9) violations.
Reported by:  kib
MFC after:      3 days
d8d5324ef5335dd9404db7263be2271610245e10 Jamie Gritton 2025-09-09 18:46:45

debug: classified in 01-style by '[tT]ypo'

sys/efi.h: Some style(9) tweaks
MFC after:    3 days
e584c46d8b60662ffb1f67c41dec13f391d3f199 Zhenlei Huang 2025-09-11 15:53:34

debug: classified in 01-style by '[sS]tyle'

git-blame-ignore-revs: sys/efi.h style(9) tweaks
MFC after:    3 days
dd1410321713ce20b03680df477ea8de37619b54 Zhenlei Huang 2025-09-11 15:53:34

debug: classified in 01-style by '[sS]tyle'

sys/bus.h: Some style(9) fixes
and whitespace cleanup.

MFC after:      3 days
22238759c57d942865cf9d1a355a0d04819eb621 Zhenlei Huang 2025-09-12 04:55:14

debug: classified in 01-style by '[sS]tyle'

git-blame-ignore-revs: sys/bus.h style(9) fixes
MFC after:    3 days
64dca4eb4db8a64c35400239a519f05e233ae12f Zhenlei Huang 2025-09-12 04:55:15

debug: classified in 01-style by '[sS]tyle'

getgrouplist(3): Remove superfluous headers, bogus comment and whitespace
No functional change (intended).

Fixes:          https://cgit.freebsd.org/src/commit/?id=a59d6a872459 ("Implementing 'fallback' nsswitch source.")
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
d3f8ed6066fdea329ed695925fc726e84d50abc3 Olivier Certner 2025-09-12 12:29:59

debug: classified in 01-style by '[wW]hitespace'

ng_device.c: improve compliance with style(9)
Signed-off-by: Quentin Thébault <quentin.thebault@defenso.fr>
Reviewed by: imp, jhb
Pull Request: https://github.com/freebsd/freebsd-src/pull/1827
bcdbeaeffccb65574ac06001888840d9a15f4edf Quentin Thébault 2025-09-08 13:33:03

debug: classified in 01-style by '[sS]tyle'

Contrib code

libnv: Fix handling of nvlist_dump() and nvlist_send() for child nvlists
Suppose an nvlist nvl belongs to a parent nvlist or nvlist array.  In
this case, nvl contains a pointer to its container.  This trips up
nvlist_send(nvl) and nvlist_dump(nvl), which intuitively should only
operate on nvl and its nvpairs.  In particular, both of these functions
will traverse to nvl's parent and start sending/dumping the parent's
nvpairs, which results in assertion failures or nonsensical output,
respectively.

Reviewed by:    oshogbo
MFC after:      2 weeks
Sponsored by:   Innovate UK
Differential Revision:  https://reviews.freebsd.org/D52360
0b68e3ce6e0e437fa480b25a0ef706ee08562257 Mark Johnston 2025-09-10 14:33:35

debug: classified in 03-filenames_plain1 by 'contrib/'

dtrace: Use a size_t to represent a buffer size in the printm action
printm is specific to the FreeBSD dtrace port.  I believe it's
effectively the same as tracemem(), though printm apparently predates
it.  It stores the size of the buffer of traced data inline.  Currently
it represents that size using a uintptr_t, which isn't really right and
poses challenges when porting to CHERI because
`DTRACE_STORE(uintptr_t, ...`  requires the destination to be suitably
aligned, but this isn't necessary since we're just storing a size.

Convert to using a size_t.  This should be a no-op since
sizeof(uintptr_t) == sizeof(size_t) on non-CHERI platforms (and besides
that I don't see a reason to use printm() when tracemem() is available
and is simpler to use.)

Reviewed by:    Domagoj Stolfa, avg
MFC after:      2 weeks
Sponsored by:   Innovate UK
Differential Revision:  https://reviews.freebsd.org/D52055
3877025f52ee205fe99ad4ff68229933d57e4bcb Mark Johnston 2025-09-10 14:33:58

debug: classified in 03-filenames_plain1 by 'contrib/'

contrib/bc upgrade to version 7.1.0
This update fixes a few bugs:
- Improper response to double SIGINT with editline.
- Not letting libedit handle terminal size changes.
- A dc crash from improperly handling an error.
- A duplicate check for reference arrays.
- Build failures with GCC 15.

Merge commit '682da5a0fdb2c38ecc3951047a882471d62aa1d1'
fdc4a7c8012b214986cfa2e2fb6d99731f004b1b Stefan Eßer 2025-09-11 14:16:39

debug: classified in 03-filenames_plain1 by 'contrib/'

Reverted commits

Commit group #6: revert-single-LinuxKPI
Revert "LinuxKPI: pci: allocate entire pci_dev hiereachy up to root port on attach"

It turns out this breaks the nvidia-drm drviers.
We'll try to rework things and put it back later.

This reverts commit bbeeb585315645db20118ef349a4e3dc83b148cc.
3860afe99ec39b9942967941181f28f27f3fc548 Bjoern A. Zeeb 2025-09-08 14:32:24
Commit group #7: revert-single-vtnet
Revert "vtnet: fix compilation for NOIP configs"

This reverts commit 7c448f5aab8be6977d0860e608e7d497b495d28c.
Will be committed again with correct authorship.
0143c9eb764ad5ee1c2866439e923033daa30037 Michael Tuexen 2025-09-08 20:26:45
Commit group #8: revert-single-vtnet
Revert "vtnet: improve checksum offloading"

This reverts commit 1c23d8f9f39870951c1d0dfbb112fc4e53237737.
Will be committed again with correct authorship.
f217bc7651a4126a6819da1af03a64e81a551005 Michael Tuexen 2025-09-08 20:27:52
Commit & revert pair: libc: Remove readdir_r(3)
libc: Remove readdir_r(3)

This function was never safe to use.  We marked it deprecated in the
manual page in 2016, and it is marked obsolete in POSIX 2024.  We
previously added a linker warning and annotated the prototype; now that
stable/15 has been branched, we can remove it from main.

Relnotes:       yes
Reviewed by:    kib
Differential Revision:  https://reviews.freebsd.org/D52474
d549de769055ae6116601e54e4c86dfb3e17f4c4 Dag-Erling Smørgrav 2025-09-10 16:52:50

Revert "libc: Remove readdir_r(3)"

This reverts commit d549de769055ae6116601e54e4c86dfb3e17f4c4.
d20c82507278e003f391c3fb04f4e49afd1537ab Dag-Erling Smørgrav 2025-09-11 15:12:22
Commit group #9: revert-single-linux
Revert "linux: fix reporting NL_RTM_DELLINK to Netlink sockets"

I received a report that certain Linux application would crash on a
message of a departure of an interface with FreeBSD name.  Looks like
dropping NL_RTM_DELLINK is a lesser evil than relay them with FreeBSD
names.

This reverts commit 554907bac3b264863a051f75eedc35d180d3e18c.
1014003c538ccf8b258c9f0b11c0c131573a63cf Gleb Smirnoff 2025-09-11 21:02:51

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.13.1 at 2025-09-13 00:36:05+00:00.

This work is supported by Tarsnap Backup Inc.

Alternate version: 2025-09-08 (release)