FreeBSD/src bf41d86sys/netinet ip_fastfwd.c, sys/netinet6 ip6_fastfwd.c

routing: Make ip[6]_tryforward() FIB-aware for local traffic

`ip_tryforward()` and `ip6_tryforward()` checks whether the destination
address is local or not without considering if it belongs to the current FIB.
If the destination is local but not in our FIB, forward it instead
of returning it to ip_input().

PR:             292319
Reviewed by:    zlei
MFC after:      1 week
MFC to:         stable/15
Differential Revision: https://reviews.freebsd.org/D56353
DeltaFile
+2-2sys/netinet/ip_fastfwd.c
+1-1sys/netinet6/ip6_fastfwd.c
+3-32 files

FreeBSD/src 956acdcsys/net if_loop.c

loopback: Account for packet drops

Make loopback packet drops more obvious by reporting them
in interface stats visable via netstat -ni
Since loopback uses netisr, packets can be dropped if the
netisr queue overflows.  These drops are visible via
netisr -Q, but its not an obvious place to look.

Differential Revision: https://reviews.freebsd.org/D56356
Reviewed by: glebius, tuexen
Sponsored by: Netflix
DeltaFile
+7-3sys/net/if_loop.c
+7-31 files

FreeBSD/src f707cc0sys/netinet tcp_lro.c

lro: move pkt rejection checks to leafs to avoid queueing non-LRO'able pkts

When lro mbuf queuing is enabled, we should not queue easily
reject-able packets. Queuing them does a bit of extra work (sorting,
timestamps) and can potentially delay urgent packets such as LACP
PDUs. This change moves simple rejection tests from lro_rx_common()
into lro_rx and (more importantly) into tcp_lro_queue_mbuf().

Note this change only moves the easy checks on forwarding and packet
metadata, where the rejection criteria is already hot in cache. It
does not move parsing and looking inside the packet to verify the
ether protocol, ip protocol, etc. This could be done, but we risk
essentially doubling the cache misses per-packet by doing so.

Differential Revision: https://reviews.freebsd.org/D56337
Reviewed by: rrs, tuexen
Sponsored by: Netflix
DeltaFile
+52-21sys/netinet/tcp_lro.c
+52-211 files

FreeBSD/src 963f1a5lib/libifconfig libifconfig_sfp.c sfp.lua, sbin/ifconfig sfp.c

ifconfig: add CMIS support for 400GbE optics

Add support for CMIS based optics, typically used by 400GbE
and faster ethernet optics.   The CMIS standard requires paged
support for i2c ioctls.

This has been tested on an Nvidia ConnectX-7 and Broadcom
Thor2 400GbE NIC, and I have verified that optics vendor information,
light levels, and temperatures match the information provided by
various vendor tools.

Differential Revision: https://reviews.freebsd.org/D56265
Reviewed by: kbowling, sumit.saxena_broadcom.com
Sponsored by: Netflix
DeltaFile
+450-0sys/net/cmis.h
+227-1lib/libifconfig/libifconfig_sfp.c
+120-0lib/libifconfig/sfp.lua
+25-2lib/libifconfig/libifconfig_sfp.h
+14-2sbin/ifconfig/sfp.c
+836-55 files

FreeBSD/src c48381dsys/conf files.arm64

qcom_gcc: Only build on arm64 for kernels with FDT

This fixes the build of the LINT-ACPI kernel.

Fixes:          4e3fdced7f78 ("qcom_gcc: migrate the MSM8916 support to qcom_gcc")
DeltaFile
+14-14sys/conf/files.arm64
+14-141 files

FreeBSD/src f4e5b45sys/net if_geneve.c

if_geneve: Fix build without INET or without INET6
DeltaFile
+49-7sys/net/if_geneve.c
+49-71 files

FreeBSD/src 0b77f92sys/netinet in_pcb.h

in_pcb: Fix RIPCB_HASH in kernels without INET or INET6

Only use hashes for protocols that are enabled in the kernel
configuration.

Fixes:          ece716c5d347 ("raw ip: move hash table manipulation to inpcb layer")
DeltaFile
+8-0sys/netinet/in_pcb.h
+8-01 files

FreeBSD/src 4fadf24sys/netinet tcp_subr.c

tcp_close: Use in6_pcbdisconnect for INET6 sockets

This also fixes the LINT-NOINET builds.

Fixes:          40dbb06fa73c ("inpcb: retire INP_DROPPED and in_pcbdrop()")
DeltaFile
+9-0sys/netinet/tcp_subr.c
+9-01 files

FreeBSD/src 6dd8631tests/sys/cam/ctl opcodes.sh all-supported-opcodes.txt

CTL: add ATF tests for REPORT SUPPORTED OPCODES

This includes a regression test for CVE-2024-42416

MFC after:      2 weeks
Sponsored by:   ConnectWise
Reviewed by:    emaste
Differential Revision: https://reviews.freebsd.org/D46613
DeltaFile
+241-0tests/sys/cam/ctl/opcodes.sh
+39-0tests/sys/cam/ctl/all-supported-opcodes.txt
+2-0tests/sys/cam/ctl/Makefile
+282-03 files

FreeBSD/src 3b6f570tools/tools/shlib-compat shlib-compat.py

shlib-compat: Fix two typos in error messages

- s/implemeted/implemented/

(cherry picked from commit 3957e233dd9cf7b7599dd0a5efc59a78adfa9441)
DeltaFile
+2-2tools/tools/shlib-compat/shlib-compat.py
+2-21 files

FreeBSD/src d23e0bcsys/dev/ixl ixl_txrx.c

ixl(4): Fix a typo in a source code comment

- s/seperated/separated/

(cherry picked from commit ef3703a8cd9ade13d0c7a685577100e1fc18ee09)
DeltaFile
+1-1sys/dev/ixl/ixl_txrx.c
+1-11 files

FreeBSD/src cbddd42sys/dev/bhnd bhnd_bus_if.m

bhnd(4): Fix a typo in a source code comment

- s/impementations/implementations/

(cherry picked from commit 04be4d04bbcbd061455b4424488b06927487a948)
DeltaFile
+1-1sys/dev/bhnd/bhnd_bus_if.m
+1-11 files

FreeBSD/src 82333a5usr.sbin/bsdconfig/share common.subr

bsdconfig(8): Fix a typo in a source code comment

- s/THis/This/

(cherry picked from commit b427b661be01e7b112531ba0b1ea27377a963bb8)
DeltaFile
+1-1usr.sbin/bsdconfig/share/common.subr
+1-11 files

FreeBSD/src c52f565sys/dev/isci/scil scic_sds_remote_node_table.c scic_sds_phy_registers.h

isci(4): Fix a couple of typos in source code comments

- s/THis/This/
- s/impementation/implementation/

(cherry picked from commit adc41a72b8843047d02265a6ab2d8a5025a9ce89)
DeltaFile
+2-2sys/dev/isci/scil/scic_sds_remote_node_table.c
+1-1sys/dev/isci/scil/scic_sds_phy_registers.h
+1-1sys/dev/isci/scil/scic_sds_stp_request.h
+1-1sys/dev/isci/scil/scif_remote_device.h
+5-54 files

FreeBSD/src eb44833tools/tools/shlib-compat shlib-compat.py

shlib-compat: Fix two typos in error messages

- s/implemeted/implemented/

(cherry picked from commit 3957e233dd9cf7b7599dd0a5efc59a78adfa9441)
DeltaFile
+2-2tools/tools/shlib-compat/shlib-compat.py
+2-21 files

FreeBSD/src 54cfd9csys/dev/ixl ixl_txrx.c

ixl(4): Fix a typo in a source code comment

- s/seperated/separated/

(cherry picked from commit ef3703a8cd9ade13d0c7a685577100e1fc18ee09)
DeltaFile
+1-1sys/dev/ixl/ixl_txrx.c
+1-11 files

FreeBSD/src a8fac98sys/dev/bhnd bhnd_bus_if.m

bhnd(4): Fix a typo in a source code comment

- s/impementations/implementations/

(cherry picked from commit 04be4d04bbcbd061455b4424488b06927487a948)
DeltaFile
+1-1sys/dev/bhnd/bhnd_bus_if.m
+1-11 files

FreeBSD/src 2078655usr.sbin/bsdconfig/share common.subr

bsdconfig(8): Fix a typo in a source code comment

- s/THis/This/

(cherry picked from commit b427b661be01e7b112531ba0b1ea27377a963bb8)
DeltaFile
+1-1usr.sbin/bsdconfig/share/common.subr
+1-11 files

FreeBSD/src 903c46elib/libc/gen pause.3

pause.3: Fix a typo in the manual page

- s/reimplemeted/reimplemented/

(cherry picked from commit 9eea5eccf40d408ad22ac06d9962b3a98a0f0628)
DeltaFile
+1-1lib/libc/gen/pause.3
+1-11 files

FreeBSD/src 76b90c1sys/netinet in_pcb.h

inpcb: remove last use of relic u_quad_t
DeltaFile
+1-1sys/netinet/in_pcb.h
+1-11 files

FreeBSD/src 9b76228sys/kern uipc_ktls.c, sys/netinet tcp_timer.c in_pcb.h

inpcb: retire inp_vnet

Now that a functional inpcb can not outlive its socket, just use socket's
vnet pointer.
DeltaFile
+5-5sys/netinet/tcp_timer.c
+0-8sys/netinet/in_pcb.h
+2-2sys/kern/uipc_ktls.c
+0-3sys/netinet/in_pcb.c
+1-1sys/netinet/tcp_hpts.c
+8-195 files

FreeBSD/src 8c941e3sys/x86/acpica acpi_apm.c

acpi_apm: Don't recurse on ACPI_LOCK in apmreadfilt

The lock is already held by the caller since it is used as the knlist
lock.

PR:             293901
Reported by:    Jiaming Zhang <r772577952 at gmail.com>
Fixes:          cc2715cf1f86 ("acpi_apm: Narrow scope of ACPI_LOCK")
DeltaFile
+0-2sys/x86/acpica/acpi_apm.c
+0-21 files

FreeBSD/src 998d501share/man/man7 freebsd-base.7

freebsd-base.7: Add an example for unregistering

MFC after:              3 days
Reviewed by:            ivy, emaste
Discussed with:         bapt, des, emaste, ivy, phk, pi
Differential Revision:  https://reviews.freebsd.org/D55458
DeltaFile
+35-1share/man/man7/freebsd-base.7
+35-11 files

FreeBSD/src 5f922bdshare/man/man7 freebsd-base.7

freebsd-base.7: Break examples into subsections

Break the examples into subsections, so that we can have multi-step
examples.

MFC after:              3 days (to 15 only)
Discussed with:         ivy
Differential Revision:  https://reviews.freebsd.org/D55526
DeltaFile
+6-5share/man/man7/freebsd-base.7
+6-51 files

FreeBSD/src dc140a9share/skel dot.profile, usr.bin/apply apply.1

Bourne shell -> POSIX shell

The FreeBSD shell is a POSIX compatible shell. It evolved over several
decades from the Almquist shell, which was preceeded a decade before
that by the Bourne shell. Most readers today have never seen a Bourne
shell. If someone wants to learn to use our shell, they need to look for
tutorials on the POSIX shell. Align descriptions through out the tree
with this reality, consistent with it's manual and common parlance.

We made a similar change to the doc tree in b4d6eb01540fe.

MFC after:              3 days
Reviewed by:            carlavilla
Differential Revision:  https://reviews.freebsd.org/D56382
DeltaFile
+2-2usr.bin/fortune/datfiles/freebsd-tips
+2-2usr.bin/script/script.1
+1-1usr.sbin/adduser/adduser.8
+1-1share/skel/dot.profile
+1-1usr.bin/apply/apply.1
+1-1usr.bin/chpass/chpass.1
+8-86 files

FreeBSD/src 934a35alib/libthr libthr.3

libthr.3: describe SIGTHR

Explain how SIGTHR is used and that it should be not touched by user
code.  Note about SIGLIBRT.

Reviewed by:    emaste
Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
Differential revision:  https://reviews.freebsd.org/D56384
DeltaFile
+19-0lib/libthr/libthr.3
+19-01 files

FreeBSD/src fa912e3lib/libthr libthr.3

libthr.3: describe what we mean by C runtime environment.

Reviewed by:    emaste
Sponsored by:   The FreeBSD Foundation
MFC after:      3 days
Differential revision:  https://reviews.freebsd.org/D56384
DeltaFile
+6-0lib/libthr/libthr.3
+6-01 files

FreeBSD/src 893b90cusr.bin/netstat netstat.1 main.c

netstat: Add -F support for -g

This change adds the ability to examine the contents of multicast
routing tables for other FIBs without the need for executing
`netstat` with `setfib(1)`.

MFC after:      3 days
Sponsored by:   Klara, Inc.
Sponsored by:   Stormshield
Differential Revision:  https://reviews.freebsd.org/D56205
Reviewed by:    glebius, markj, zlei

(cherry picked from commit cff675e83cdb6c9027e94df9d010439e42e27dee)
DeltaFile
+12-1usr.bin/netstat/netstat.1
+2-0usr.bin/netstat/main.c
+14-12 files

FreeBSD/src 3524d4eshare/examples Makefile, share/examples/sound mmap.c

sound examples: Add mmap example

This example opens separate OSS capture and playback channels in mmap
mode, places them into a sync group, and starts them together so both
ring buffers advance on the same device timeline. It then monitors the
capture mmap pointer with SNDCTL_DSP_GETIPTR, converts that pointer into
monotonic absolute progress using the reported block count, and copies
newly recorded audio from the input ring to the matching region of the
output ring.

The main loop is driven by an absolute monotonic frame clock rather than
a fixed relative usleep delay. Wakeups are scheduled from the sample
rate using a small frame step similar to the SOSSO timing model, while
the audio path itself stays intentionally simple: just copy input to
output, with no explicit xrun recovery or processing beyond ring
wraparound handling.

MFC after:      1 week
Reviewed by:    christos
Differential Revision:  https://reviews.freebsd.org/D53749
DeltaFile
+297-0share/examples/sound/mmap.c
+1-0share/examples/Makefile
+298-02 files

FreeBSD/src add68b4sys/net if_bridge.c

bridge(4): Remove epoch_enter during destruction

bridge doesn't require to enter epoch during destruction.

Reviewed by: zlei, glebius
Differential Revision: https://reviews.freebsd.org/D55935

(cherry picked from commit 17920f8335106487968d7928d01b34300756ea00)
DeltaFile
+0-5sys/net/if_bridge.c
+0-51 files