freebsd-dev/sys
Warner Losh 577f9aa266 cam_periph: Add ability to wire units to a serial number
For scsi, ata and nvme, at least, we read a serial number from the
device (if the device supports it, some scsi drives do not) and record
it during the *_xpt probe device state machine before it posts the
AC_FOUND_DEVICE async event. For mmc, no serial number is ever
retrieved, so it's always NULL. Add the ability to match this serial
number during device wiring.

This mechanism is competely optional, and often times using a label
and/or some other attribute of the device is easier. However, other
times wiring a unit to a serial number simplifies management as most
monitoring tools require the *daX device and having it stable from boot
to boot helps with data continuity. It can be especially helpful for
nvme where no other means exists to reliably tie a ndaX device to an
underlying nvme drive and namespace.

A similar mechanism exists in Linux to mange device unit numbers with
udev.

Sponsored by:		Netflix
Differential Revision:	https://reviews.freebsd.org/D32683
2021-11-05 08:56:33 -06:00
..
amd64 amd64: Deduplicate routines for expanding KASAN/KMSAN shadow maps 2021-11-03 12:36:02 -04:00
arm ipq4018: add qcom-gcc-ipq4018 and dependencies into the build 2021-11-04 09:02:43 -07:00
arm64 sched: separate out schedinit_ap() 2021-11-03 15:54:59 -05:00
bsm Add fspacectl(2), vn_deallocate(9) and VOP_DEALLOCATE(9). 2021-08-05 23:20:42 +08:00
cam cam_periph: Add ability to wire units to a serial number 2021-11-05 08:56:33 -06:00
cddl Allow ddb and dtrace use the DMAP region on arm64 2021-10-01 11:27:33 +01:00
compat linprocfs: Fix formatting of Uid and Gid lines 2021-11-03 08:40:55 +00:00
conf kasan: Disable validation of function parameters passed by value 2021-11-03 12:36:02 -04:00
contrib Merge commit 'ce929fe84f9c453263af379f3b255ff8eca01d48' 2021-10-29 19:18:03 +02:00
crypto crypto: Support Chacha20-Poly1305 with a nonce size of 8 bytes. 2021-10-06 14:08:49 -07:00
ddb Create sys/reg.h for the common code previously in machine/reg.h 2021-08-30 12:50:53 +01:00
dev sdhci_fsl_fdt: Provide more accurate clk calculation 2021-11-05 10:18:57 +01:00
dts ipq4018: add a device tree file for the ASUS rt-ac58u router 2021-10-18 19:18:46 +00:00
fs nfscl: Fix NFSv4.1/4.2 pnfs mounts using nconnect 2021-11-04 17:06:34 -07:00
gdb
geom gjournal(8): Fix a typo in a source code comment 2021-11-03 17:14:00 +01:00
gnu
i386 sysbeep: Adjust interface to take a duration as a sbt 2021-11-03 16:03:51 -06:00
isa
kern Factor out flags preserved during mbuf demote into a separate define. 2021-11-04 18:53:49 +01:00
kgssapi
libkern libkern: remove bcopy 2021-08-24 11:24:07 +00:00
mips sched: separate out schedinit_ap() 2021-11-03 15:54:59 -05:00
modules linux: mv sys/i386/linux/linux_ptrace{,_machdep}.c 2021-11-03 08:50:17 +00:00
net pf: Introduce ridentifier 2021-11-05 09:39:56 +01:00
net80211 net80211: add a driver-private pointer to struct ieee80211_node 2021-10-31 19:08:28 +00:00
netgraph ng_pptpgre(4): Fix a typo in a source code comment 2021-11-03 17:15:59 +01:00
netinet Use layer five checksum flags in the mbuf packet header to pass on crypto state. 2021-11-04 18:52:06 +01:00
netinet6 blackhole(4): disable for locally originated TCP/UDP packets 2021-11-03 13:02:44 -07:00
netipsec ipsec: add a lock encompassing SPI allocation 2021-11-03 19:51:40 +00:00
netpfil pf: Introduce ridentifier 2021-11-05 09:39:56 +01:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed socket: De-duplicate SBLOCKWAIT() definitions 2021-09-14 09:01:32 -04:00
opencrypto Remove unused ocf_operation structure from stack. 2021-11-04 18:52:06 +01:00
powerpc sched: separate out schedinit_ap() 2021-11-03 15:54:59 -05:00
riscv sched: separate out schedinit_ap() 2021-11-03 15:54:59 -05:00
rpc rpc: Convert an SOLISTENING check to an assertion 2021-09-17 14:19:05 -04:00
security Add fspacectl(2), vn_deallocate(9) and VOP_DEALLOCATE(9). 2021-08-05 23:20:42 +08:00
sys Factor out flags preserved during mbuf demote into a separate define. 2021-11-04 18:53:49 +01:00
teken
tests routing: add IPv6 fib validation procedure. 2021-08-16 23:04:01 +00:00
tools ipq4018: add TCSR definitions from Linux. 2021-10-18 19:18:01 +00:00
ufs ufs: remove write-only variables 2021-10-21 21:40:46 +03:00
vm Fix a common typo in syctl descriptions 2021-11-03 20:49:24 +01:00
x86 sched: separate out schedinit_ap() 2021-11-03 15:54:59 -05:00
xdr
xen xen: introduce xen_pv_disks_disabled() 2021-07-28 17:27:04 +02:00
Makefile