FreeBSD/src a58471asys/dev/igc if_igc.c

igc: defer sysctl-driven reinit to the admin task

igc_sysctl_eee() and igc_sysctl_dmac() called igc_if_init() directly.

Request the reset through iflib instead, and skipping while the interface
is down; the new value is picked up by the next init.

Unlike e1000, igc has no ASSERT_CTX_LOCK_HELD and no acquire_swflag
path, so the defect is silent here rather than an assertion failure.

While here also remove unnecessary igc_if_init uses:
iflib_if_init_locked() already runs after IFDI_RESUME and
IFDI_MEDIA_CHANGE, so the trailing *_if_init() only added an unstopped
IFDI_INIT that the following iflib_stop() undoes.

Differential Revision:  https://reviews.freebsd.org/D58629

(cherry picked from commit 30ccf2f48c11e54fc0540510dcec7cd006a2c366)
DeltaFile
+12-6sys/dev/igc/if_igc.c
+12-61 files

FreeBSD/src 0fa6b2csys/dev/e1000 if_em.c

e1000: defer sysctl-driven reinit to the admin task

Request the reset through iflib and let the admin task perform the
stop/init under the context lock, matching what the VF and SR-IOV paths
already do.

The assertion is compiled out without INVARIANTS, where the same write
instead resets the MAC and takes the ICH software flag while the queues
stay live and an ioctl or the admin task may be running.

While here also remove unnecessary em_if_init uses:
iflib_if_init_locked() already runs after IFDI_RESUME and
IFDI_MEDIA_CHANGE, so the trailing *_if_init() only added an unstopped
IFDI_INIT that the following iflib_stop() undoes.

Differential Revision:  https://reviews.freebsd.org/D58628

(cherry picked from commit abdde8b602813753e423610b39be6806da5647e2)
DeltaFile
+12-6sys/dev/e1000/if_em.c
+12-61 files

FreeBSD/src e22491csys/dev/igc if_igc.c

igc: defer sysctl-driven reinit to the admin task

igc_sysctl_eee() and igc_sysctl_dmac() called igc_if_init() directly.

Request the reset through iflib instead, and skipping while the interface
is down; the new value is picked up by the next init.

Unlike e1000, igc has no ASSERT_CTX_LOCK_HELD and no acquire_swflag
path, so the defect is silent here rather than an assertion failure.

While here also remove unnecessary igc_if_init uses:
iflib_if_init_locked() already runs after IFDI_RESUME and
IFDI_MEDIA_CHANGE, so the trailing *_if_init() only added an unstopped
IFDI_INIT that the following iflib_stop() undoes.

Differential Revision:  https://reviews.freebsd.org/D58629

(cherry picked from commit 30ccf2f48c11e54fc0540510dcec7cd006a2c366)
DeltaFile
+12-6sys/dev/igc/if_igc.c
+12-61 files

FreeBSD/src cbedee9sys/dev/e1000 if_em.c

e1000: defer sysctl-driven reinit to the admin task

Request the reset through iflib and let the admin task perform the
stop/init under the context lock, matching what the VF and SR-IOV paths
already do.

The assertion is compiled out without INVARIANTS, where the same write
instead resets the MAC and takes the ICH software flag while the queues
stay live and an ioctl or the admin task may be running.

While here also remove unnecessary em_if_init uses:
iflib_if_init_locked() already runs after IFDI_RESUME and
IFDI_MEDIA_CHANGE, so the trailing *_if_init() only added an unstopped
IFDI_INIT that the following iflib_stop() undoes.

Differential Revision:  https://reviews.freebsd.org/D58628

(cherry picked from commit abdde8b602813753e423610b39be6806da5647e2)
DeltaFile
+12-6sys/dev/e1000/if_em.c
+12-61 files

FreeBSD/src 2519e19sys/net iflib.c ifdi_if.m

iflib: Allow conditional LED device support

A driver class may implement LED control even though the capability is
not available on every device or firmware version it supports.  Add an
optional capability method and consult it before creating the led(4)
device.  Default to supported so existing providers are unchanged.

This will be used by bnxt which blends PF and VF in the same driver.

MFC after:      2 weeks
DeltaFile
+10-0sys/net/ifdi_if.m
+1-1sys/net/iflib.c
+11-12 files

FreeBSD/src bbf9322sys/dev/igc igc_regs.h if_igc.h

igc: Recover from fatal internal memory errors

I225 and I226 report uncorrectable internal memory errors through
ICR.FER and identify the affected region in PEIND.  Depending on the
region, hardware stops transmit or all PCIe and DMA traffic until the
port is reset and reinitialized.

Enable the fatal error interrupt and capture its read clear status in
the interrupt filter.  Mask the cause while an iflib reset is pending,
report the affected memory regions, and expose per region indication
counters.

PCIe region parity failures require a different recovery order from a
normal reset: assert DEV_RST, wait at least 3 ms, disable PCIe master
requests, clear PCIEERRSTS, and then reinitialize the port.  Follow that
sequence before entering the normal reset path and clear the remaining
LAN status afterward.

The I225/I226 PBECCSTS layout is unrelated to the PCH layout previously

    [20 lines not shown]
DeltaFile
+221-5sys/dev/igc/if_igc.c
+20-5sys/dev/igc/igc_defines.h
+10-0sys/dev/igc/if_igc.h
+7-2sys/dev/igc/igc_regs.h
+258-124 files

FreeBSD/src 9f7633bsys/dev/igc if_igc.h if_igc.c

igc: Report corrected internal ECC errors

I225 and I226 do not interrupt for corrected internal ECC errors.
Instead, the DMA packet buffer and PCIe memories expose sticky status
bits in PBECCSTS and PCIEECCSTS.

Sample these bits with the regular hardware statistics update, preserve
the PBECCSTS ECC enable state while clearing its RW1C indication, and
expose separate counters for the DMA packet buffer, PCIe transmit-data
memory, and PCIe retry buffer.

These counters represent observed indications rather than an exact error
count because multiple corrections between samples collapse into one
sticky status bit.

Hardware validation used an I225-IT (rev 3) and a debug kernel that
wrote only the documented self-clearing injection bits.  Each test
armed the injector, exercised the owning RAM with traffic, and compared
the corresponding counter before and after.

    [14 lines not shown]
DeltaFile
+40-0sys/dev/igc/if_igc.c
+3-0sys/dev/igc/if_igc.h
+43-02 files

FreeBSD/src 887114ausr.bin/du du.c du.1

du: Print progress information to stderr

* On SIGINFO, print the current path to stderr rather than stdout.

* Do so immediately, instead of the next time we finish a directory.

* Document this behavior in the manual page.

PR:             296861
MFC after:      1 week
Fixes:          d1588599c024 ("Report the next directory being scanned ...")
Reviewed by:    wollman
Differential Revision:  https://reviews.freebsd.org/D58702

(cherry picked from commit fd79bf63442eefd2c3bfb695a377dbd705f5cc6d)
DeltaFile
+11-1usr.bin/du/du.1
+4-4usr.bin/du/du.c
+15-52 files

FreeBSD/src b0c2926usr.bin/du du.c du.1

du: Print progress information to stderr

* On SIGINFO, print the current path to stderr rather than stdout.

* Do so immediately, instead of the next time we finish a directory.

* Document this behavior in the manual page.

PR:             296861
MFC after:      1 week
Fixes:          d1588599c024 ("Report the next directory being scanned ...")
Reviewed by:    wollman
Differential Revision:  https://reviews.freebsd.org/D58702

(cherry picked from commit fd79bf63442eefd2c3bfb695a377dbd705f5cc6d)
DeltaFile
+11-1usr.bin/du/du.1
+4-4usr.bin/du/du.c
+15-52 files

FreeBSD/src ceb764fcontrib/unbound config.h.in configure, contrib/unbound/doc Changelog

unbound: Update to 1.26.0

Release notes at
        https://community.nlnetlabs.nl/t/unbound-1-26-0-released

Merge commit '84ffc29dc8ddb0c946db5cb3b3c1310bec6a9e6c'

(cherry picked from commit 7a789145f88a6aceacc59029a0cafe7de7aeefea)
DeltaFile
+3,512-3,494contrib/unbound/util/configlexer.c
+2,874-1,942contrib/unbound/configure
+2,148-2,099contrib/unbound/util/configparser.c
+577-0contrib/unbound/doc/Changelog
+223-181lib/libunbound/config.h
+220-178contrib/unbound/config.h.in
+9,554-7,894108 files not shown
+12,570-8,977114 files

FreeBSD/src ea65604sys/fs/pseudofs pseudofs.c

pseudofs: Don't purge the cache on shutdown

This is a waste of time and results in a use-after-free if linsysfs is
loaded and a USB network interface is in use, since USB devices are
disconnected at shutdown, which triggers a call into linsysfs, which
then tries to destroy a pseudofs node which has already been purged.

MFC after:      1 week
Reviewed by:    glebius
Differential Revision:  https://reviews.freebsd.org/D58359

(cherry picked from commit 4ebcdb8dd9a7bdddbc97ff6ee47e0a7556c76b5a)
DeltaFile
+0-1sys/fs/pseudofs/pseudofs.c
+0-11 files

FreeBSD/src fe264ccsys/fs/tarfs tarfs.h

tarfs: remove unused 'ino' in mount structure.

Differential Revision:  https://reviews.freebsd.org/D57898

(cherry picked from commit 54e6dec44b6dd264b19e50439a58b33cab4c10c3)
DeltaFile
+0-1sys/fs/tarfs/tarfs.h
+0-11 files

FreeBSD/src 79cf64acontrib/unbound config.h.in configure, contrib/unbound/doc Changelog

unbound: Update to 1.26.0

Release notes at
        https://community.nlnetlabs.nl/t/unbound-1-26-0-released

Merge commit '84ffc29dc8ddb0c946db5cb3b3c1310bec6a9e6c'

(cherry picked from commit 7a789145f88a6aceacc59029a0cafe7de7aeefea)
DeltaFile
+3,512-3,494contrib/unbound/util/configlexer.c
+2,874-1,942contrib/unbound/configure
+2,148-2,099contrib/unbound/util/configparser.c
+577-0contrib/unbound/doc/Changelog
+223-181lib/libunbound/config.h
+220-178contrib/unbound/config.h.in
+9,554-7,894108 files not shown
+12,570-8,977114 files

FreeBSD/src 0477871sys/fs/tarfs tarfs.h

tarfs: remove unused 'ino' in mount structure.

Differential Revision:  https://reviews.freebsd.org/D57898

(cherry picked from commit 54e6dec44b6dd264b19e50439a58b33cab4c10c3)
DeltaFile
+0-1sys/fs/tarfs/tarfs.h
+0-11 files

FreeBSD/src df9c672sys/fs/pseudofs pseudofs.c

pseudofs: Don't purge the cache on shutdown

This is a waste of time and results in a use-after-free if linsysfs is
loaded and a USB network interface is in use, since USB devices are
disconnected at shutdown, which triggers a call into linsysfs, which
then tries to destroy a pseudofs node which has already been purged.

MFC after:      1 week
Reviewed by:    glebius
Differential Revision:  https://reviews.freebsd.org/D58359

(cherry picked from commit 4ebcdb8dd9a7bdddbc97ff6ee47e0a7556c76b5a)
DeltaFile
+0-1sys/fs/pseudofs/pseudofs.c
+0-11 files

FreeBSD/src e15d226tools/tools/git mfc-candidates.lua

mfc-candidates: Fix remote repo detection

In my repos the remote "freebsd" is git at gitrepo.freebsd.org:src.git.
In particular, the last component is delimited by a colon, not a slash.

Sponsored by:   Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D48951
DeltaFile
+1-1tools/tools/git/mfc-candidates.lua
+1-11 files

FreeBSD/src f77fa28. UPDATING, sys/sys param.h

video: bump __FreeBSD_version for video(4) refactor

Reviewed by:    manu, adrian
Differential Revision:  https://reviews.freebsd.org/D58798
DeltaFile
+5-0UPDATING
+1-1sys/sys/param.h
+6-12 files

FreeBSD/src a8c126bsys/sys videoio.h

video: add V4L2 compat symbols for ffmpeg/opencv

Adds v4l2_std_id, struct v4l2_standard/v4l2_plane, VIDIOC_G_STD/S_STD/
ENUMSTD, V4L2_STD_NTSC*, the MPLANE capability flag, multiplanar types
(VIDEO_MAX_PLANES, v4l2_plane_pix_format, v4l2_pix_format_mplane,
V4L2_TYPE_IS_MULTIPLANAR), V4L2_PIX_FMT_JPEG/YUV411P/SN9C10X, and the
MPEG control class (V4L2_CID_MPEG_BASE, V4L2_CID_MPEG_VIDEO_B_FRAMES).

video(4) capture devices are digital-only and never expose these, but
ffmpeg's libavdevice/v4l2.c and opencv's cap_v4l.cpp both reference
them unconditionally. Fixes their build against sys/videoio.h.

PR:             297454

Reviewed by:    manu, adrian
Differential Revision:  https://reviews.freebsd.org/D58793
DeltaFile
+101-3sys/sys/videoio.h
+101-31 files

FreeBSD/src fb3564bsys/sys videoio.h

video: fix v4l2_buffer size assert on non-i386 32-bit ports

Split the #else branch into an explicit __i386__ case (68) and a
generic ILP32-with-64-bit-time_t case (80) covering arm and powerpc.

Fixes: 0343ab8a6afa

Reviewed by:    adrian
Differential Revision:  https://reviews.freebsd.org/D58790
DeltaFile
+7-7sys/sys/videoio.h
+7-71 files

FreeBSD/src 527a824. ObsoleteFiles.inc, lib/libusb Makefile Symbol.map

libusb: versioning symbols

Reviewed by:    bapt, kevans
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D55686
DeltaFile
+260-0lib/libusb/Symbol.map
+4-1lib/libusb/Makefile
+3-0ObsoleteFiles.inc
+1-1tools/build/mk/OptionalObsoleteFiles.inc
+268-24 files

FreeBSD/src 60539afshare/misc bsd-family-tree

bsd-family-tree: add NetBSD 11.0

(cherry picked from commit 396e6d69955669b564cb605418e9d8025b3592bd)
DeltaFile
+2-0share/misc/bsd-family-tree
+2-01 files

FreeBSD/src 42ad072share/misc bsd-family-tree

bsd-family-tree: add FreeBSD 15.1

(cherry picked from commit f8b5df434e419e00272bfce343bf7da239081276)
DeltaFile
+6-3share/misc/bsd-family-tree
+6-31 files

FreeBSD/src 0192f4ashare/misc bsd-family-tree

bsd-family-tree: add NetBSD 11.0

(cherry picked from commit 396e6d69955669b564cb605418e9d8025b3592bd)
DeltaFile
+2-0share/misc/bsd-family-tree
+2-01 files

FreeBSD/src 7678922share/misc bsd-family-tree

bsd-family-tree: add FreeBSD 15.1

(cherry picked from commit f8b5df434e419e00272bfce343bf7da239081276)
DeltaFile
+6-3share/misc/bsd-family-tree
+6-31 files

FreeBSD/src 7d576f1sys/geom geom_ctl.c

Change /dev/geom.ctl from root:operator to root:wheel.
DeltaFile
+1-1sys/geom/geom_ctl.c
+1-11 files

FreeBSD/src 3aac283sys/dev/ixgbe ixgbe.h if_ix.c

ixgbe: Defer E610 thermal shutdown to iflib

The E610 firmware event handler invoked ixgbe_if_stop() directly from
IFDI_UPDATE_ADMIN_STATUS().  This reset the device without the iflib
queue lifecycle and left the interface marked running after its hardware
was stopped.

Request an iflib reset instead.  Fail the automatic initialization once
so the reset transaction stops the interface and publishes that state.
A later operator-requested initialization remains possible, matching the
previous recovery policy without bypassing iflib.

MFC after:      2 weeks
DeltaFile
+14-5sys/dev/ixgbe/if_ix.c
+1-0sys/dev/ixgbe/ixgbe.h
+15-52 files

FreeBSD/src 43aa553sys/dev/ixgbe if_ix.c

ixgbe: Defer firmware recovery transitions to iflib

The firmware-mode callout invoked ixgbe_if_stop() directly.  This
performed a full device reset without the iflib context lock or the
iflib queue lifecycle.  It could also poll the E610 firmware command
interface from callout context while identification was active.

Request an iflib reset from the callout instead.  Reject initialization
while firmware recovery remains active.  This leaves the interface
stopped and lets iflib publish that state.  Request initialization when
firmware exits recovery so an administratively-up interface can recover
without operator intervention.

MFC after:      2 weeks
DeltaFile
+12-4sys/dev/ixgbe/if_ix.c
+12-41 files

FreeBSD/src c28f2c5sys/dev/ixgbe ixgbe_type.h ixgbe.h

ixgbe: Defer ECC recovery to iflib

The link interrupt filter performed a full hardware reset in interrupt
context.  This bypassed iflib stop and initialization, including queue
quiescence and restoration of temporary LED state.

Record the ECC event in the administrative request mask and ask iflib
to perform the reset from its taskqueue.  Keep the ECC cause masked
until reset so the intermediate admin pass cannot re-enable a sticky
condition.  Handle ECC independently of Flow Director and in legacy
interrupt mode.

Remove the redundant EICR write; the filter has already cleared the
reported causes.  Also remove the accompanying complement-mask update
of mac.flags.  It set every flag except DOUBLE_RESET_REQUIRED and had
no place in ECC recovery.

MFC after:      2 weeks
DeltaFile
+40-14sys/dev/ixgbe/if_ix.c
+1-0sys/dev/ixgbe/ixgbe_type.h
+1-0sys/dev/ixgbe/ixgbe.h
+42-143 files

FreeBSD/src 8b2e759share/man/man4 ixl.4, sys/dev/ixl ixl_pf_iflib.c ixl_pf.h

ixl: Add led(4) identification support

Expose each physical port identification LED through /dev/led/ixl*.
Use the existing GPIO LED helpers for most devices and the PHY
provisioning interface for X710 10GBASE-T adapters.

Preserve and restore the original GPIO or PHY indication mode,
including before the interface is stopped.

MFC after:      2 weeks
DeltaFile
+77-1sys/dev/ixl/if_ixl.c
+6-1share/man/man4/ixl.4
+5-0sys/dev/ixl/ixl_pf.h
+2-0sys/dev/ixl/ixl_pf_iflib.c
+90-24 files

FreeBSD/src fb7e249share/man/man4 ix.4, sys/dev/ixgbe ixgbe.h if_ix.c

ixgbe: Add led(4) identification support

Expose the physical port identification LED through /dev/led/ix*.
Save and restore the NVM-selected LEDCTL value around each request.
The X550 operations also clear their PHY manual override before the
register is restored.

Use the dedicated firmware port-identification command on E610.  Its
interface selects between firmware blinking and the original mode
rather than directly controlling LEDCTL.

Restore the normal indication before a device stop or reset.

MFC after:      2 weeks
DeltaFile
+54-0sys/dev/ixgbe/if_ix.c
+6-1share/man/man4/ix.4
+2-0sys/dev/ixgbe/ixgbe.h
+62-13 files