e1000: Disable autonomous PCH power gating after reset
Panther Point changed the reset value of CTRL_EXT.DPG_EN to enable
autonomous power gating. Clear it after hardware reset on Panther Point
and Nova Point controllers to prevent unexpected Tx/Rx hangs, packet
loss, or corruption.
(cherry picked from commit 0979b0430c2d728e595841ecba30b63972794fe9)
ice(4): Add support for E835 CNSA 2.0 adapters
Added support for E835 adapters with post-quantum cryptographic (PQC)
algorithms in firmware/software signage and in SPDM attestation.
Signed-off-by: Pawel Sobczyk <pawel.sobczyk at intel.com>
Reviewed by: Miłosz Linkiewicz <milosz.linkiewicz at intel.com>
Differential Revision: https://reviews.freebsd.org/D57868
(cherry picked from commit 8194c32827e9c3867d4b295edca9842b71608526)
e1000: Disable autonomous PCH power gating after reset
Panther Point changed the reset value of CTRL_EXT.DPG_EN to enable
autonomous power gating. Clear it after hardware reset on Panther Point
and Nova Point controllers to prevent unexpected Tx/Rx hangs, packet
loss, or corruption.
(cherry picked from commit 0979b0430c2d728e595841ecba30b63972794fe9)
ice(4): Add support for E835 CNSA 2.0 adapters
Added support for E835 adapters with post-quantum cryptographic (PQC)
algorithms in firmware/software signage and in SPDM attestation.
Signed-off-by: Pawel Sobczyk <pawel.sobczyk at intel.com>
Reviewed by: Miłosz Linkiewicz <milosz.linkiewicz at intel.com>
Differential Revision: https://reviews.freebsd.org/D57868
(cherry picked from commit 8194c32827e9c3867d4b295edca9842b71608526)
if_vmx: fix panic during kldload
Just like vmxnet3_intr_disable_all, iflib may invoke this routine
before vmxnet3_attach_post() has run, which is before the top-level
shared data area is initialized and the device made aware of it.
Approved by: re (cperciva)
PR: 294312
Sponsored by: Dell Inc.
(cherry picked from commit 01b0690c495e1043a72cae9ee945f9f2c2adc216)
(cherry picked from commit 065396e09e41d6932ef726053bed97aed6e022e1)
bnxt(4): Cross-reference led(4)
Point the identification LED documentation to led(4), which describes
how to control /dev/led device nodes.
MFC after: 2 weeks
Sponsored by: BBOX.io
ice: Add led(4) identification support
Expose the firmware-controlled physical port identification LED
through /dev/led/ice*. Use the AdminQ port-identification command to
select blinking mode and restore the netlist-selected original mode
before the interface is stopped.
MFC after: 2 weeks
Sponsored by: BBOX.io
makefs: tests: Fix a missing slash in multi_dataset_4
Fix a typo in the ZFS multi_dataset_4 test, where a path separator was
missing.
Reported by: markj
MFC after: 1 week
(cherry picked from commit 889d08f6b61da4724a6f718be7ec8d47824bc602)
makefs: tests: Fix a missing slash in multi_dataset_4
Fix a typo in the ZFS multi_dataset_4 test, where a path separator was
missing.
Reported by: markj
MFC after: 1 week
(cherry picked from commit 889d08f6b61da4724a6f718be7ec8d47824bc602)
fts: add fts_openat() API
Add fts_openat() as a new entry point for fts(3).
When dirfd is AT_FDCWD the behaviour is identical to fts_open().
Passing a pre-opened directory fd allows fts traversal inside
Capsicum capability mode where path-based operations are not
permitted.
Capability mode users should use fts_parent->fts_dirfd + fts_name with
openat(2) to access files.
Reviewed by: asomers
Relnotes: yes
Sponsored by: Google LLC (GSoC 2026)
Pull Request: https://github.com/freebsd/freebsd-src/pull/2273
fts: fix file descriptor leak in fts_close
fts_build() stores a dup'd file descriptor in each directory
entry's fts_dirfd. When a traversal is abandoned before
completion and fts_close() is called, the cleanup loop freed
each pending entry with free() without first closing its
fts_dirfd, leaking one descriptor per pending directory.
Close fts_dirfd before freeing each entry in the cleanup loop,
matching the handling already applied to the dummy parent entry
after the loop.
Add a regression test that descends a couple of levels, abandons
the traversal, closes, and asserts the open descriptor count is
unchanged.
PR: 297557
Reported by: asomers
Fixes: 4bd01d6ae016
[3 lines not shown]
SYSINIT: add SI_SUB_KENV
Since the kernel environment has its own dependencies, lurking at the end
of the SI_SUB_KMEM sequence appeared to be fragile. Provide own subsystem
for it. The init_dynamic_kenv() goes SI_ORDER_FIRST, and two modules that
depend on it go SI_ORDER_ANY.
PR: 297492
Reviewed by: imp, markj, emaste
Differential Revision: https://reviews.freebsd.org/D58836
Fix transposed arguments in call to calloc(). Reported by GCC 15 warning.
No functional change intended.
Submitted by: Pedro Giffuni <pfg at freebsd.org>
MFC-after: 1 week
malloc: Use ckdint.h helpers instead of WOULD_OVERFLOW
This serves to demonstrate some usage of the ckdint.h helpers. The new
version also generates better machine code on amd64 and arm64.
Reviewed by: kib, emaste
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
sys: Add sys/ckdint.h
We have a C23 stdckdint.h header for userspace, which provides checked
addition, subtraction and multiplication. We lack similar helpers in
the kernel, where they are regularly needed.
Let's just adopt the C23 macros. For bonus points, I added a wrapper to
ensure that ignored an return value is raised as an error by the
compiler.
Reviewed by: kib, emaste
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D58773
snd_hdspe: Avoid allocation in the interrupt handler
Cache PCM children and drain interrupt callbacks before detach.
Allocate the parent softc by its actual size.
Reviewed by: br
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D58370
mdoc: Standardize SYNOPISIS section for drivers
Standardize driver manuals on the style used for 12 years in vt(4).
This brings SYNOPSIS across all FreeBSD manual sections into harmony
of meaning where where SYNOPSIS lists available options, and does not
contain prose. Adjust mdoc(7) to reflect the established convention.
Reviewed by: jhb
Discussed with: arch@ (marc.info/?l=freebsd-arch&m=176782215606871)
Differential Revision: https://reviews.freebsd.org/D54586
yes: Avoid static initialization
Our buffer is half a megabyte, but we are only initializing the first
two bytes. Switching from static to dynamic initialization moves it
from .data to .bss, greatly reducing the size of the binary.
Fixes: cf74b63d61b4 ("yes: Completely overengineer")
MFC after: 1 week
Sponsored by: Klara, Inc.
Reviewed by: kevans
Differential Revision: https://reviews.freebsd.org/D58890
ice(4): Add two more 4-part IDs for E835 adapters
Two additional subdevice IDs were introduced
to distinguish between adapters with and without
manageability over USB support.
Signed-off-by: Krzysztof Galazka <krzysztof.galazka at intel.com>
Reviewed by: erj
Tested by: Mateusz Moga <mateusz.moga at intel.com>
MFC after: 1 week
Sponsored by: Intel Corporation
Differential Revision: https://reviews.freebsd.org/D57337
mfc-candidates: Annotate variables as local
And clean up luacheck warnings.
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D48950
Revert "ciss: Add max physical target"
This reverts commit 45645518ea19ccb4761aee3a525aab2f323d37d4.
Although this changed looks like it should just be a harmless change to
bookkeeping, it turns out that it changes the termination condition of
the initial device scan, resulting in it never finishing. This causes
the boot to hang forever coming up. Since I don't have good access to
hardware, I'm reverting until the exact details can be sorted out.
Reported by: Edward Scroop
Sponsored by: Netflix
MFC After: 1 week