lib/googletest: also use -O0 for internal tests with GCC
This fixes the build with gcc 16's aggressive inlining.
Reviewed by: ngie
MFC after: 3 days
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D59538
linux: LINUX_PR_SET_THP_DISABLE all non-zero values are disable
Linux treats any nonzero value as "disable", so accept them all.
Fixes: a8a6eac57091
Sponsored by: Netflix
loader.efi: Only try to download md if we're netbooting
The only possible time we could download the initmd that the dhcp server
told us about is if we're netbooting. So only attempt to do that if the
load device for loader.efi is a network. IF you are booting off disk and
then need to snag an initmd off the network, that's a different path,
and wouldn't need to necessarily do a dhcp exchange, except to get the
IP address.
Sponsored by: Netflix
loader.efi: Expose efi_devpath_get_mac to get mac
This is a convenient way to test if a device path is a nic or not, so
expose it to the world.
Sponsored by: Netflix
nvmecontrol: Minor correctness issues
Turn an assert into a bounds check to not overflow if the nvme drive
reports too many power states (we validate the user input, but not the
drive's identify data).
Use a uint32_t instead of int for entry so right shift we do is defined.
No functional changes.
Fixes: 35793364d722
Noticed by: claude + Sonet 5
Sponsored by: Netflix
loader.efi: Fix memory leak in efihttp_dev_close
Save enough context to free the host we allocated in open on close.
Fixes: 6788e42d53c6
Noticed by: claude + Sonet 5
Sponsored by: Netflix
mpsutil: Better naming form the discovery_status function
It's really discovery_status_str(). Rename it and use open_memstream()
to write the string so we don't have to play as many str* games.
Fixes: afb60897a15c
Noticed by: claude + Sonet 5 (size error, bad fix ignored)
Sponsored by: Netflix
dhclient(8): Add support for IPv6-Only option (RFC 8925)
Accept and validate the ipv6only option. When dhclient receives this
option and IPv6 connectivity is available, stop the DHCP configuration
process and wait for the duration specified by the option before
restarting DHCP discovery.
If the address was previously leased, disassociate it and send a
DHCPRELEASE packet.
Use netlink to check for IPv6 connectivity.
Also, unregister ignored options from default PRL.
Reviewed by: ziaee, kfv
Tested by: Marek Zarychta <zarychtam at plan-b.pwste.edu.pl>
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D56637
powerpc/pmap: Add a minimum TID width
QEMU doesn't appear to emulate the MMUCFG register for Book-E CPUs, so
give a sane small default of 7, for an 8 bit PID register.
sh.1: Renew description of case
Update case synopsis, split description into paragraphs, improve markup,
light wordsmithing, and import exit status line from NetBSD.
While here, remove the '-' from the beginning of this document.
PR: 298329
Event: EuroBSDcon 2026
Fixes: c9afaa63894e ("Add case statement fallthrough")
Fixes: f7a9b7fe3a8d ("Allow a left parenthesis before patterns in case blocks")
Fixes: e00e16ad7f86 ("Allow empty case/esac statements")
MFC after: 3 days
Reviewed by: bcr, jilles, Artem Bunichev <temcbun at gmail.com>
Differential Revision: https://reviews.freebsd.org/D59518
wpa_supplicant.8: Renew SEE ALSO + tag SPDX
- remove old wifi drivers, these are very old and we have many more
- add quick start guide to connecting to wifi
Event: EuroBSDCon 2026
MFC after: 3 days
Reviewed by: bz, emaste
Differential Revision: https://reviews.freebsd.org/D59615
man: Link mlx5en.4 also to if_mce.4
For consistency, create a symbolic link from mlx5en.4 to also if_mce.4
Reviewed by: ziaee, #manpages
Event: EuroBSDCon 2026
Differential Revision: https://reviews.freebsd.org/D59610
MFC after: 3 days
raw ip: clear sin_port on bind(2)
Application may set sin_port to some value. Although this value is not
used by SOCK_RAW, it breaks a check that the address is available. A
perfect fix would be not use sockaddrs for ifaddrs, but that would be a
bigger change.
PR: 298366
Reviewed by: pouria, bnovkov, adrian
Differential Revision: https://reviews.freebsd.org/D59570
Fixes: 948ad32ae1e0811f45e1d38f26636fefed5051f0
acpi_spmc: Check AMD constraint packages
Also match behaviour with Intel constraint parsing by skipping malformed
constraints instead of failing hard.
Reviewed by: olce
Sponsored by: The FreeBSD Foundation
Event: EuroBSDCon Devsummit 2026
Differential Revision: https://reviews.freebsd.org/D59568
acpi_spmc: Check Intel constraint packages
Some firmware inexplicably decides to do non-standard and annoying stuff
here, e.g. the Fujitsu Futro S940 with an Intel Pentium J5005 sometimes
returns the following when calling the DEVICE_CONSTRAINTS function on
the Intel DSM:
Return (Package (0x01)
{
Zero
})
(Package elements here are supposed to be constraint packages, not just a
single value.)
First reported in the following forum post:
https://forum.netgate.com/topic/201090/2.9.0-beta-leads-to-kernel-panic-on-boot
[5 lines not shown]
powerpc/booke: Add a machine check stack
Machine check and critical exceptions are independent of each other, and
can interrupt each other. Since they're asynchronous we cannot trust
that the existing stack pointer (%r1) is correct at time of entry, so
add a private machine check stack separate from the critical exception
stack. As part of this, switch to the STANDARD_CRIT_PROLOG() for
machine check exceptions, and overload the macro to specify the stack to
switch to. Also add a savearea argument to CRIT_SRR_RESTORE() so that
we can restore machine check exception state from the right location.
powerpmac_thermal: Improve thermal regulation on G5 quad models
Add a new "high temp" threshold below the max temp, in order to ramp the
fans (or pump for liquid cooled quads) sooner, and avoid the maximum
temperature. From the PR, this makes older G5 quads louder, but usable,
instead of hitting max temperature and forcing a thermal shutdown.
PR: 209202
Submitted by: gmbroome (PR)
e1000: Report corrected LAN management FIFO ECC errors
I350 and I354 report a corrected ECC error in the LAN transmit
management FIFO through LANPERRSTS bit 16. Unlike the parity status in
the same register, this condition neither interrupts nor stops traffic.
Poll the latch with the other corrected error status, increment a
dedicated counter, and clear only its RW1C bit. Expose it as
dev.igb.N.memory_errors.corrected_lan_mng_fifo.
Fatal error handling returns before the periodic statistics sweep and
may reset the device. Drain all I350 and I354 corrected-error status in
the admin task before recovery so the reset does not discard pending
indications.
This follows section 6.21.16 of the Intel Atom Processor C2000 Product
Family Integrated GbE Controller Programmer's Reference Manual,
document 537426 revision 1.5.
[3 lines not shown]
e1000: Handle I354 internal memory errors
The Atom C2000 integrated GbE programming reference documents the I354
internal memory error architecture. It shares the I350 PEIND and
ICR.FER routing, DMA and packet-buffer status, LAN parity status, and
required reset recovery.
Extend the existing I350 recovery and corrected error accounting paths
to I354. Keep the PCIe corrected error mask family-specific. C2000
PCIEECCSTS ends at the transmit write-data indication in bit 4 and does
not implement the I350 retry buffer indication in bit 5. Do not expose
the corresponding retry counter on I354.
The PRM overview says a PCIe region failure requires a system reboot,
while the individual PCIEERRSTS fields prescribe CTRL.RST followed by
port reinitialization. Use the register specific recovery, matching the
existing I350 path; failed reinitialization still leaves the port down.
This follows sections 5.6 and 6.21 of the Intel Atom Processor C2000
[6 lines not shown]