aboutsummaryrefslogtreecommitdiff
path: root/share/man/man4
diff options
context:
space:
mode:
Diffstat (limited to 'share/man/man4')
-rw-r--r--share/man/man4/Makefile7
-rw-r--r--share/man/man4/aac.410
-rw-r--r--share/man/man4/ahc.410
-rw-r--r--share/man/man4/ahd.46
-rw-r--r--share/man/man4/blackhole.47
-rw-r--r--share/man/man4/cdceem.47
-rw-r--r--share/man/man4/cxgbe.45
-rw-r--r--share/man/man4/dtrace_lockstat.44
-rw-r--r--share/man/man4/epair.425
-rw-r--r--share/man/man4/gif.419
-rw-r--r--share/man/man4/gpio.46
-rw-r--r--share/man/man4/gpioled.415
-rw-r--r--share/man/man4/ip.42
-rw-r--r--share/man/man4/mac_do.410
-rw-r--r--share/man/man4/mmcsd.411
-rw-r--r--share/man/man4/mpr.44
-rw-r--r--share/man/man4/mrsas.4199
-rw-r--r--share/man/man4/nda.412
-rw-r--r--share/man/man4/pci.413
-rw-r--r--share/man/man4/pfsync.42
-rw-r--r--share/man/man4/puc.42
-rw-r--r--share/man/man4/random.413
-rw-r--r--share/man/man4/sdhci.444
-rw-r--r--share/man/man4/syncache.429
-rw-r--r--share/man/man4/tcp.410
-rw-r--r--share/man/man4/thunderbolt.422
-rw-r--r--share/man/man4/udbc.4132
-rw-r--r--share/man/man4/umass.427
-rw-r--r--share/man/man4/umb.43
-rw-r--r--share/man/man4/usbhid.48
-rw-r--r--share/man/man4/vtnet.453
-rw-r--r--share/man/man4/watchdog.462
32 files changed, 562 insertions, 217 deletions
diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile
index 519b113b0a2e..6e076722c786 100644
--- a/share/man/man4/Makefile
+++ b/share/man/man4/Makefile
@@ -1,13 +1,16 @@
.include <src.opts.mk>
MANGROUPS= MAN
-MANPACKAGE= kernel
+MANPACKAGE= kernel-man
# If you add a new file here, please consider adding an entry to the
# hardware notes template (website/archetypes/release/hardware.adoc in
# the doc repository); otherwise the automatically generated hardware
# notes will not include your driver.
+# If you enable a driver for a different architecture, please remember
+# to update the arch specifier in the document title of the manual.
+
MAN= aac.4 \
aacraid.4 \
acpi.4 \
@@ -586,6 +589,7 @@ MAN= aac.4 \
tdfx.4 \
termios.4 \
textdump.4 \
+ thunderbolt.4 \
ti.4 \
timecounters.4 \
tmpfs.4 \
@@ -1062,6 +1066,7 @@ MAN+= \
ucom.4 \
ucycom.4 \
udav.4 \
+ udbc.4 \
udbp.4 \
udl.4 \
uep.4 \
diff --git a/share/man/man4/aac.4 b/share/man/man4/aac.4
index 7a7d0350dcdb..f4b431cc6b4f 100644
--- a/share/man/man4/aac.4
+++ b/share/man/man4/aac.4
@@ -1,3 +1,6 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
.\" Copyright (c) 2000 Scott Long
.\" All rights reserved.
.\"
@@ -21,7 +24,7 @@
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
-.Dd July 10, 2009
+.Dd September 29, 2025
.Dt AAC 4
.Os
.Sh NAME
@@ -83,9 +86,10 @@ Linux-compatible
interface for the management device will be enabled and will allow
Linux-based management applications to control the card.
.Sh HARDWARE
-Controllers supported by the
+The
.Nm
-driver include:
+driver supports the following Parallel SCSI, SATA, and 3G SAS
+RAID controllers from the Adaptec AAC family:
.Pp
.Bl -bullet -compact
.It
diff --git a/share/man/man4/ahc.4 b/share/man/man4/ahc.4
index 38712c1f08b6..72a1e092f1bc 100644
--- a/share/man/man4/ahc.4
+++ b/share/man/man4/ahc.4
@@ -1,4 +1,6 @@
.\"
+.\" SPDX-License-Identifier: BSD-3-Clause
+.\"
.\" Copyright (c) 1995, 1996, 1997, 1998, 2000
.\" Justin T. Gibbs. All rights reserved.
.\"
@@ -24,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd February 15, 2017
+.Dd September 29, 2025
.Dt AHC 4
.Os
.Sh NAME
@@ -172,11 +174,7 @@ adapter, defaults to enabled (0 -- disabled, 1 -- enabled).
.Sh HARDWARE
The
.Nm
-driver supports the following
-.Tn SCSI
-host adapter chips and
-.Tn SCSI
-controller cards:
+driver supports the following VL/ISA/PCI parallel SCSI controllers and cards:
.Pp
.Bl -bullet -compact
.It
diff --git a/share/man/man4/ahd.4 b/share/man/man4/ahd.4
index c173a8cef619..7fa08c12b5b5 100644
--- a/share/man/man4/ahd.4
+++ b/share/man/man4/ahd.4
@@ -1,4 +1,6 @@
.\"
+.\" SPDX-License-Identifer: BSD-3-Clause
+.\"
.\" Copyright (c) 1995, 1996, 1997, 1998, 2000
.\" Justin T. Gibbs. All rights reserved.
.\" Copyright (c) 2002
@@ -26,7 +28,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd July 4, 2004
+.Dd September 29, 2025
.Dt AHD 4
.Os
.Sh NAME
@@ -132,7 +134,7 @@ A hint to define whether the SCSI target mode is enabled (0 -- disabled, 1 -- en
.Sh HARDWARE
The
.Nm
-driver supports the following:
+driver supports the following PCI/PCI-X parallel SCSI controllers:
.Pp
.Bl -bullet -compact
.It
diff --git a/share/man/man4/blackhole.4 b/share/man/man4/blackhole.4
index bb955fd4497d..777a38eedc86 100644
--- a/share/man/man4/blackhole.4
+++ b/share/man/man4/blackhole.4
@@ -10,15 +10,12 @@
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\"
-.Dd May 25, 2024
+.Dd September 24, 2025
.Dt BLACKHOLE 4
.Os
.Sh NAME
.Nm blackhole
-.Nd a
-.Xr sysctl 8
-MIB for manipulating behaviour in respect of refused SCTP, TCP, or UDP connection
-attempts
+.Nd quietly drop refused SCTP, TCP, or UDP packets
.Sh SYNOPSIS
.Cd sysctl net.inet.sctp.blackhole Ns Op = Ns Brq "0 | 1 | 2"
.Cd sysctl net.inet.tcp.blackhole Ns Op = Ns Brq "0 | 1 | 2 | 3"
diff --git a/share/man/man4/cdceem.4 b/share/man/man4/cdceem.4
index 6d8caf53cc02..c2a282027241 100644
--- a/share/man/man4/cdceem.4
+++ b/share/man/man4/cdceem.4
@@ -1,3 +1,6 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
.\" Copyright (c) 2019 Edward Tomasz Napierala <trasz@FreeBSD.org>
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -20,12 +23,12 @@
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
-.Dd November 7, 2019
+.Dd September 18, 2025
.Dt CDCEEM 4
.Os
.Sh NAME
.Nm cdceem
-.Nd "USB Communication Device Class Ethernet Emulation Model (CDC EEM) driver"
+.Nd USB Communication Device Class Ethernet Emulation Model driver
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following lines in your
diff --git a/share/man/man4/cxgbe.4 b/share/man/man4/cxgbe.4
index bfba202d1fec..77465a3ae590 100644
--- a/share/man/man4/cxgbe.4
+++ b/share/man/man4/cxgbe.4
@@ -29,7 +29,7 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.Dd November 10, 2022
+.Dd September 29, 2025
.Dt CXGBE 4
.Os
.Sh NAME
@@ -73,6 +73,7 @@ driver uses different names for devices based on the associated ASIC:
.It T4 Ta cxgbe Ta t4nex Ta vcxgbe
.It T5 Ta cxl Ta t5nex Ta vcxl
.It T6 Ta cc Ta t6nex Ta vcc
+.It T7 Ta che Ta chnex Ta vche
.El
.Pp
Loader tunables with the hw.cxgbe prefix apply to all cards.
@@ -416,6 +417,8 @@ Support for T6 cards first appeared in
.Fx 11.1
and
.Fx 12.0 .
+Support for T7 cards first appeared in
+.Fx 15.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/dtrace_lockstat.4 b/share/man/man4/dtrace_lockstat.4
index e308ca6c22ce..448de91a375f 100644
--- a/share/man/man4/dtrace_lockstat.4
+++ b/share/man/man4/dtrace_lockstat.4
@@ -22,12 +22,12 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd August 20, 2019
+.Dd September 3, 2025
.Dt DTRACE_LOCKSTAT 4
.Os
.Sh NAME
.Nm dtrace_lockstat
-.Nd a DTrace provider for tracing CPU scheduling events
+.Nd a DTrace provider for tracing kernel locking events
.Sh SYNOPSIS
.Fn lockstat:::adaptive-acquire "struct mtx *"
.Fn lockstat:::adaptive-release "struct mtx *"
diff --git a/share/man/man4/epair.4 b/share/man/man4/epair.4
index 342b15b5612a..b406c423361b 100644
--- a/share/man/man4/epair.4
+++ b/share/man/man4/epair.4
@@ -25,7 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd August 12, 2025
+.Dd September 4, 2025
.Dt EPAIR 4
.Os
.Sh NAME
@@ -108,6 +108,29 @@ As with any other Ethernet interface,
can have a
.Xr vlan 4
configured on top of it.
+.Pp
+The
+.Nm
+has RXCSUM and RXCSUM6 enabled because it may receive a packet where the
+checksum has already been validated by a physical interface.
+The
+.Nm
+supports TXCSUM and TXCSUM6 for TCP and UDP, but only by forwarding the order
+to compute the checksum.
+Thus, when using an
+.Nm
+interface, a TCP or UDP sender can offload checksum computation
+to a physical interface.
+Note that, in case the packet does not leave the host, the checksum is
+unnecessary and will be ignored if offloaded.
+Such packets contain an incorrect checksum, since it is not computed yet.
+TXCSUM and TXCSUM6 are synchronized between the
+.Nm
+interface pair (i.e., enabling/disabling the capability on one end
+enables/disables it on the other end).
+In case one end is in a bridge and the bridge disabled TXCSUM or TXCSUM6,
+this avoids a sender to send packets with checksum offloading into the
+bridge by using the other end.
.Sh SEE ALSO
.Xr ioctl 2 ,
.Xr altq 4 ,
diff --git a/share/man/man4/gif.4 b/share/man/man4/gif.4
index ad33d5d21e81..cc12d91b72ea 100644
--- a/share/man/man4/gif.4
+++ b/share/man/man4/gif.4
@@ -28,7 +28,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd July 14, 2025
+.Dd August 27, 2025
.Dt GIF 4
.Os
.Sh NAME
@@ -55,6 +55,16 @@ does not perform GRE encapsulation; use
.Xr gre 4
for GRE encapsulation.
.Pp
+The
+.Nm
+interface can also tunnel Ethernet traffic over IPv4 or IPv6
+when combined with a
+.Xr if_bridge 4
+interface using EtherIP protocol.
+See
+.Xr if_bridge 4
+for detailed setup.
+.Pp
Each
.Nm
interface is created at runtime using interface cloning.
@@ -316,6 +326,13 @@ to the desired level of nesting.
.%D December 1999
.%O draft-ietf-ipsec-ecn-02.txt
.Re
+.Rs
+.%A R. Housley
+.%A S. Hollenbeck
+.%T EtherIP: Tunneling Ethernet Frames in IP Datagrams
+.%R RFC 3378
+.%D September 2002
+.Re
.\"
.Sh HISTORY
The
diff --git a/share/man/man4/gpio.4 b/share/man/man4/gpio.4
index 9a629ff402fd..b84bfb01de51 100644
--- a/share/man/man4/gpio.4
+++ b/share/man/man4/gpio.4
@@ -1,3 +1,6 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
.\" Copyright (c) 2013, Sean Bruno <sbruno@freebsd.org>
.\" All rights reserved.
.\"
@@ -22,7 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd June 27, 2019
+.Dd August 28, 2025
.Dt GPIO 4
.Os
.Sh NAME
@@ -33,7 +36,6 @@ To compile these devices into your kernel and use the device hints, place the
following lines in your kernel configuration file:
.Bd -ragged -offset indent
.Cd "device gpio"
-.Cd "device gpioc"
.Cd "device gpioiic"
.Cd "device gpioled"
.Ed
diff --git a/share/man/man4/gpioled.4 b/share/man/man4/gpioled.4
index 646e2ff2a8f0..45457d20d298 100644
--- a/share/man/man4/gpioled.4
+++ b/share/man/man4/gpioled.4
@@ -70,7 +70,20 @@ Which pin on the GPIO interface to map to this instance.
Please note that this mask should only ever have one bit set
(any other bits - i.e., pins - will be ignored).
.It Va hint.gpioled.%d.invert
-If set to 1, the pin will be set to 0 to light the LED, and 1 to clear it.
+Use pin inversion. If set to 1, the pin will be set to 0 to light the LED, and 1
+to clear it.
+.It Va hint.gpioled.%d.invmode
+Whether or not to use hardware support when pin inversion is requested. Must be
+one of:
+.Bl -tag
+.It Va auto
+Use hardware pin inversion if available, else fallback to software pin
+inversion. This is the default.
+.It Va hw
+Use hardware pin inversion.
+.It Va sw
+Use software pin inversion.
+.El
.It Va hint.gpioled.%d.state
The initial state of the LED when the driver takes control over it.
If set to 1 or 0, the LED will be on or off correspondingly.
diff --git a/share/man/man4/ip.4 b/share/man/man4/ip.4
index c52715a43380..fb5ea398c840 100644
--- a/share/man/man4/ip.4
+++ b/share/man/man4/ip.4
@@ -575,7 +575,7 @@ is the following structure:
.Bd -literal
struct ip_mreqn {
struct in_addr imr_multiaddr; /* IP multicast address of group */
- struct in_addr imr_interface; /* local IP address of interface */
+ struct in_addr imr_address; /* local IP address of interface */
int imr_ifindex; /* interface index */
}
.Ed
diff --git a/share/man/man4/mac_do.4 b/share/man/man4/mac_do.4
index 4dcb54c89673..39bfafd95474 100644
--- a/share/man/man4/mac_do.4
+++ b/share/man/man4/mac_do.4
@@ -94,8 +94,10 @@ i.e., one of the literal strings
or
.Ql gid .
.Li Aq id
-must be the numerical ID of a user or group, and is matched with the current
-process real ID of the corresponding type.
+must be the numerical ID of a user or group and is matched against the current
+process real ID of the corresponding type, and on type
+.Ql gid
+additionally against the supplementary groups.
.Ss Rule's Ao to Ac Part
The second part of a rule,
.Li Aq to ,
@@ -377,8 +379,8 @@ Same as the first example, but lifting any constraints on groups, allowing the
process to become part of any groups it sees fit.
.El
.Pp
-Here are several examples of single rules matching processes having a real group
-ID of 10001:
+Here are several examples of single rules matching processes having 10001 as
+their real group IDs or in their supplementary groups:
.Bl -tag -width indent
.It Li gid=10001>uid=0
Makes 10001 a more powerful
diff --git a/share/man/man4/mmcsd.4 b/share/man/man4/mmcsd.4
index 7466bc546b91..07d7e963b596 100644
--- a/share/man/man4/mmcsd.4
+++ b/share/man/man4/mmcsd.4
@@ -1,4 +1,6 @@
.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
.\" Copyright (c) 2007 M. Warner Losh <imp@FreeBSD.org>
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -21,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd June 10, 2021
+.Dd October 2, 2025
.Dt MMCSD 4
.Os
.Sh NAME
@@ -29,7 +31,7 @@
.Nd MMC and SD memory card driver
.Sh SYNOPSIS
.Cd device mmcsd
-.Sh DESCRIPTION
+.Sh HARDWARE
The
.Nm
driver implements direct access block device for MMC and SD memory cards.
@@ -42,3 +44,8 @@ driver implements direct access block device for MMC and SD memory cards.
.Rs
.%T "The MultiMediaCard System Specification"
.Re
+.Sh HISTORY
+The
+.Nm
+driver appeared in
+.Fx 7.0 .
diff --git a/share/man/man4/mpr.4 b/share/man/man4/mpr.4
index e114ecfd077b..cce21113e5c2 100644
--- a/share/man/man4/mpr.4
+++ b/share/man/man4/mpr.4
@@ -65,9 +65,9 @@ Fusion-MPT 3/3.5 IT/IR
.Tn SAS/PCIe
controllers.
.Sh HARDWARE
-These controllers are supported by the
+The
.Nm
-driver:
+driver supports the following SATA/SAS/NVMe RAID controllers:
.Pp
.Bl -bullet -compact
.It
diff --git a/share/man/man4/mrsas.4 b/share/man/man4/mrsas.4
index 36e9a7b5c7e7..5f7a0e6e45ea 100644
--- a/share/man/man4/mrsas.4
+++ b/share/man/man4/mrsas.4
@@ -1,3 +1,6 @@
+.\"
+.\" SPDX-License-Identifier: BSD-3-Clause
+.\"
.\" Copyright (c) 2014 LSI Corp
.\" All rights reserved.
.\" Author: Kashyap Desai
@@ -32,43 +35,42 @@
.\" are those of the authors and should not be interpreted as representing
.\" official policies, either expressed or implied, of the FreeBSD Project.
.\"
-.Dd February 4, 2021
+.Dd August 22, 2025
.Dt MRSAS 4
.Os
.Sh NAME
.Nm mrsas
-.Nd "LSI MegaRAID 6Gb/s and 12Gb/s SAS+SATA RAID controller driver"
+.Nd Broadcom/LSI MegaRAID 6/12Gb/s SAS+SATA RAID controller driver
.Sh SYNOPSIS
-To compile this driver into the kernel,
-place the following lines in your
-kernel configuration file:
-.Bd -ragged -offset indent
.Cd "device pci"
.Cd "device mrsas"
-.Ed
.Pp
-Alternatively, to load the driver as a
-module at boot time, place the following line in
+In
.Xr loader.conf 5 :
-.Bd -literal -offset indent
-mrsas_load="YES"
-.Ed
+.Cd mrsas_load="YES"
+.Pp
+In
+.Xr sysctl.conf 5 :
+.Cd dev.mrsas.X.disable_ocr
+.Cd dev.mrsas.X.fw_outstanding
+.Cd dev.mrsas.X.mrsas_fw_fault_check_delay
+.Cd dev.mrsas.X.mrsas_io_timeout
+.Cd hw.mrsas.X.debug_level
.Sh DESCRIPTION
The
.Nm
-driver will detect LSI's next generation (6Gb/s and 12Gb/s) PCI Express
-SAS/SATA RAID controllers.
-See the
-.Nm HARDWARE
-section for the supported devices list.
-A disk (virtual disk/physical disk) attached to the
+driver will detect Broadcom/LSI's 6Gb/s and 12Gb/s
+PCI Express SAS/SATA/NVMe RAID controllers.
+A disk
+.Pq virtual disk/physical disk
+attached to the
.Nm
driver will be visible to the user through
.Xr camcontrol 8
as
.Pa /dev/da?
device nodes.
-A simple management interface is also provided on a per-controller basis via the
+A simple management interface is also provided per-controller via the
.Pa /dev/mrsas?
device node.
.Pp
@@ -77,8 +79,7 @@ The
name is derived from the phrase "MegaRAID SAS HBA", which is
substantially different than the old "MegaRAID" Driver
.Xr mfi 4
-which does not connect targets
-to the
+which does not connect targets to the
.Xr cam 4
layer and thus requires a new driver which attaches targets to the
.Xr cam 4
@@ -91,8 +92,8 @@ but both the
.Xr mfi 4
and
.Nm
-drivers can detect and manage the LSI MegaRAID SAS 2208/2308/3008/3108 series of
-controllers.
+drivers can detect and manage the
+Broadcom/LSI MegaRAID SAS 2208/2308/3008/3108 series of controllers.
.Pp
The
.Xr device.hints 5
@@ -103,7 +104,7 @@ By default, the
.Xr mfi 4
driver will detect these controllers.
See the
-.Nm PRIORITY
+.Sx PRIORITY
section to know more about driver priority for MR-Fusion devices.
.Pp
.Nm
@@ -124,46 +125,32 @@ rather then JBOD virtual mode.
.Sh HARDWARE
The
.Nm
-driver supports the following hardware:
-.Pp
-[ Thunderbolt 6Gb/s MR controller ]
-.Bl -bullet -compact
-.It
-LSI MegaRAID SAS 9265
-.It
-LSI MegaRAID SAS 9266
-.It
-LSI MegaRAID SAS 9267
-.It
-LSI MegaRAID SAS 9270
-.It
-LSI MegaRAID SAS 9271
-.It
-LSI MegaRAID SAS 9272
-.It
-LSI MegaRAID SAS 9285
-.It
-LSI MegaRAID SAS 9286
-.It
-DELL PERC H810
-.It
-DELL PERC H710/P
-.El
+driver supports the following LSI/Broadcom SATA/SAS RAID controllers:
.Pp
-[ Invader/Fury 12Gb/s MR controller ]
-.Bl -bullet -compact
-.It
-LSI MegaRAID SAS 9380
-.It
-LSI MegaRAID SAS 9361
-.It
-LSI MegaRAID SAS 9341
-.It
-DELL PERC H830
-.It
-DELL PERC H730/P
-.It
-DELL PERC H330
+.Bl -column -compact "LSI MegaRAID SAS 9380" "Invader/Fury" "12Gb/s"
+.It Controller Ta Chip Ta Speed
+.It Broadcom SAS3916 Ta Aero Ta 12Gb/s
+.It Broadcom SAS3908 Ta Aero Ta 12Gb/s
+.It LSI MegaRAID SAS 9380 Ta Invader/Fury Ta 12Gb/s
+.It LSI MegaRAID SAS 9361 Ta Invader/Fury Ta 12Gb/s
+.It LSI MegaRAID SAS 9341 Ta Invader/Fury Ta 12Gb/s
+.It LSI MegaRAID SAS 9286 Ta Thunderbolt Ta 6Gb/s
+.It LSI MegaRAID SAS 9285 Ta Thunderbolt Ta 6Gb/s
+.It LSI MegaRAID SAS 9272 Ta Thunderbolt Ta 6Gb/s
+.It LSI MegaRAID SAS 9271 Ta Thunderbolt Ta 6Gb/s
+.It LSI MegaRAID SAS 9270 Ta Thunderbolt Ta 6Gb/s
+.It LSI MegaRAID SAS 9267 Ta Thunderbolt Ta 6Gb/s
+.It LSI MegaRAID SAS 9266 Ta Thunderbolt Ta 6Gb/s
+.It LSI MegaRAID SAS 9265 Ta Thunderbolt Ta 6Gb/s
+.It LSI SAS 3108 Ta Ta 12Gb/s
+.It LSI SAS 3008 Ta Ta 12Gb/s
+.It LSI SAS 2308 Ta Ta 6Gb/s
+.It LSI SAS 2208 Ta Ta 6Gb/s
+.It DELL PERC H830 Ta Invader/Fury Ta 12Gb/s
+.It DELL PERC H810 Ta Thunderbolt Ta 6Gb/s
+.It DELL PERC H730/P Ta Invader/Fury Ta 12Gb/s
+.It DELL PERC H710/P Ta Thunderbolt Ta 6Gb/s
+.It DELL PERC H330 Ta Invader/Fury Ta 12Gb/s
.El
.Sh CONFIGURATION
To disable Online Controller Reset(OCR) for a specific
@@ -171,9 +158,8 @@ To disable Online Controller Reset(OCR) for a specific
driver instance, set the
following tunable value in
.Xr loader.conf 5 :
-.Bd -literal -offset indent
-dev.mrsas.X.disable_ocr=1
-.Ed
+.Pp
+.Dl Va dev.mrsas.X.disable_ocr=1
.Pp
where X is the adapter number.
.Pp
@@ -181,9 +167,8 @@ To change the I/O timeout value for a specific
.Nm
driver instance, set the following tunable value in
.Xr loader.conf 5 :
-.Bd -literal -offset indent
-dev.mrsas.X.mrsas_io_timeout=NNNNNN
-.Ed
+.Pp
+.Dl Va dev.mrsas.X.mrsas_io_timeout=NNNNNN
.Pp
where NNNNNN is the timeout value in milli-seconds.
.Pp
@@ -191,9 +176,8 @@ To change the firmware fault check timer value for a specific
.Nm
driver instance, set the following tunable value in
.Xr loader.conf 5 :
-.Bd -literal -offset indent
-dev.mrsas.X.mrsas_fw_fault_check_delay=NN
-.Ed
+.Pp
+.Dl Va dev.mrsas.X.mrsas_fw_fault_check_delay=NN
.Pp
where NN is the fault check delay value in seconds.
.Pp
@@ -248,7 +232,8 @@ or
subsystem for selection of MR-Fusion cards.
With the above design in place, the
.Xr mfi 4
-driver will attach to a MR-Fusion card given that it has a higher priority than
+driver will attach to a MR-Fusion card
+given that it has a higher priority than
.Nm .
.Pp
Using
@@ -267,45 +252,48 @@ At boot time, the
.Xr mfi 4
driver will get priority to detect MR-Fusion controllers by default.
Before
-changing this default driver selection policy, LSI advises users to understand
-how the driver selection policy works.
+changing this default driver selection policy,
+LSI advises users to understand how the driver selection policy works.
LSI's policy is to provide priority to
the
.Xr mfi 4
-driver to detect MR-Fusion cards, but allow for the ability to choose the
+driver to detect MR-Fusion cards,
+but allow for the ability to choose the
.Nm
driver to detect MR-Fusion cards.
.Pp
-LSI recommends setting hw.mfi.mrsas_enable="0" for customers who are using the
-older
+LSI recommends setting
+.Va hw.mfi.mrsas_enable="0"
+for customers who are using the older
.Xr mfi 4
driver and do not want to switch to
.Nm .
-For those customers who are using a MR-Fusion controller for the first time, LSI
-recommends using the
+For those using a MR-Fusion controller for the first time,
+LSI recommends using the
.Nm
-driver and setting hw.mfi.mrsas_enable="1".
+driver and setting
+.Va hw.mfi.mrsas_enable="1".
.Pp
-Changing the default behavior is well tested under most conditions, but
-unexpected behavior may pop up if more complex and unrealistic operations are
-executed by switching between the
+Changing the default behavior is well tested under most conditions,
+but unexpected behavior may pop up
+if more complex and unrealistic operations are executed
+by switching between the
.Xr mfi 4
and
.Nm
drivers for MR-Fusion.
Switching drivers is designed to happen only one time.
-Although multiple
-switching is possible, it is not recommended.
+Although multiple switching is possible, it is not recommended.
The user should decide from
-.Nm Start of Day
+.Sy boot
which driver they want to use for the MR-Fusion card.
.Pp
The user may see different device names when switching from
.Xr mfi 4
to
.Nm .
-This behavior is
-.Nm Functions As Designed
+This behavior
+.Sy works as intended
and the user needs to change the
.Xr fstab 5
entry manually if they are doing any experiments with
@@ -314,7 +302,7 @@ and
.Nm
interoperability.
.Sh FILES
-.Bl -tag -width ".Pa /dev/mrsas?" -compact
+.Bl -tag -width "/dev/mrsas?" -compact
.It Pa /dev/da?
array/logical disk interface
.It Pa /dev/mrsas?
@@ -337,7 +325,8 @@ driver first appeared in
is the old
.Fx
driver which started with support for Gen-1 Controllers and
-was extended to support up to MR-Fusion (Device ID = 0x005B, 0x005D, 0x005F).
+was extended to support up to MR-Fusion
+.Pq Device ID = 0x005B, 0x005D, 0x005F .
.Ed
.Bd -ragged
.Cd "mrsas Driver:"
@@ -348,12 +337,12 @@ The SAS+SATA RAID controller with device id 0x005b is referred to as
the Thunderbolt controller throughout this man page.
.Ed
.Bd -ragged
-.Nm cam aware HBA drivers:
+.Sy cam aware HBA drivers:
.Fx
has a
.Xr cam 4
-layer which attaches storage devices and provides a common access mechanism to
-storage controllers and attached devices.
+layer which attaches storage devices and provides a
+common access mechanism to storage controllers and attached devices.
The
.Nm
driver is
@@ -368,13 +357,13 @@ driver does not understand the
.Xr cam 4
layer and it directly associates storage disks to the block layer.
.Pp
-.Nm Thunderbolt Controller:
+.Sy Thunderbolt Controller:
This is the 6Gb/s MegaRAID HBA card which has device id 0x005B.
.Pp
-.Nm Invader Controller:
+.Sy Invader Controller:
This is 12Gb/s MegaRAID HBA card which has device id 0x005D.
.Pp
-.Nm Fury Controller:
+.Sy Fury Controller:
This is the 12Gb/s MegaRAID HBA card which has device id 0x005F.
.Ed
.Sh AUTHORS
@@ -382,12 +371,7 @@ The
.Nm
driver and this manual page were written by
.An Kashyap Desai Aq Mt Kashyap.Desai@lsi.com .
-.Sh TODO
-The driver does not support alias for device name (it is required when the user
-switches between two drivers and does not want to edit
-.Pa /etc/fstab
-manually).
-.Pp
+.Sh CAVEATS
The
.Nm
driver exposes devices as
@@ -398,8 +382,7 @@ exposes devices as
.Pa /dev/mfid? .
.Pp
.Nm
-does not support the Linux Emulator interface.
-.Pp
-.Nm
-will not work with
-.Xr mfiutil 8 .
+does not support the Linux Emulator Interface,
+.Xr mfiutil 8 ,
+or device name aliases for switching drivers without editing
+.Xr fstab 5 .
diff --git a/share/man/man4/nda.4 b/share/man/man4/nda.4
index c4fa157af851..e45b2905462e 100644
--- a/share/man/man4/nda.4
+++ b/share/man/man4/nda.4
@@ -1,4 +1,6 @@
.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
.\" Copyright (c) 2017 Netflix, Inc.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -23,7 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd June 6, 2020
+.Dd October 2, 2025
.Dt NDA 4
.Os
.Sh NAME
@@ -39,6 +41,14 @@ driver provides support for direct access devices, implementing the
.Tn NVMe
command protocol, that are attached to the system through a host adapter
supported by the CAM subsystem.
+.Sh HARDWARE
+The
+.Nm
+driver supports NVMe
+.Pq Non-Volatile Memory Express
+storage devices connected via PCIe or over NVMF
+.Pq NVMe over Fabric
+via the CAM subsystem.
.Sh SYSCTL VARIABLES
The following variables are available as both
.Xr sysctl 8
diff --git a/share/man/man4/pci.4 b/share/man/man4/pci.4
index 91fbb557f644..b99747969035 100644
--- a/share/man/man4/pci.4
+++ b/share/man/man4/pci.4
@@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd April 2, 2025
+.Dd August 31, 2025
.Dt PCI 4
.Os
.Sh NAME
@@ -235,6 +235,17 @@ revision ID.
Driver name.
.It pd_unit
Driver unit number.
+.It pd_numa_domain
+Driver NUMA domain.
+.It pc_reported_len
+Length of the valid portion of the encompassing
+.Vt pci_conf
+structure.
+This should always be equivalent to the offset of the
+.Va pc_spare
+member.
+.It pc_spare
+Reserved for future use.
.El
.It offset
The offset is passed in by the user to tell the kernel where it should
diff --git a/share/man/man4/pfsync.4 b/share/man/man4/pfsync.4
index cc9c350ea875..c12bad74831f 100644
--- a/share/man/man4/pfsync.4
+++ b/share/man/man4/pfsync.4
@@ -162,6 +162,8 @@ FreeBSD releases 13.2 and older.
Compatibility with FreeBSD 13.1 has been verified.
.It Cm 1400
FreeBSD release 14.0.
+.It Cm 1500
+FreeBSD release 15.0.
.El
.Sh SYSCTL VARIABLES
The following variables can be entered at the
diff --git a/share/man/man4/puc.4 b/share/man/man4/puc.4
index a29376d3f2d5..624c215027af 100644
--- a/share/man/man4/puc.4
+++ b/share/man/man4/puc.4
@@ -257,6 +257,8 @@ Sunix SER5xxxx 8/4/2 port serial
.It
Syba Tech Ltd PCI-4S2P-550-ECP
.It
+Systembase SB16C1054/8 4/8 port serial
+.It
Titan PCI-800H/PCI-200H
.It
VScom:
diff --git a/share/man/man4/random.4 b/share/man/man4/random.4
index 840bc0c3234b..04d46e4d32aa 100644
--- a/share/man/man4/random.4
+++ b/share/man/man4/random.4
@@ -21,7 +21,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd April 19, 2019
+.Dd August 28, 2025
.Dt RANDOM 4
.Os
.Sh NAME
@@ -132,6 +132,17 @@ are listed in square brackets.
See
.Xr random_harvest 9
for more on the harvesting of entropy.
+.Pp
+The
+.Va kern.random.nist_healthtest_enabled
+tunable can be used to enable the entropy source health tests outlined
+in section 4 of NIST Special Publication 800-90B.
+When enabled, all entropy sources will be subject to the repetition
+count and adaptive proportion tests described in that document.
+If one of the tests fails, the source will be disabled, i.e., all
+subsequent entropy samples from that source will be discarded.
+The implementation performs startup testing, during which entropy
+sources are discarded.
.Sh FILES
.Bl -tag -width ".Pa /dev/urandom"
.It Pa /dev/random
diff --git a/share/man/man4/sdhci.4 b/share/man/man4/sdhci.4
index 4a4e02539acd..1608d9c2fe1a 100644
--- a/share/man/man4/sdhci.4
+++ b/share/man/man4/sdhci.4
@@ -1,4 +1,6 @@
.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
.\" Copyright (c) 2008 Alexander Motin <mav@FreeBSD.org>
.\" All rights reserved.
.\"
@@ -22,7 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd August 25, 2020
+.Dd October 3, 2025
.Dt SDHCI 4
.Os
.Sh NAME
@@ -56,21 +58,28 @@ detaches it on card removing.
.Sh HARDWARE
The
.Nm
-driver supports different specification compatible chips.
-The following chips have been verified to work:
+driver supports the SD Host Controller Specification.
+When attaching via the PCI bus,
+the controller is automatically configured.
+Many SoC chips provide a SDHCI controller directly mapped to I/O memory.
+For those, the controller may be configured using
+.Xr fdt 4
+or
+.Xr acpi 4
+methods, supplied by your board's vendor.
.Pp
-.Bl -bullet -compact
-.It
-ENE CB712
-.It
-ENE CB714
-.It
-RICOH R5C822
-.It
-RICOH R5CE823
-.It
-TI PCIXX21/XX11/XX12
-.El
+Unlike most other drivers that support a generic standard,
+.Nm
+requires a large number of quirks to cope with hardware bugs,
+proprietary registers and poorly specified power management.
+While many chipsets from
+Intel, Xilinx, Rockchip, Frescale, Ricoh, and TI have these entries,
+suboptimal performance may result when using some controllers.
+Quirks and custom configuration are most often required
+when the device is configured via
+.Xr fdt 4
+or
+.Xr acpi 4 .
.Sh SEE ALSO
.Xr mmc 4 ,
.Xr mmcsd 4
@@ -79,8 +88,3 @@ TI PCIXX21/XX11/XX12
.Re
.Sh AUTHORS
.An Alexander Motin Aq Mt mav@FreeBSD.org
-.Sh BUGS
-Many of existing SD controller chips have some nonstandard requirements,
-proprietary registers and hardware bugs, requiring additional handling.
-ENE chips are handled to work fine, while some revisions of RICOH and TI
-controllers still do not see cards without some additional initialization.
diff --git a/share/man/man4/syncache.4 b/share/man/man4/syncache.4
index e92502fd15ff..f83e9b083e45 100644
--- a/share/man/man4/syncache.4
+++ b/share/man/man4/syncache.4
@@ -10,7 +10,7 @@
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\"
-.Dd April 12, 2021
+.Dd August 30, 2025
.Dt SYNCACHE 4
.Os
.Sh NAME
@@ -39,6 +39,8 @@ MIBs for controlling TCP SYN caching
.Nm sysctl Cm net.inet.tcp.syncache.count
.It
.Nm sysctl Cm net.inet.tcp.syncache.see_other
+.It
+.Nm sysctl Cm net.inet.tcp.syncache.rst_on_sock_fail
.El
.Sh DESCRIPTION
The
@@ -107,6 +109,18 @@ and run only with
set
.Va net.inet.tcp.syncookies_only
to 1.
+To use
+.Nm syncookies
+to handle bucket overflows in the
+.Nm syncache
+set
+.Va net.inet.tcp.syncookies
+to 1.
+The default value for
+.Va net.inet.tcp.syncookies_only
+is 0 and the default value for
+.Va net.inet.tcp.syncookies
+is 1.
.Pp
The
.Nm
@@ -169,6 +183,9 @@ However, extra
.Xr ucred 9
referencing is required on every incoming SYN packet processed.
The default is off.
+.It Va rst_on_sock_fail
+Send a TCP RST segment if the socket allocation fails.
+The default is on.
.El
.Pp
Statistics on the performance of the
@@ -206,8 +223,16 @@ Entries dropped due to ICMP unreachable messages.
Failures to allocate new
.Nm
entry.
+.It Li "cookies sent"
+SYN cookies sent in SYN ACK segments.
.It Li "cookies received"
-Connections created from segment containing ACK.
+ACK segments with valid syncookies which resulted in TCP connection
+establishment.
+.It Li "spurious cookies rejected"
+Received ACKs, for which the syncache lookup failed and also no syncookie was
+recently sent.
+.It Li "failed cookies rejected"
+Received ACKs for which the syncookie validation failed.
.El
.Sh SEE ALSO
.Xr netstat 1 ,
diff --git a/share/man/man4/tcp.4 b/share/man/man4/tcp.4
index fcfda42908d8..3c9f4ff83f3d 100644
--- a/share/man/man4/tcp.4
+++ b/share/man/man4/tcp.4
@@ -31,7 +31,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd June 27, 2025
+.Dd September 5, 2025
.Dt TCP 4
.Os
.Sh NAME
@@ -940,9 +940,6 @@ maximum segment size.
This helps throughput in general, but
particularly affects short transfers and high-bandwidth large
propagation-delay connections.
-.It Va rfc6675_pipe
-Deprecated and superseded by
-.Va sack.revised
.It Va sack.enable
Enable support for RFC 2018, TCP Selective Acknowledgment option,
which allows the receiver to inform the sender about all successfully
@@ -974,6 +971,11 @@ recovery, the trailing segment is immediately resent, rather than waiting
for a Retransmission timeout.
Finally, SACK loss recovery is also engaged, once two segments plus one byte are
SACKed - even if no traditional duplicate ACKs were observed.
+.Va sack.revised
+is deprecated and will be removed in
+.Fx 16 .
+.Va sack.enable
+will always follow RFC6675.
.It Va sendbuf_auto
Enable automatic send buffer sizing.
.It Va sendbuf_auto_lowat
diff --git a/share/man/man4/thunderbolt.4 b/share/man/man4/thunderbolt.4
new file mode 100644
index 000000000000..fd7cb1f3f338
--- /dev/null
+++ b/share/man/man4/thunderbolt.4
@@ -0,0 +1,22 @@
+.\"
+.\" Copyright (c) 2025 Alexander Ziaee
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.Dd October 2, 2025
+.Dt THUNDERBOLT 4
+.Os
+.Sh NAME
+.Nm thunderbolt
+.Nd USB4 controller driver
+.Sh SYNOPSIS
+.Cd device thunderbolt
+.Sh HARDWARE
+The
+.Nm
+driver supports Thunderbolt 3 and USB4 controllers.
+.Sh HISTORY
+The
+.Nm
+driver appeared in
+.Fx 15.0 .
diff --git a/share/man/man4/udbc.4 b/share/man/man4/udbc.4
new file mode 100644
index 000000000000..c8fa02ec18f1
--- /dev/null
+++ b/share/man/man4/udbc.4
@@ -0,0 +1,132 @@
+.\"
+.\" Copyright (c) 2025 The FreeBSD Foundation
+.\"
+.\" This documentation was written by Tom Jones <thj@freebsd.org> under
+.\" sponsorship from the FreeBSD Foundation.
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\"
+.Dd September 3, 2025
+.Dt UDBC 4
+.Os
+.Sh NAME
+.Nm udbc
+.Nd USB Debug Class device driver
+.Sh SYNOPSIS
+.Cd "device usb"
+.Cd "device ucom"
+.Cd "device udbc"
+.Pp
+In
+.Xr rc.conf 5 :
+.Cd kld_list="udbc"
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for USB Debug Class devices whose
+interface class is Diagnostic Class and the subclass is DbC.GP.
+.Pp
+The USB Debug Class is defined in the USB 3.1 Device Class
+Specification for Debug Devices.
+This is designed to provide a general-purpose communication channel
+for debugging.
+It has also been widely implemented in USB xHCs
+.Pq USB eXtensible Host Controllers ,
+which can be found on many commodity computers,
+as an optional feature.
+Once this feature is enabled on a USB xHC, one of the USB ports will
+behave as a USB Debug Class device,
+not a host port,
+when a USB debug cable is connected.
+The supported class in USB xHCs is typically DbC.GP,
+while the specification defines several types of Debug Class devices.
+The DbC.GP uses IN and OUT endpoint pairs and realizes a single
+bidirectional serial communication channel.
+On most systems,
+including
+.Fx ,
+the DbC.GP is seen as a simple serial device.
+.Pp
+Most systems with USB xHC can be configured to provide DbC.GP access.
+The
+.Nm
+is a driver that connects to DbC.GP-supported devices,
+offering
+.Xr tty 4
+devices to connect to them via the
+.Xr ucom 4
+device driver.
+.Sh HARDWARE CONFIGURATION
+A native DbC.GP device can be attached using the
+.Nm
+driver in a straightforward way.
+.Pp
+A USB xHC DbC.GP device on a target system needs a special hardware
+configuration because all of the ports are supposed to be a USB Host.
+There is one method to expose DbC.GP is to use a USB 3.1 A-to-A cable
+.Pq section 5.5.2 in USB 3.1 Legacy Cable and Connector Specification .
+When this cable is connected to a USB 3.1 port on the target system,
+the DbC-enabled USB xHC automatically switches the port as a USB Device.
+The
+.Nm
+driver can find a DbC.GP device on that port.
+.Pp
+Note that a USB xHC with USB 3.2 support
+.Pq USB Type-C connectors
+is not compatible with the USB 3.1 A-to-A cable.
+Connecting a USB 3.2 C-to-C cable or A-to-C cable does not automatically work,
+either,
+because it needs role configuration of the port, which is not supported on
+.Fx
+yet.
+.Sh FILES
+.Bl -tag -width "/dev/ttyU*.*.init" -compact
+.It Pa /dev/ttyU*.*
+for callin ports
+.It Pa /dev/ttyU*.*.init
+.It Pa /dev/ttyU*.*.lock
+corresponding callin initial-state and lock-state devices
+.Pp
+.It Pa /dev/cuaU*.*
+for callout ports
+.It Pa /dev/cuaU*.*.init
+.It Pa /dev/cuaU*.*.lock
+corresponding callout initial-state and lock-state devices
+.El
+.Sh SEE ALSO
+.Xr tty 4 ,
+.Xr ucom 4 ,
+.Xr usb 4 ,
+.Xr xhci 4
+.Sh STANDARDS
+.Rs
+.%T eXtensible Host Controller Interface for Universal Serial Bus (XHCI)
+.%U https://www.intel.com/content/dam/www/public/us/en/documents/technical-specifications/extensible-host-controler-interface-usb-xhci.pdf
+.Re
+.Rs
+.%T USB 3.1 Device Class Specification for Debug Devices
+.%U https://www.usb.org/sites/default/files/documents/usb_debug_class_rev_1_0_final_0.pdf
+.Re
+.Rs
+.%T USB 3.1 Legacy Cable and Connector Specification
+.%U https://www.usb.org/document-library/usb-31-legacy-cable-and-connector-revision-10
+.Re
+.Sh HISTORY
+The
+.Nm
+driver first appeared
+.Fx
+15.0.
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+driver was written by
+.An Hiroki Sato Aq Mt hrs@FreeBSD.org .
+.Sh BUGS
+According to the XHCI specification the host side of USB Debug should work with
+any USB 3.0 port,
+whether connected directly to a controller or with a hub in between.
+Testing on some controllers has encountered issues when using a hub rather than
+a directly connected port on the controller.
diff --git a/share/man/man4/umass.4 b/share/man/man4/umass.4
index 03e8b6ff6ef1..db4e6f0890f2 100644
--- a/share/man/man4/umass.4
+++ b/share/man/man4/umass.4
@@ -1,3 +1,6 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
.\" Copyright (c) 1999
.\" Nick Hibma <n_hibma@FreeBSD.org>. All rights reserved.
.\"
@@ -22,7 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd January 27, 2020
+.Dd October 2, 2025
.Dt UMASS 4
.Os
.Sh NAME
@@ -71,6 +74,19 @@ requires
and
.Xr scbus 4
to be included in the kernel.
+.Sh HARDWARE
+The
+.Nm
+driver supports USB Mass Storage devices such as:
+.Pp
+.Bl -bullet -compact
+.It
+USB thumb drives
+.It
+USB hard disk drives
+.It
+USB floppy drives
+.El
.Sh EXAMPLES
.Bd -literal -offset indent
device umass
@@ -92,7 +108,8 @@ camcontrol rescan 0:0:3
Rescan all slots on a multi-slot flash reader, where the slots map to separate
LUNs on a single SCSI ID.
Typically only the first slot will be enabled at boot time.
-This assumes that the flash reader is the first SCSI bus in the system and has 4 slots.
+This assumes that
+the flash reader is the first SCSI bus in the system and has 4 slots.
.Sh SEE ALSO
.Xr cfumass 4 ,
.Xr ehci 4 ,
@@ -101,7 +118,11 @@ This assumes that the flash reader is the first SCSI bus in the system and has 4
.Xr usb 4 ,
.Xr xhci 4 ,
.Xr camcontrol 8
-.\".Sh HISTORY
+.Sh HISTORY
+The
+.Nm
+driver appeared in
+.Fx 4.3 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/umb.4 b/share/man/man4/umb.4
index 311a50faf8e7..37c86b3074f5 100644
--- a/share/man/man4/umb.4
+++ b/share/man/man4/umb.4
@@ -17,14 +17,13 @@
.\"
.\" $NetBSD: umb.4,v 1.4 2019/08/30 09:22:17 wiz Exp $
.\"
-.Dd August 4, 2025
+.Dd September 3, 2025
.Dt UMB 4
.Os
.Sh NAME
.Nm umb
.Nd USB Mobile Broadband Interface Model (MBIM) cellular modem driver
.Sh SYNOPSIS
-.Cd "device netmap"
.Cd "device usb"
.Cd "device umb"
.Pp
diff --git a/share/man/man4/usbhid.4 b/share/man/man4/usbhid.4
index e5ba370cd025..0b2e7230e3f4 100644
--- a/share/man/man4/usbhid.4
+++ b/share/man/man4/usbhid.4
@@ -21,7 +21,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd July 30, 2025
+.Dd October 2, 2025
.Dt USBHID 4
.Os
.Sh NAME
@@ -67,9 +67,13 @@ Default is 1.
Debug output level, where 0 is debugging disabled and larger values increase
debug message verbosity.
Default is 0.
+Debug messages are printed on the system console and can be viewed using
+.Xr dmesg 8 .
.El
.Sh SEE ALSO
.Xr ehci 4 ,
+.Xr hkbd 4 ,
+.Xr hms 4 ,
.Xr ohci 4 ,
.Xr uhci 4 ,
.Xr usb 4 ,
@@ -80,6 +84,8 @@ The
.Nm
driver first appeared in
.Fx 13.0 .
+It was enabled by default in
+.Fx 15.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/vtnet.4 b/share/man/man4/vtnet.4
index b6f10ddd87cb..fd41b36882a6 100644
--- a/share/man/man4/vtnet.4
+++ b/share/man/man4/vtnet.4
@@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd August 21, 2025
+.Dd September 30, 2025
.Dt VTNET 4
.Os
.Sh NAME
@@ -54,6 +54,20 @@ TCP segmentation offload (TSO), TCP large receive offload (LRO),
hardware VLAN tag stripping/insertion features, a multicast hash filter,
as well as Jumbo Frames (up to 9216 bytes), which can be
configured via the interface MTU setting.
+.Pp
+Two flavors of TCP LRO are supported:
+Hardware TCP LRO, which is performed by the host providing TCP segments larger
+than the MTU to the guest, and Software TCP LRO, which is performed by the
+network stack of the guest processing TCP segments in an optimized way.
+Only one flavour of TCP LRO should be used.
+Since hardware TCP LRO can have bad interactions with IP forwarding and
+software TCP LRO mitigates several drawbacks of hardware TCP LRO, the default
+setting is to disable hardware TCP LRO.
+See the loader tunable
+.Va hw.vtnet. Ns Ar X Ns Va .lro_disable .
+.Pp
+TCP/UDP receive checksum offload cannot be configured independently for IPv4
+and IPv6.
Selecting an MTU larger than 1500 bytes with the
.Xr ifconfig 8
utility configures the adapter to receive and transmit Jumbo Frames.
@@ -84,14 +98,16 @@ field of the structure
.Vt struct virtio_net_hdr .
It also marks the checksum as being correct in the mbuf packet header.
The default value is 0.
+This tunable is deprecated and will be removed in
+.Fx 16 .
.It Va hw.vtnet.tso_disable
.It Va hw.vtnet. Ns Ar X Ns Va .tso_disable
This tunable disables TCP segmentation offloading.
The default value is 0.
.It Va hw.vtnet.lro_disable
.It Va hw.vtnet. Ns Ar X Ns Va .lro_disable
-This tunable disables large receive offload.
-The default value is 0.
+This tunable disables hardware TCP LRO.
+The default value is 1.
.It Va hw.vtnet.mq_disable
.It Va hw.vtnet. Ns Ar X Ns Va .mq_disable
This tunable disables multiqueue.
@@ -115,11 +131,11 @@ This tunable sets the number of RX segments processed in one pass.
The default value is 1024.
.It Va hw.vtnet.lro_entry_count
.It Va hw.vtnet. Ns Ar X Ns Va .lro_entry_count
-This tunable sets the software LRO entry count.
+This tunable sets the software TCP LRO entry count.
The default value is 128, the minimum value is 8.
.It Va hw.vtnet.lro_mbufq_depth
.It Va hw.vtnet. Ns Ar X Ns Va .lro_mbufq_depth
-This tunable sets the depth of the software LRO mbuf queue.
+This tunable sets the depth of the software TCP LRO mbuf queue.
The default value is 0.
.It Va hw.vtnet.altq_disable
This tunable disables ALTQ support, allowing the use of multiqueue instead.
@@ -127,7 +143,6 @@ This option applies to all interfaces.
The default value is 0.
.El
.Sh TRANSMIT QUEUE STATISTICS
-.Bl -tag -width "xxxxxx"
For each transmit queue of each interface the following read-only statistics
are provided:
.Bl -tag -width "xxxxxx"
@@ -154,7 +169,14 @@ The number of times the receive interrupt handler was rescheduled.
.It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .host_lro
The number of times TCP large receive offload was performed.
.It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .csum_failed
-Currently not used.
+The number of times a packet with a request for receive or transmit checksum
+offloading was received and this request failed.
+The different reasons for the failure are counted by
+.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_inaccessible_ipproto ,
+.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ipproto ,
+.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ethtype ,
+and
+.Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_offset .
.It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .csum
The number of times receive checksum offloading for UDP or TCP was performed.
.It Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .ierrors
@@ -214,18 +236,21 @@ over all receive queues of the interface.
The sum of
.Va dev.vtnet. Ns Ar X Ns Va .rxq Ns Ar Y Ns Va .csum_failed
over all receive queues of the interface.
-.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_proto
-Currently unused.
+.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_inaccessible_ipproto
+The number of times a packet with a request for receive or transmit checksum
+offloading was received where the IP protocol was not accessible.
.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_offset
-Currently unused.
-.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ipproto
-Currently unused.
-.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ethtype
The number of times fixing the checksum required by
.Va hw.vtnet.fixup_needs_csum
or
.Va hw.vtnet. Ns Ar X Ns Va .fixup_needs_csum
-was attempted for a packet with an EtherType other than IPv4 or IPv6.
+was attempted for a packet where the csum is not located in the first mbuf.
+.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ipproto
+The number of times a packet with a request for receive or transmit checksum
+offloading was received where the IP protocol was neither TCP nor UDP.
+.It Va dev.vtnet. Ns Ar X Ns Va .rx_csum_bad_ethtype
+The number of times a packet with a request for receive or transmit checksum
+offloading was received where the EtherType was neither IPv4 nor IPv6.
.It Va dev.vtnet. Ns Ar X Ns Va .rx_mergeable_failed
The number of times receiving a mergable buffer failed.
.It Va dev.vtnet. Ns Ar X Ns Va .rx_enq_replacement_failed
diff --git a/share/man/man4/watchdog.4 b/share/man/man4/watchdog.4
index b74640de8469..fc2d600328dd 100644
--- a/share/man/man4/watchdog.4
+++ b/share/man/man4/watchdog.4
@@ -41,24 +41,22 @@ The device
supports several optional
.Xr ioctl 2
calls for configuration, and
-responds to a single operational
+responds to a set of operational
.Xr ioctl 2
-call,
-.Dv WDIOCPATPAT .
-It takes a single argument which represents a timeout value specified as a
-power of two nanoseconds, or-ed with a flag selecting active or passive control
-of the watchdog.
+calls:
+.Bl -tag -width "WDIOC_CONTROL int "
+.It Dv WDIOCPATPAT
+Pat the watchdog.
+.It Dv WDIOC_CONTROL
+Enable, disable, or reset the watchdog.
+.El
.Pp
-.Dv WD_ACTIVE
-indicates that the
-.Nm
-will be kept from timing out from userland, for instance by the
-.Xr watchdogd 8
-daemon.
-.Dv WD_PASSIVE
-indicates that the
-.Nm
-will be kept from timing out from the kernel.
+The
+.Dv WDIOCPATPAT
+.Xr ioctl 2
+call takes a single argument which represents a timeout value specified as a
+.Vt sbintime_t
+of the timeout period for the watchdog.
.Pp
The
.Dv WDIOCPATPAT
@@ -77,27 +75,43 @@ none of
implementations support the timeout length, all watchdogs are disabled and must
be explicitly re-enabled.
.Pp
-To disable the watchdogs pass
-.Dv WD_TO_NEVER .
+To disable the watchdogs use the
+.Dv WDIOC_CONTROL
+.Xr ioctl 2
+call with the
+.Dv WD_CTRL_DISABLE
+flag.
If disarming the watchdog(s) failed an error is returned.
The watchdog might
still be armed!
+To reenable the watchdogs use the
+.Dv WDIOC_CONTROL
+.Xr ioctl 2
+call with the
+.Dv WD_CTRL_ENABLE
+flag.
+Another way to pat the watchdog is with the
+.Dv WDIOC_CONTROL
+.Xr ioctl 2
+call passing the
+.Dv WDIOC_CTRL_RESET
+flag.
.Pp
The optional configuration
.Xr ioctl 2
commands are listed here, along with the type of the parameter used.
Examples of their use can be found in
.Xr watchdogd 8 .
-.Bl -tag -width "WDIOC_SETSOFTTIMEOUTACT int "
-.It Dv WDIOC_SETTIMEOUT Fa int
+.Bl -tag -width "WDIOC_GETPRETTIMEOUT sbintime_t"
+.It Dv WDIOC_SETTIMEOUT Fa sbintime_t
set/reset the timer
-.It Dv WDIOC_GETTIMEOUT Fa int
+.It Dv WDIOC_GETTIMEOUT Fa sbintime_t
get total timeout
-.It Dv WDIOC_GETTIMELEFT Fa int
+.It Dv WDIOC_GETTIMELEFT Fa sbintime_t
get time left
-.It Dv WDIOC_GETPRETIMEOUT Fa int
+.It Dv WDIOC_GETPRETIMEOUT Fa sbintime_t
get the pre-timeout
-.It Dv WDIOC_SETPRETIMEOUT Fa int
+.It Dv WDIOC_SETPRETIMEOUT Fa sbintime_t
set the pre-timeout
.It Dv WDIOC_SETPRETIMEOUTACT Fa int
Set the action when a pre-timeout occurs (see