rc.conf.5: Improve NOAUTO configuration + tag SPDX
- Show how to start a NOAUTOed interface
- "configured" is not quite right, try to improve that
MFC after: 3 days
Event: EuroBSDcon Devsummit 2026
Reviewed by: adrian
Discussed with: Antranig Vartanian <antranigv at freebsd.am>
Differential Revision: https://reviews.freebsd.org/D59571
sysutils/firstboot_pkg_upgrade: Ignore OSVERSION
Don't just ignore OSVERSION for the 'pkg upgrade' command; we also
need to ignore OSVERSION for the 'pkg update' and also for the 'pkg
bootstrap' (if we somehow don't have pkg installed yet).
Rather than setting it individually for each command, export
IGNORE_OSVERSION=YES into the environment where it will apply to
all of the pkg commands.
Reviewed by: ziaee
Fixes: b67d354b6656 ("sysutils/firstboot-pkg-upgrade: Ignore OSVERSION")
Sponsored by: Amazon
Reported by: akiyano
Differential Revision: https://reviews.freebsd.org/D59584
devel/py-inotify-simple: use native inotify on FreeBSD 15+
FreeBSD 15 (OSVERSION >= 1500051) provides native inotify in libc.
Use native libc on FreeBSD 15+ and Linux; fall back to libinotify on
older FreeBSD releases which require the kqueue-based emulation.
Remove unconditional LIB_DEPENDS on libinotify and make it conditional
using the bsd.port.pre.mk/bsd.port.post.mk split.
PR: ports/294447
Approved by: maintainer timeout
linux: implement prctl PR_{G,S}ET_THP_DISABLE
Since we don't have THP in FreeBSD, return that it's disabled. Linux
applications use this to get around the weird latency spikes THP in
Linux creates. Since FreeBSD superpages don't suffer from this issue,
just say it's disabled.
This removes the noisiest noise from the linux claude running on
FreeBSD.
Sponsored by: Netflix
tests: skip gracefully when the tested binary's own package isn't installed
pkgbase splits programs and their tests into separate packages (e.g.
unifdef/yacc/indent/file2c -> toolchain, jail -> jail, etc), while their
tests always land in the generic tests package. Installing just the
tests package therefore leaves these suites unable to find the binary
they exercise, and they fail confusingly instead of skipping.
Rather than force all packages to be installed for the tests package,
make the tests cope with the missing packages. Add require.progs (or,
for TAP/PLAIN-style suites with no atf_set hook: TEST_METADATA
required_programs) for the binary under test in: bectl, certctl,
ctfconvert, dhclient, file2c, indent, ipfw, jail, lastcomm, mixer,
newsyslog, nvmecontrol, pfctl, praudit, sa, syslogd, tunefs, unifdef,
yacc, ztest.
I skipped adding data for all the binaries in the base runtime
package for simplicity.
[4 lines not shown]
man: Do glob expansion with echo instead of ls
echo is a shell builtin, and always present. While ls usually works,
some upgrade scenarios need to have ls be a build to to work
correctly. Rather than add it as a build tool, use echo instead which is
always safe because sh is a build tool.
Sponsored by: Netflix
nvmecontrol: Add APST feature support
Add -a, -d and -m options to the power subcommand to manage APST,
along with additional status output when invoked without args.
Signed-off-by: Alexey Sukhoguzov <sap at eseipi.net>
Reviewed-by: imp
dtrace: Instrument more of the CAM device lifecycle
cam::periph:error, cam::{,a,n,sd}da:error
Trace the error evolution for I/O errors the periph encounters
cam::periph:recovery, cam::{,a,n,sd}da:recovery
Trace the result of the error sorting
cam::periph:invalidate
Trace device invalidations
cam::periph:hold-boot
cam::periph:release-boot
cam::xpt:hold-boot
cam::xpt:release-boot
Trace boot holds and releases at different levels
cam::xpt:bus-register
Trace new busses added
[9 lines not shown]
mpsutil: Add Show Discovery command
Prints the current discovry tables for the driver.
Sponsored by: Netflix
Assisted by: Claude (sonet-5)
Differential Revision: https://reviews.freebsd.org/D58528
cam: Add devctl message for invalidation of a periph.
Report serial number, if available, otherwise report the path of the
device invalidated.
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D58527
cam: Refactor cam_periph_devctl_notify init/fini bits
To be able to create other kinds of devctl notifications that don't flow
through cam_periph_devctl_notify, refactor out the header / trailers we
do and the sbuf life cycle management. No functional change.
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D58526
da: Fix logic error
Apply de-morgan's law correctly to force only 4/2 to go to the
invalidate stage for that ASC/ASCQ.
Fixes: d78d04b17cb24
Sponsored by: Netflix
MFC After: 1 week
Reviewed by: ali_mashtizadeh.com, mav
Differential Revision: https://reviews.freebsd.org/D58525
da: Stop the probing when periph invalidated in dadone_proberc
When READ CAPACITY fails, we call cam_periph_invalidate() for some
hopeless ASC/ASCQ combinations and then fall through to test the cache
state. This results in excess commands to the abandoned device that may
take a while to timeout and/or report confusing errors. Instead, call
daprobedone() when the periph is invalid to terminate the probe.
Fixes: d78d04b17cb24
Sponsored by: Netflix
MFC After: 1 week
Differential Revision: https://reviews.freebsd.org/D58524
loader.efi: fetch initmd specified by DHCP
Configure net0, read the DHCP-provided initmd URL, and download it
through the file API so directly booted loader.efi can construct its
root memory disk.
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D59432
loader.efi: Allow downloading of ramdisk or md to be aborted
Hitting <ESC> will now allow one to abort a (possibly mistaken)
download.
Sponsored by: Netflix
loader.efi: Eat the character used to break to OK
When we can't find root, we give the user a chance to drop to the boot
loader OK prompt. We should eat the character that's pressed to not
interfere with the interactive session.
Sponsored by: Netflix
loader.efi: download md images through file API
Feed the existing decompressor from loader file descriptors as well as
iPXE callbacks, allowing arbitrary HTTP filesystem URLs to become
kernel-exportable memory disks.
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D59431
loader.efi: download DHCP initmd specified image
When we haven't downloaded an image via mem{disk,cd} and ipxe, try any
image specified by the FreeBSD-specific initmd dhcp option. This allows
direct booting of loader.efi with a detached root ramdisk filesystem.
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D59433
loader.efi: release SNP after network configuration
Close the exclusively opened SNP protocol after loader networking
finishes so the firmware network stack can reconnect the controller and
service a subsequent HTTP request.
Sponsored by: Netflix
Differential Revision: https://reviews.freebsd.org/D59430
loader: add standalone network configuration
Allow callers to obtain DHCP configuration without opening a network
file, enabling loader.efi to discover an initmd URL before handing the
interface back to firmware HTTP.
Differential Revision: https://reviews.freebsd.org/D59429
Sponsored by: Netflix