This is a display of mostly-automatically-classified git commits from 2026-03-16 to 2026-03-22.
DEBUG: This version of the report is primarily for checking the classifiers, and therefore contains extra information (in this colour).
Table of contents and commits per category:
| (0) | Highlighted commits (these are copies, not in stats) | |
| 1 | 1.0% | Userland programs |
| 4 | 4.0% | Documentation |
| 21 | 20.8% | Hardware support |
| 12 | 11.9% | Networking |
| 12 | 11.9% | System administration |
| 1 | 1.0% | Libraries |
| 2 | 2.0% | Filesystems |
| 18 | 17.8% | Kernel |
| 13 | 12.9% | Build system |
| 0 | 0.0% | Internal organizational stuff |
| 6 | 5.9% | Testing |
| 2 | 2.0% | Style, typos, and comments |
| 5 | 5.0% | Contrib code |
| 4 | 4.0% | Reverted commits |
| 0 | 0.0% | Unclassified commits |
| 101 | 100% | total |
| Technical notes about this page |
debug: info about the automatic classification
| num | % | num changed | stage |
|---|---|---|---|
| 3 | 3.0% | 0 | 00-reverts |
| 2 | 2.0% | 0 | 01-style |
| 17 | 16.8% | 0 | 02-filenames_wildcards |
| 5 | 5.0% | 0 | 02b-filenames_wildcards2 |
| 44 | 43.6% | 0 | 03-filenames_plain1 |
| 22 | 21.8% | 0 | 04-filenames_plain2 |
| 6 | 5.9% | 0 | 05-summary-prefix |
| 2 | 2.0% | 0 | Manually-classified commits |
| 0 | 0.0% | 0 | Unclassified commits |
debug: more stats
| num | % | stage |
|---|---|---|
| 0 | 0.0% | Misclassified commits |
| 99 | 98.0% | Classified commits, no corrections |
debug: groups
| 3 | 3.0% | num in revert |
| 2 | 2.0% | num in fixes |
| 10 | 9.9% | num in consecutive |
| 15 | 14.9% | Commits in groups |
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.
-- no commits in this category this week --
Commits about commands found in man section 1 (other than networking).
We generally use TOOLS_PREFIX being set to indicate that we are building in the cross-build tools stage. This check was missing for llvm.prog.mk consumers other than *tblgen, which have not previously been built as cross tools. Reviewed by: dim Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55930
debug: classified in
04-filenames_plain2 by
'usr.bin/'
Man pages, release notes, etc.
* Try to make the RETURN VALUES section flow better. * Add basename(3), dirname(3), free(3) to the SEE ALSO section. * Drop the CAVEATS section, which was obsolete the moment realpath(3) was added to the Single Unix Specification in 1994. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55928
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Fixes: https://cgit.freebsd.org/src/commit/?id=1a7151f79664 cam: Add probes for xpt actions Event: AsiaBSDCon 2026
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
The previous S1-S5 options are still accepted for compatibility, but they are now deprecated in favour of the new generic sleep types. Reported by: markj Reviewed by: markj Approved by: markj Fixes: https://cgit.freebsd.org/src/commit/?id=97d152698f48 ("acpi: Use sleep types defined in sys/power.h") Event: AsiaBSDCon 2026 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D56008
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
Hardware drivers and architecture-specific code.
A race condition in the MII layer causes spurious link down events. In `statchg`, on link down, check if the PHY reports the link as actually down using the BMSR register, if not, force the status of the link to back up and restart TX. Do the same in a MII `linkchg` handler. On actual link up, restart TX in case it went idle and down. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=252165 Signed-off-by: Rafael Kitover <rkitover@gmail.com> Reviewed by: pouria Differential Revision: https://reviews.freebsd.org/D55682
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The private struct has a 'regs' member that's only written to and otherwise unused. This change removes it. Fixes: https://cgit.freebsd.org/src/commit/?id=b3d9e5013f3e5 (Don't active memory space) Requested by: jhb Reviewed by: imp, jhb, jrtc27 Differential Revision: https://reviews.freebsd.org/D55817
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The goal this change is to remove the use of the tag and handle needed by bus_space_[read|write]_4. Fixes: https://cgit.freebsd.org/src/commit/?id=b3d9e5013f3e5 (Don't active memory space) Requested by: jhb Reviewed by: gallatin, imp, jhb, jrtc27 Differential Revision: https://reviews.freebsd.org/D55818
debug: classified in
03-filenames_plain1 by
'sys/dev/'
A small enhancement. Reviewed by: Ali Mashtizadeh <ali@mashtizadeh.com> Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55830
debug: classified in
03-filenames_plain1 by
'lib/libpmc/'
This change allows for fine-grained capabilities per counter index. This is particularly useful for AMD where subclasses are not exposed to the general PMC code, but other architectures also have asymmetric behaviors when it comes to specific counter indices. A new PMC_OP_GETCAPS op is added to the hwpmc(4) ioctl interface. Reviewed by: mhorne Sponsored by: Netflix Pull Request: https://github.com/freebsd/freebsd-src/pull/2058
debug: classified in
03-filenames_plain1 by '['lib/libpmc/',
'sys/dev/', 'sys/sys/pmc.h']'
Bump for the addition of PMC_OP_GETCAPS and the recently added Intel CPUs. Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/sys/pmc.h'
Some platforms enforce power-of-two alignment for bus_dma tags. Rounding up the natural size may result in over-alignment, but should be safe. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293770 Reviewed by: andrew Fixes: https://cgit.freebsd.org/src/commit/?id=c499ad6f997c ("virtio: Use bus_dma for ring and indirect buffer allocations") Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55843
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Rather than each exception calling userret use a common copy. As syscallret already calls userret we need to skip it in that case. Reviewed by: kib Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D55250
debug: classified in
03-filenames_plain1 by
'sys/arm64/'
- Display an appropriate alert character instead of a question mark for unknown bits. - Display all fatal bits for a register and not just the ones that are currently set. MFC after: 1 week Sponsored by: Chelsio Communications
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The layout for the main INT_CAUSE is a bit different for T7. MFC after: 1 week Sponsored by: Chelsio Communications
debug: classified in
03-filenames_plain1 by
'sys/dev/'
The TPM driver currently has a single buffer per instance to hold the result of a command, and does not allow subsequent commands to be sent until the current result is read by the same OS thread that sent the command, with a timeout to throw away the result after a while if the result is not read in a timely fashion. This has a couple problems: - The timeout code has a bug which causes all subsequent commands to hang forever if a different OS thread tries to read the result before the OS thread which sent the command, and the OS thread which sent the command never tries to read the result. - Even if the first problem is fixed, applications expect to be able to read the result from a different OS thread than the OS thread which sent the command. The particular case that we saw was a go application where the go runtime scheduled the goroutine which read the result to a different OS thread from one where the goroutine that sent the command ran, and there's no way to force these to always run on the same OS thread. Fix all of this by replacing the global result buffer with a per-open result buffer via devfs_set_cdevpriv(), so that we no longer need to block subsequent commands until the results of a previous command are retrieved or care about which OS thread is reading the result of a command. Sponsored by: Netflix Reviewed by: olivier, imp Differential Revision: https://reviews.freebsd.org/D52328
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Reviewed by: jhb, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55809
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
This change only checks that the values from the user-supplied context are not truncated by C implicit type convertions. The validity of the segment selectors is still checked by hardware. Reviewed by: jhb, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55861
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
as provided by the Intel document 346446-009 AKA FRED 8.0 and SDM v90, February 2026. Note that the layout of the struct trapframe does not change with FRED. The differences are in addition of two fields at the end of the structure. Other members are carved from existing tf_cs and tf_ss by limiting hw-written segments to 16 bits officially, and reusing rest from the doubleword for the new data. Reviewed by: jhb, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55831
debug: classified in
03-filenames_plain1 by '['sys/amd64/',
'sys/x86/']'
We no longer put pcb on stack, it is part of the struct thread. Similarly, we do not put user fpu save area on stack. There is no constraints on the pcb size due to the XSAVE area required alignment. Reviewed by: jhb, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55931
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/amd64/'
Reported by: markj Fixes: https://cgit.freebsd.org/src/commit/?id=97d152698f48 ("acpi: Use sleep types defined in sys/power.h") Event: AsiaBSDCon 2026 Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/dev/'
We don't need to check for NULL before calling free(). Sponsored by: The FreeBSD Foundation
debug: classified in
03-filenames_plain1 by
'sys/dev/'
Trying to use the grown struct trapframe for IDT case broke in cases where code supposed that hardware consumed sizeof(struct trapframe) of the stack space when delivering interrupt or exception. In particular, this was broken for #NM/#DB/#MC. Naive attempt of using IDT-trapframe size for stack consumption caused later problems with larger C type. Instead of pretending that IDT event delivery pushed two never-accessed doubleword to the stack, keep it honest and provide separate type for the FRED interrupt frame, i.e. struct trapframe_fred. Convert between trapframe_fred and trapframe can be done by trivial pointer arithmetic. Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
03-filenames_plain1 by
'sys/x86/'
We separate the code of CPPC and legacy pstate driver to make it easier to read. Reviewed by: olce Approved by: markj (mentor) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55604
debug: classified in
03-filenames_plain1 by
'sys/x86/'
Network-related commands, library, and kernel.
Added optional system tunable parameter to enable 4-tuple rss udp hashing. Signed-off-by: bigJ <bigj@solanavibestation.com> Reviewed by: adrian, pouria Pull Request: https://github.com/freebsd/freebsd-src/pull/2057
debug: classified in
03-filenames_plain1 by
'sys/net/'
It should be decreased only when the interface has been successfully removed from the "active" list. This prevents vnet_if_return() from potential OOB writes to the allocated memory "pending". Reviewed by: kp, pouria Fixes: https://cgit.freebsd.org/src/commit/?id=a779388f8bb3 if: Protect V_ifnet in vnet_if_return() MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D55873
debug: classified in
03-filenames_plain1 by
'sys/net/'
The ioctls SIOCSIFVNET and SIOCSIFRVNET are for userland only. For SIOCSIFVNET, if_vmove_loan(), the interface is obtained from current VNET. For SIOCSIFRVNET, if_vmove_reclaim(), a valid child prison is held before getting the interface. In both cases the VNET of the obtained interfaces is stable, so there's no need to check it. No functional change intended. Reviewed by: glebius, jamie (for #jails) MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55828
debug: classified in
03-filenames_plain1 by
'sys/net/'
bridge tries to run callout_drain(9) twice under epoch during destruction. once for bridge_timer, which is not required to be under epoch. second time for the BSTP callout, which is already disabled earlier inside bridge_delete_member. Reviewed by: glebius, zlei MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D55876
debug: classified in
03-filenames_plain1 by
'sys/net/'
During link-layer address change event, don't send unsolicited NA for multicast addresses. Reviewed by: adrian, zlei Differential Revision: https://reviews.freebsd.org/D55885
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
Update ECN tunneling functions from obsolete RFC 3168 to newer RFC 6040. Also, add ECN_COMPLETE to support dangerous packet reporting without causing extra costs to existing caller functions. Finally, return values are specified as macro to reduce confusion, considering extra return values for ECN_WARN and ECN_ALARM were added. Reviewed By: glebius, tuexen Differential Revision: https://reviews.freebsd.org/D53516
debug: classified in
03-filenames_plain1 by '['sys/netinet/',
'sys/netinet6/']'
Multiple delayed NAs on the same ifa can occur simultaneously. Therefore: * Differentiate between GRAND and solicited replies. * Cancel previous pending GRAND NA for same ifa. * Reuse ndq memory for GRAND. * Free non-GRAND replies immediately. * Don't limit non-GRAND NAs. Reviewed by: glebius Differential Revision: https://reviews.freebsd.org/D55905
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
bridge doesn't require to enter epoch during destruction. Reviewed by: zlei, glebius Differential Revision: https://reviews.freebsd.org/D55935
debug: classified in
03-filenames_plain1 by
'sys/net/'
IPv4-compatible IPv6 addresses are deprecated by RFC 4291. No functional change intended. Reviewed by: glebius, emaste Differential Revision: https://reviews.freebsd.org/D55387
debug: classified in
03-filenames_plain1 by
'sys/netinet6/'
The tcp_close() will perform both actions. Reviewed by: pouria, tuexen, rrs Differential Revision: https://reviews.freebsd.org/D55965
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
Reviewed by: tuexen, rrs Differential Revision: https://reviews.freebsd.org/D55969
debug: classified in
03-filenames_plain1 by
'sys/netinet/'
Stuff in man section 8 (other than networking).
Implement the PMC_CAP_SYSWIDE capability flag in the same manner as the PMC_CAP_DOMWIDE flag. This flag was previously introduced along side the domain wide flag, but is yet to be used anywhere. Reviewed by: mhorne Sponsored by: Netflix Pull Request: https://github.com/freebsd/freebsd-src/pull/2075
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
It has been broken and disabled for over 10 years. Remove mentions of the kvm(3) from the manual page.
debug: classified in
04-filenames_plain2 by
'usr.sbin/'
Determine the FAT (MS-DOS) type (FAT32, FAT16, or FAT12) and partition scheme (fat32lba or fat16b) based on partition size. Accept any (NetBSD) strsuftoll(3)-compatible string, as the value will be fed to makefs(8) "-s" in a future commit. NANO_SLICE_FAT_SIZEs defined in sectors (ending with an "s") will not be supported. As a workaround, the letter "b" (blocks) may be used. Reviewed by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54975
debug: classified in
05-summary-prefix by 'nanobsd:'
Rely on makefs -t msdos to create the MS-DOS partition and remove the dependency on filesystems/mtools. Note that NANO_SLICE_FAT_SIZEs defined in sectors (ending with an "s") are no longer supported, as a workaround the letter "b" (blocks) may be used instead. Reviewed by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54976
debug: classified in
05-summary-prefix by 'nanobsd:'
nanobsd: embedded: Fix more regressions from last cleanup
Commit c99bb5747f5e changed "()" grouping into "{}", but in these cases
we chdir and depended on the subshell not changing the directory for the
caller. Restore the old behavior. While things appear to work without
this change, the previous code was intentionally structured this way.
Reviewed by: imp
Fixes: https://cgit.freebsd.org/src/commit/?id=c99bb5747f5e ("nanobsd: minor formatting cleanup")
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D54978
debug: classified in
05-summary-prefix by 'nanobsd:'
nanobsd: Minor cleanup No functional change intended. Reviewed by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54979
debug: classified in
05-summary-prefix by 'nanobsd:'
nanobsd: embedded: Time stamp the code image While there is a function nano_makefs() that already takes care of this issue, we are not yet ready to consume it. Just add the time stamp and FFS options to makefs. This is done primarily to use UFS2 (UFS version 2). If the user needs further customization, the variable NANO_MAKEFS can be overridden. Timestamping takes care of making the images bit-for-bit identical. Reviewed by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D54980
debug: classified in
05-summary-prefix by 'nanobsd:'
Pointed out by: Alex "the PS/2 guy"
debug: classified in
03-filenames_plain1 by 'sbin/'
A loader built with MD_IMAGE_SIZE is almost always meant for use with its embedded image and should try that as currdev before anything else. Recent changes (d69fc3a9dc71, 784150fd2535) seem to have relaxed the ZFS code's search for a rootfs and exposed this problem. Reviewed by: imp, tsoome MFC after: 1 week Sponsored by: Chelsio Communications Differential Revision: https://reviews.freebsd.org/D55979
debug: classified in
03-filenames_plain1 by 'stand/'
GEOM journaling shouldn't be used at the same time as soft updates, so don't enable soft updates if GEOM journaling has been requested, and error out if both are explicitly requested. MFC after: 1 week PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293896 Reviewed by: mckusick Differential Revision: https://reviews.freebsd.org/D55999
debug: classified in
03-filenames_plain1 by 'sbin/'
GEOM journaling shouldn't be used at the same time as soft updates, so don't enable one if the other is already in use. MFC after: 1 week PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293896 Reviewed by: mckusick Differential Revision: https://reviews.freebsd.org/D56002
debug: classified in
03-filenames_plain1 by 'sbin/'
Ignoring the error may cause pfctl(8) to load inconsistent ruleset
preventing pf(4) to enforce desired policy.
Issue reported and fix suggested by berts _from_ fastmail _dot_ com
'Looks good.' @deraadt
MFC after: 1 week
Obtained from: OpenBSD, sashan <sashan@openbsd.org>, 9fd28a8cca
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
03-filenames_plain1 by 'sbin/'
* Save prev_len after having checked for and appended a trailing slash, not before. This requires us to back up if we end up returning a partial result, but previously we would sometimes return a partial result with a trailing slash and sometimes without. * Replace strlcat() with a faster strlcpy() since we know exactly how far into the buffer we are. MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D55914
debug: classified in
04-filenames_plain2 by 'lib/'
An NFSv4.1/4.2 client can set/clear the archive, hidden and system flags when creating non-regular files, such as directories. Without this patch, the setting of va_flags causes an EPERM failure, since they are specified for VOP_MKDIR(), VOP_MKNOD() and VOP_SYMLINK(). This patch sets va_flags == VNOVAL for the above VOP_xxx() calls and then sets/clears the flags after creation, which fixes the problem. This bug only affects the Windows NFSv4.1/4.2 client. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293691 Tested by: Dan Shelton <dan.f.shelton@gmail.com> MFC after: 2 weeks
debug: classified in
03-filenames_plain1 by
'sys/fs/'
Notable upstream pull request merges:
#17000 -multiple cmd/zfs: support creating parents with canmount=no
#17926 b481a8bbb Make zpool status dedup table support raw bytes -p output
#18238 -multiple Report space metrics per allocation class
#18240 5dad9459d Add --no-preserve-encryption flag
#18257 1eace5906 libzfs: use mount_setattr for selective remount including
legacy mounts
#18259 1e2c94a04 More consistent use of TREE_* macros in AVL comparators
#18262 c58b8b7dc Fix check for .cfi_negate_ra_state on aarch64
#18264 f109c7bb9 Add the --file-layout (-f) option to zdb(8)
#18268 304de7f19 libzfs: handle EDOM error in zpool_create
#18275 753f1e1e2 zstream: add a drop_record subcommand
#18276 0f90a797d Fix vdev_rebuild_range() tx commit
#18277 1e1d64d66 Fix log vdev removal issues
#18278 06b0abfe6 Fix the send --exclude option to work with encryption
#18281 e73ada771 libzpool: lift zfs_file ops out to separate source file
#18284 d97945776 zstream: consolidate shared code
#18285 -multiple Separate SIMD compile checks for userspace and kernel
#18288 c5905b2cb Implement lzc_send_progress
#18289 -multiple L2ARC: Add depth cap and write budget fairness for
persistent markers
#18290 d45c8d648 FreeBSD: Improve dmesg kernel message prefix
#18294 b403040c4 draid: fix data corruption after disk clear
#18296 -multiple libzfs: mnttab cleanup
#18300 d35951b18 zpool clear: remove undocumented rewind flags
#18301 ae7fcd5f9 fix libzfs diff mem leak in an error path
#18303 65165df12 zilstat: add man page
#18314 7f65e04ab libzfs: scrub: only include start and end nv pairs if
needed for scrub
#18315 -multiple Sync ZVOLs block cloning conditions with file systems
#18330 f80338fac zarcsummary: add man page
#18337 f259a47c7 zpool-iostat.8: clarify first report shows per-second
averages
Obtained from: OpenZFS
OpenZFS commit: 3ee08abd2fcef3123188e9ad61a9cd80b9b7831c
debug: classified in
05-summary-prefix by 'zfs:'
Kernel stuff (other than networking, filesystems, and drivers).
The current implementation briefly violates the tail invariant. This is not usually an issue, but if an insert is in flight when a panic occurs, we may then trip the invariant while dumping core. MFC after: 1 week Sponsored by: Klara, Inc. Sponsored by: NetApp, Inc. Reviewed by: obiwac, olce, jhb Differential Revision: https://reviews.freebsd.org/D55819
debug: classified in
04-filenames_plain2 by 'sys/'
Include index values and object pointer in the diagnostic to improve debugging of pindex mismatches. No functional change. Signed-off-by: Isa Isoux <isa@isoux.org> Reviewed by: kib, pouria Pull Request: https://github.com/freebsd/freebsd-src/pull/2038
debug: classified in
04-filenames_plain2 by 'sys/'
Each invocation of seq_read invokes the seq_file.show callback which writes into the sbuf. Then it invokes sbuf_finish before copying the data into the caller's buffer. Without this, a second call to seq_read on the same file would try to append data to a finished sbuf. Reviewed by: bz Sponsored by: AFRL, DARPA
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: bz Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D55879
debug: classified in
04-filenames_plain2 by 'sys/'
The Linux file_operations API expects the read and write operations to take a single user buffer pointer (along with the length and the file offset as an in/out parameter). However, the debugfs_fill function was violating this part of the contract as it was passing down kernel pointers instead. An earlier commit (5668c22a13c6befa9b8486387d38457c40ce7af4) hacked around this by modifying simple_read_from_buffer() to treat its user pointer argument as a kernel pointer instead. However, other commits keep tripping over this same API mismatch (e.g. 78e25e65bf381303c8bdac9a713ab7b26a854b8c passes a kernel pointer to copy_from_user in fops_str_write). Instead, change debugfs_fill to use the "raw" pseudofs mode where the uio is passed down to directly to the fill callback rather than an sbuf. debufs_fill now iterates over the iovec in the uio similar to the implementation of uiomove invoking the read or write operation on each user pointer. This also fixes a tiny bug where the initial file offset from uio_offset was ignored. Instead, the operations were always invoked with a file offset of 0. As part of this, revert the the changes to simple_read_from_buffer() from commit 5668c22a13c6befa9b8486387d38457c40ce7af4. Also as part of this, the simple_attr_read/write methods and seq_read now also need to accept and handle user pointers (also matching the API in Linux). For simple_attr_write*(), copy the user buffer into a kernel buffer before parsing. Also, do not permit writes at an offset as it's unclear what the semantics for those would even be (perhaps you would write out the formatted value into a buffer first and then allow the copy_from_user to overwrite/extend that buffer and then re-parse the integer value?). The old handling of *ppos for writes was definitely wrong before and only worked for an offset of 0 anyway. Reviewed by: bz Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D55833
debug: classified in
04-filenames_plain2 by 'sys/'
I noticed that the buf_size < 0 check can never be true (it's a size_t) and decided to check for this condition by an alternate expression, and I also noticed that a read_size of 0 would incorrectly return -EFAULT. Instead, return success for both of these cases as reading beyond the EOF of a normal file also returns EOF, not EINVAL. Reviewed by: bz Sponsored by: AFRL, DARPA Differential Revision: https://reviews.freebsd.org/D55845
debug: classified in
04-filenames_plain2 by 'sys/'
Near the top of kern_mmap() that implements the mmap(2) system call,
it sets
prot = PROT_EXTRACT(prot);
with
So prot can only be the three PROT_ flags.
The following test of the user's mmap(2) parameters (near line 275
in vm/vm_mmap.c):
if (prot != PROT_NONE &&
(prot & ~(PROT_READ | PROT_WRITE | PROT_EXEC)) != 0) {
return (EXTERROR(EINVAL, "invalid prot %#jx", prot));
}
can never fail. This commit deletes it.
No functional change intended.
Reviewed by: kib
MFC-after: 1 week
Sponsored by: Netflix
debug: classified in
04-filenames_plain2 by 'sys/'
Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D55888 MFC-after: 1 week Sponsored by: Netflix
debug: classified in
04-filenames_plain2 by 'sys/'
When a timerfd interval callout misses its scheduled activation time, a differential is calculated based on the actual activation time and the scheduled activation time. This differential is divided by the timerfd's interval time and the quotient is added to the timerfd's counter. Before this change, the next callout was scheduled to activate at: scheduled activation time + timerfd interval. This change fixes the scheduling of the next callout to activate at: actual activation time + timerfd interval - remainder. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55790 MFC after: 2 weeks
debug: classified in
04-filenames_plain2 by 'sys/'
When converting from timespec to sbintime, the timespec's 64-bit tv_sec component is shifted to the left 32 bits, causing any information in the upper 32 bits to be lost. This data loss during conversion can turn timespecs with very large tv_sec counters into sbintimes that represent much smaller time durations. Add tstosbt_sat() and tvtosbt_sat(), which are saturating versions of tstosbt and tvtosbt. With these routines, any overflow resulting from the conversion is clamped to [-SBT_MAX - 1, SBT_MAX]. Reviewed by: imp, markj Differential Revision: https://reviews.freebsd.org/D55791 MFC after: 2 weeks
debug: classified in
04-filenames_plain2 by 'sys/'
timerfd: Use saturating sbintime conversions Some timerfd consumers set expirations with timespec tv_sec components larger than 2^31 - 1. In such cases, converting that timespec to sbintime results in data loss or sign flip, yielding a shorter expiration than desired. To avoid this problem, use saturating timespec-to-sbintime conversion functions. These will clamp the converted sbintime to SBT_MAX under circumstances where the normal conversion functions would overflow. Saturating conversions still result in data loss, but the consequences are less severe, causing problems only after SBT_MAX (~68 years) of system uptime elapses. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55792 MFC after: 2 weeks
debug: classified in
04-filenames_plain2 by 'sys/'
timerfd: Wake up on discontinuous jump If a discontinous realtime clock change occurs and sets any TFD_JUMPED bits on the timerfd, then wake up waiting readers. This fixes failures from the timerfd_root__clock_change_notification test case. MFC after: 2 weeks
debug: classified in
04-filenames_plain2 by 'sys/'
timerfd: Suppress kqueue readability after jump read Do not report EVFILT_READ after reading a discontinuous clock jump. This makes the kqueue filter consistent with Linux epoll behavior and timerfd_poll(), which already checks tfd_jumped != TFD_READ before reporting POLLIN. MFC after: 2 weeks
debug: classified in
04-filenames_plain2 by 'sys/'
Change SS_FATAL to SS_FAIL for SCSI sense code 0x3A (Medium not present) to suppress console spam when card readers or other removable media devices have no media inserted. The error is still returned to callers (ENXIO), but no longer prints to dmesg during boot/probe. Verified with Apple SD Card Reader - reduced boot messages from 4 to 2. Reviewed by: emaste, imp Differential Revision: https://reviews.freebsd.org/D55287
debug: classified in
04-filenames_plain2 by 'sys/'
Requested by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week
debug: classified in
04-filenames_plain2 by 'sys/'
ZSTDIO is not just for core dumps, and it is now required by ZFS, so move it (and GZIO, which is still just for dumps) to a new “Compression support” section in GENERIC, and add them both to MINIMAL. MFC after: 1 week Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55940
debug: classified in
04-filenames_plain2 by 'sys/'
Saying that we are called with an (un)finished or corrupted sbuf is like saying "error" (though [un]finished is an extra hint). Add the pointer to the sbuf so one could easily check it, add the flags we are checking so one could see quickly about a possible state mismatch. Given we already dereference the pointer in the KASSERT there is no extra harm adding it to the message. Found while: testing lindebugfs changes Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D55919
debug: classified in
04-filenames_plain2 by 'sys/'
Compiling drm-kmod on !X86 does not include asm/smp.h which includes preempt.h on FreeBSD. In order to compile drm-kmod on other architectures add the secondary #includes for preempt.h to spinlock.h and hardirq.h (which now also gets included from highmem.h) to connect the #include chain. Sponsored by: The FreeBSD Foundation MFC after: 3 days PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279864 Reviewed by: jhibbits, emaste Differential Revision: https://reviews.freebsd.org/D55974
debug: classified in
04-filenames_plain2 by 'sys/'
ecn.9: Add ecn(9) manual Add ecn manual for ip_ecn tunneling functions. Reviewed by: pauamma_gundo.com, tuexen Differential Revision: https://reviews.freebsd.org/D53517
debug: classified in
02-filenames_wildcards by
'.*Makefile'
ecn.9: Replace non-ASCII characters Reported by: maxim Fixes: https://cgit.freebsd.org/src/commit/?id=ba4298b05564 ("ecn.9: Add ecn(9) manual")
debug: classified in
02-filenames_wildcards by
'.*\.[1-9]'
debug: moved to build because
'Need to be grouped with
ba4298b055642969d30389c5c92dd4d61a124fb6'
Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Reviewed by: manu, bdrewery (previous version) Differential Revision: https://reviews.freebsd.org/D55895
debug: Commit manually moved from "unknown" to "build".
Reported by: vexeduxr, jrtc27 Reviewed by: imp Sponsored by: The FreeBSD Foundation Pull request: https://github.com/freebsd/freebsd-src/pull/2084 Differential Revision: https://reviews.freebsd.org/D55923
debug: classified in
03-filenames_plain1 by '['Makefile',
'share/mk/', 'tools/build/']'
Create visibility in apropos and the Hardware Release Notes. MFC after: 3 days Reviewed by: pauamma, ray Differential Revision: https://reviews.freebsd.org/D53287
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Sponsored by: Netflix Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D55335
debug: classified in
02-filenames_wildcards by
'.*Makefile'
Because of this setting we were still using ELF Tool Chain tools for
buildworld. The sets of binary utilities are largely equivalent and
this went unnoticed after commit 1cae7121c667 ("Enable LLVM_BINUTILS
by default").
This was discovered recently because ELF Tool Chain objcopy produces
standalone debug files without phdrs and this caused an issue with a
3rd party ELF parser [1]. Remove the forced setting so that we use
LLVM's binutils to build the system.
[1] https://sourceware.org/bugzilla/show_bug.cgi?id=33876
Re-commit after fixing a bootstrapping issue with LLVM binutils (in
17494c6e6b7d "build: Boostrap LLVM_BINUTILS for cross-tools").
Reviewed by: imp, jhb
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D55650
debug: classified in
02-filenames_wildcards by
'.*Makefile'
The FreeBSD-clang package on amd64 contains libclang_rt.asan-i386.so, which links to the 32-bit version of libgcc_s.so.1. It is not clear if that file belongs in FreeBSD-clang or if it should be placed into a different package. For unknown reasons, pkg *sometimes* recognizes this and decides that it needs to install a package to supply libgcc_s.so.1:32. In particular, when we initially install the VM with 'pkg install [long list of FreeBSD-* packages]', pkg does not recognize that it wants this; but the *next* time 'pkg install' runs, it decides that it needs libgcc_s.so.1:32 -- even though that particular library is not needed by the particular package we're trying to install -- and goes looking for it... and ends up picking gcc12-devel as a provider. Later in the EC2 image building process, we run 'pkg autoremove' (which was added during 15.0 to get rid of the "bogus dependencies" which were added while installing other packages) and pkg is once again confused: It decides that gcc12-devel is an automatic port which is not required by anything else, but upon determining that it should be removed it then determines that FreeBSD-clang depends upon a port which is being removed and deletes FreeBSD-clang as well. It's not clear what is breaking in pkg, but as a temporary workaround add the FreeBSD-clibs-lib32 package to the "small" and "builder" EC2 image flavours in order to satisfy the libgcc_s.so.1 demand. This commit should be reverted if libclang_rt.asan-i386.so moves out of FreeBSD-clang, (i.e. if it becomes possible to install a 32-bit-free amd64 system) or when the pkg issue is resolved (i.e. pkg consistently recognizes the shared library dependency and installs clibs-lib32 automatically as a FreeBSD-clang dependency). MFC after: 3 days Sponsored by: Amazon Differential Revision: https://reviews.freebsd.org/D55978
debug: classified in
02-filenames_wildcards by
'release/.*'
MFC after: 3 days Sponsored by: Amazon
debug: classified in
02-filenames_wildcards by
'release/.*'
This helps others attempting to customize the behavior of `release.sh`. MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D55450 (as part of a larger change)
debug: classified in
02-filenames_wildcards by
'release/.*'
The chroot_cleanup routine handles any cleanup needed post-chroot_setup,
etc. This consists of purely tearing down `${CHROOTDIR}/dev` today, but
might involve additional steps, as needed for custom functions. This
allows end-users to override the various chroot functions without having
to modify code in main() or replicate the unmount procedure in an
equivalent routine setup via the trap builtin.
This change modifies the /dev unmount process to use `umount -f` instead
of `umount`. The latter can result in failures if resources are still
mounted or are running post-build, whereas the former will clean up any
resources still in use by processes running in the chroot at time of
build. Moreover, the `chroot_cleanup` routine is now called when the
script is killed with `SIGINT` and `SIGTERM`, as well as at `EXIT`,
better ensuring that the script's resources are cleaned up in relatively common
scenarios that can be detected/handled.
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D55450 (as part of a larger change)
debug: classified in
02-filenames_wildcards by
'release/.*'
-- no commits in this category this week --
tests/netinet: provide test for raw_ip.c:rip_input() The test creates differently bound SOCK_RAW sockets and sends different probe packets. There is expected results matrix that every probe is checked against.
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
tests/netinet/raw: fix ssize_t printf(3) format Fixes: https://cgit.freebsd.org/src/commit/?id=c1481c9f4a425db7295332be87f837bfb7d127df
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
Take Jan Kokemuller's timerfd tests from the epoll-shim project, stripping out code that isn't directly related to FreeBSD. Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D55789 MFC after: 2 weeks
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
After patch 9d26b82, we don't provide recursive call protection anymore. Therefore, to pass the test, we adjust the testcase by protecting on caller and the testcase is to make sure the dtors is properly handled. Reported by: siva Reviewed by: kib Approved by: markj (mentor) Fixes: https://cgit.freebsd.org/src/commit/?id=9d26b82826d9 ("libc: Fix dtor order in __cxa_thread_atexit") MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55893
debug: classified in
03-filenames_plain1 by
'lib/libc/tests/'
Sponsored by: Orange Business Services
debug: classified in
02b-filenames_wildcards2 by
'tests\/.*'
OpenBSD fixed this separately (in their 6a338f3f70). We appear to not
have had this bug, but test for it anyway.
Sponsored by: Rubicon Communications, LLC ("Netgate")
debug: classified in
02b-filenames_wildcards2 by
'sbin/.*/tests/.*'
These could go in other categories, but it's more clear if they're here instead.
The function signature of `crypto_initreq()` was incorrectly documented. Signed-off-by: Zixu Wu <zx@bv3.dev> Reviewed by: ziaee, pouria Pull Request: https://github.com/freebsd/freebsd-src/pull/2077
debug: classified in 01-style
by '[tT]ypo'
Remove an outdated comment about NanoBSD not being able to remove the
firstboot sentinel file.
It was fixed in cb51e2bc3db7 ("rc: Allow the removal of
firstboot_sentinel on read-only file systems").
Reviewed by: imp
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D54977
debug: classified in 01-style
by '[rR]emove stray'
Changes: https://github.com/the-tcpdump-group/tcpdump/blob/tcpdump-4.99/CHANGES Obtained from: https://www.tcpdump.org/release/tcpdump-4.99.6.tar.xz Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D55578 Differential Revision: https://reviews.freebsd.org/D55871
debug: Commit manually moved from "unknown" to "contrib".
This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24d479d26b25bce5faea3ddd9fa8f3a6c3129ea7 ( tag: v6.19-rc6 ). Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
ath12k: update Atheros/QCA's ath12k driver This version is based on git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 05f7e89ab9731565d8a62e3b5d1ec206485eeb0b ( tag: v6.19 ). Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
ath11k: restore module Makefile During the subtree merge and checking out the updated version of ath12k parts of the previous ath11k merge were accidentally undone. Retore the ath11k Makefile as well after 3c4eef5d838b restored the driver bits. Fixes: https://cgit.freebsd.org/src/commit/?id=a96550206e4b ("ath12k: update Atheros/QCA's ath12k ..") Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
02-filenames_wildcards by
'.*Makefile'
debug: moved to contrib because
'Need to be grouped with
a96550206e4bde15bf615ff2127b80404a7ec41f'
It seems that over the time of merging and only partly working on making it compile again a few mis-merges happened. Reduce diff to the v6.19 upstream version so that we only have additions to the driver (usually guarded by #ifdef __FreeBSD__). Sponsored by: The FreeBSD Foundation MFC after: 3 days
debug: classified in
03-filenames_plain1 by
'sys/contrib'
libcrypto: compile all PIC objects with -DOPENSSL_PIC This change modifies the libcrypto PIC objects to always compile with `-DOPENSSL_PIC` to restore parity with the upstream build process. This ensures that `-DOPENSSL_PIC` is used whenever building the auxiliary shared objects. In this case, just the legacy provider (we no longer distribute the fips provider). MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D44896
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
Revert "libcrypto: compile all PIC objects with -DOPENSSL_PIC" This commit broke the build with some build options. Some validation needs to be done to confirm that moving the preprocessor argument to `secure/lib/libcrypto/Makefile.inc` works without breaking the build, but revert for now until a `tinderbox` run can be done with the change. PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293934 Reported by: Jenkins, Trond Endrestøl This reverts commit 14b9955e57cc28b61e785165b9effcbe620edb46.
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
libcrypto: compile all PIC objects with -DOPENSSL_PIC -fPIC This change modifies the libcrypto PIC objects to always compile with `-DOPENSSL_PIC -fPIC` to restore parity with the upstream build process. This ensures that the legacy provider is built with parity to the upstream legacy provider. MFC after: 12 days Tested with: `make check` (legacy provider), `make universe` Fixes: https://cgit.freebsd.org/src/commit/?id=14b9955e Differential Revision: https://reviews.freebsd.org/D44896
debug: classified in
02-filenames_wildcards by
'.*Makefile'
debug: moved to reverts because
'Need to be grouped with
14b9955e57cc28b61e785165b9effcbe620edb46'
This reverts commit 6a13aeac3c1f98db7cf156f24a4d6bc8d3c321f6. The "bogus dependencies being installed" issue was traced down to pkg confusion surrounding libclang_rt.asan-i386.so linking to a 32-bit libgcc_s.so.1, and a more minimal workaround of "install clibs-lib32" has been applied, so this hack is no longer required. MFC after: 3 days Sponsored by: Amazon
debug: classified in 00-reverts
by 'This reverts commit
\b([0-9a-fA-F]{40})\b'
Not classified automatically, and waiting for manual attention.
-- no commits in this category this week --
Dates:
cgit.freebsd.org/src. Git accurately records the
order of commits, but not their dates.Automatic grouping:
This reverts commit \\b([0-9a-fA-F]{40})\\b
and the hash was found in this week's commits.
Automatic categories:
Source code:
Generated with commits-periodical 0.20 at 2026-04-13 18:39:30+00:00.
This work is supported by Tarsnap Backup Inc.
Alternate version: 2026-03-16 (release)