aboutsummaryrefslogtreecommitdiff
path: root/share/man
diff options
context:
space:
mode:
Diffstat (limited to 'share/man')
-rw-r--r--share/man/Makefile10
-rw-r--r--share/man/man1/Makefile2
-rw-r--r--share/man/man1/Makefile.depend1
-rw-r--r--share/man/man1/builtin.12
-rw-r--r--share/man/man1/intro.143
-rw-r--r--share/man/man3/ATOMIC_VAR_INIT.32
-rw-r--r--share/man/man3/CMSG_DATA.34
-rw-r--r--share/man/man3/Makefile11
-rw-r--r--share/man/man3/Makefile.depend1
-rw-r--r--share/man/man3/Q_FRAWMASK.32
-rw-r--r--share/man/man3/Q_IFRAWMASK.32
-rw-r--r--share/man/man3/Q_INI.32
-rw-r--r--share/man/man3/Q_IRAWMASK.32
-rw-r--r--share/man/man3/Q_QABS.32
-rw-r--r--share/man/man3/Q_QADDI.32
-rw-r--r--share/man/man3/Q_QADDQ.32
-rw-r--r--share/man/man3/Q_SIGNED.32
-rw-r--r--share/man/man3/Q_SIGNSHFT.32
-rw-r--r--share/man/man3/arb.34
-rw-r--r--share/man/man3/assert.37
-rw-r--r--share/man/man3/bitstring.353
-rw-r--r--share/man/man3/end.33
-rw-r--r--share/man/man3/fpgetround.33
-rw-r--r--share/man/man3/intro.3107
-rw-r--r--share/man/man3/makedev.32
-rw-r--r--share/man/man3/offsetof.32
-rw-r--r--share/man/man3/pthread.32
-rw-r--r--share/man/man3/pthread_affinity_np.327
-rw-r--r--share/man/man3/pthread_atfork.32
-rw-r--r--share/man/man3/pthread_attr.32
-rw-r--r--share/man/man3/pthread_attr_affinity_np.315
-rw-r--r--share/man/man3/pthread_attr_get_np.386
-rw-r--r--share/man/man3/pthread_attr_setcreatesuspend_np.32
-rw-r--r--share/man/man3/pthread_barrier_destroy.32
-rw-r--r--share/man/man3/pthread_barrierattr.32
-rw-r--r--share/man/man3/pthread_cancel.31
-rw-r--r--share/man/man3/pthread_cleanup_pop.32
-rw-r--r--share/man/man3/pthread_cleanup_push.32
-rw-r--r--share/man/man3/pthread_cond_broadcast.32
-rw-r--r--share/man/man3/pthread_cond_destroy.32
-rw-r--r--share/man/man3/pthread_cond_init.32
-rw-r--r--share/man/man3/pthread_cond_signal.32
-rw-r--r--share/man/man3/pthread_cond_timedwait.32
-rw-r--r--share/man/man3/pthread_cond_wait.32
-rw-r--r--share/man/man3/pthread_condattr.39
-rw-r--r--share/man/man3/pthread_create.32
-rw-r--r--share/man/man3/pthread_detach.32
-rw-r--r--share/man/man3/pthread_equal.32
-rw-r--r--share/man/man3/pthread_exit.32
-rw-r--r--share/man/man3/pthread_getconcurrency.32
-rw-r--r--share/man/man3/pthread_getcpuclockid.32
-rw-r--r--share/man/man3/pthread_getspecific.32
-rw-r--r--share/man/man3/pthread_getthreadid_np.32
-rw-r--r--share/man/man3/pthread_join.32
-rw-r--r--share/man/man3/pthread_key_create.32
-rw-r--r--share/man/man3/pthread_key_delete.32
-rw-r--r--share/man/man3/pthread_kill.32
-rw-r--r--share/man/man3/pthread_main_np.32
-rw-r--r--share/man/man3/pthread_multi_np.32
-rw-r--r--share/man/man3/pthread_mutex_consistent.32
-rw-r--r--share/man/man3/pthread_mutex_destroy.32
-rw-r--r--share/man/man3/pthread_mutex_init.32
-rw-r--r--share/man/man3/pthread_mutex_lock.32
-rw-r--r--share/man/man3/pthread_mutex_timedlock.32
-rw-r--r--share/man/man3/pthread_mutex_trylock.32
-rw-r--r--share/man/man3/pthread_mutex_unlock.32
-rw-r--r--share/man/man3/pthread_mutexattr.329
-rw-r--r--share/man/man3/pthread_mutexattr_getkind_np.32
-rw-r--r--share/man/man3/pthread_once.32
-rw-r--r--share/man/man3/pthread_resume_all_np.32
-rw-r--r--share/man/man3/pthread_resume_np.32
-rw-r--r--share/man/man3/pthread_rwlock_destroy.32
-rw-r--r--share/man/man3/pthread_rwlock_init.32
-rw-r--r--share/man/man3/pthread_rwlock_rdlock.32
-rw-r--r--share/man/man3/pthread_rwlock_timedrdlock.32
-rw-r--r--share/man/man3/pthread_rwlock_timedwrlock.32
-rw-r--r--share/man/man3/pthread_rwlock_unlock.32
-rw-r--r--share/man/man3/pthread_rwlock_wrlock.32
-rw-r--r--share/man/man3/pthread_rwlockattr_destroy.32
-rw-r--r--share/man/man3/pthread_rwlockattr_getpshared.32
-rw-r--r--share/man/man3/pthread_rwlockattr_init.32
-rw-r--r--share/man/man3/pthread_rwlockattr_setpshared.32
-rw-r--r--share/man/man3/pthread_schedparam.36
-rw-r--r--share/man/man3/pthread_self.32
-rw-r--r--share/man/man3/pthread_set_name_np.32
-rw-r--r--share/man/man3/pthread_setspecific.32
-rw-r--r--share/man/man3/pthread_sigmask.32
-rw-r--r--share/man/man3/pthread_sigqueue.3102
-rw-r--r--share/man/man3/pthread_spin_init.32
-rw-r--r--share/man/man3/pthread_spin_lock.32
-rw-r--r--share/man/man3/pthread_suspend_all_np.32
-rw-r--r--share/man/man3/pthread_suspend_np.32
-rw-r--r--share/man/man3/pthread_switch_add_np.32
-rw-r--r--share/man/man3/pthread_testcancel.31
-rw-r--r--share/man/man3/pthread_yield.32
-rw-r--r--share/man/man3/qmath.32
-rw-r--r--share/man/man3/queue.337
-rw-r--r--share/man/man3/sigevent.32
-rw-r--r--share/man/man3/siginfo.32
-rw-r--r--share/man/man3/snl.3309
-rw-r--r--share/man/man3/stats.32
-rw-r--r--share/man/man3/stdarg.33
-rw-r--r--share/man/man3/stdckdint.3106
-rw-r--r--share/man/man3/sysexits.32
-rw-r--r--share/man/man3/tgmath.32
-rw-r--r--share/man/man3/timeradd.32
-rw-r--r--share/man/man3/tree.339
-rw-r--r--share/man/man3lua/Makefile1
-rw-r--r--share/man/man3lua/intro.3lua4
-rw-r--r--share/man/man4/Makefile70
-rw-r--r--share/man/man4/Makefile.depend1
-rw-r--r--share/man/man4/aac.42
-rw-r--r--share/man/man4/aacraid.42
-rw-r--r--share/man/man4/acpi.42
-rw-r--r--share/man/man4/acpi_asus.42
-rw-r--r--share/man/man4/acpi_asus_wmi.44
-rw-r--r--share/man/man4/acpi_battery.42
-rw-r--r--share/man/man4/acpi_dock.42
-rw-r--r--share/man/man4/acpi_fujitsu.42
-rw-r--r--share/man/man4/acpi_ged.4 (renamed from share/man/man4/man4.i386/ce.4)71
-rw-r--r--share/man/man4/acpi_hp.42
-rw-r--r--share/man/man4/acpi_ibm.42
-rw-r--r--share/man/man4/acpi_panasonic.42
-rw-r--r--share/man/man4/acpi_rapidstart.42
-rw-r--r--share/man/man4/acpi_sony.42
-rw-r--r--share/man/man4/acpi_thermal.47
-rw-r--r--share/man/man4/acpi_toshiba.42
-rw-r--r--share/man/man4/acpi_video.42
-rw-r--r--share/man/man4/acpi_wmi.42
-rw-r--r--share/man/man4/ada.42
-rw-r--r--share/man/man4/adm6996fc.42
-rw-r--r--share/man/man4/ads111x.49
-rw-r--r--share/man/man4/ae.42
-rw-r--r--share/man/man4/aesni.42
-rw-r--r--share/man/man4/age.42
-rw-r--r--share/man/man4/agp.44
-rw-r--r--share/man/man4/ahc.42
-rw-r--r--share/man/man4/ahci.42
-rw-r--r--share/man/man4/ahd.42
-rw-r--r--share/man/man4/aibs.41
-rw-r--r--share/man/man4/aio.44
-rw-r--r--share/man/man4/alc.48
-rw-r--r--share/man/man4/ale.42
-rw-r--r--share/man/man4/alpm.42
-rw-r--r--share/man/man4/altera_atse.42
-rw-r--r--share/man/man4/altera_avgen.42
-rw-r--r--share/man/man4/altera_jtag_uart.42
-rw-r--r--share/man/man4/altera_sdcard.42
-rw-r--r--share/man/man4/altq.418
-rw-r--r--share/man/man4/amdpm.42
-rw-r--r--share/man/man4/amdsbwd.42
-rw-r--r--share/man/man4/amdsmb.42
-rw-r--r--share/man/man4/amdsmn.42
-rw-r--r--share/man/man4/amdtemp.43
-rw-r--r--share/man/man4/aout.42
-rw-r--r--share/man/man4/apic.42
-rw-r--r--share/man/man4/arcmsr.42
-rw-r--r--share/man/man4/arswitch.410
-rw-r--r--share/man/man4/asmc.42
-rw-r--r--share/man/man4/at45d.42
-rw-r--r--share/man/man4/ata.42
-rw-r--r--share/man/man4/ath.419
-rw-r--r--share/man/man4/ath10k.4100
-rw-r--r--share/man/man4/ath_ahb.460
-rw-r--r--share/man/man4/ath_hal.47
-rw-r--r--share/man/man4/ath_pci.457
-rw-r--r--share/man/man4/atkbd.42
-rw-r--r--share/man/man4/atkbdc.413
-rw-r--r--share/man/man4/atopcase.4134
-rw-r--r--share/man/man4/atp.42
-rw-r--r--share/man/man4/atrtc.46
-rw-r--r--share/man/man4/attimer.42
-rw-r--r--share/man/man4/audit.42
-rw-r--r--share/man/man4/auditpipe.42
-rw-r--r--share/man/man4/aue.42
-rw-r--r--share/man/man4/axe.42
-rw-r--r--share/man/man4/axge.414
-rw-r--r--share/man/man4/bce.42
-rw-r--r--share/man/man4/bcm5974.44
-rw-r--r--share/man/man4/bcma.42
-rw-r--r--share/man/man4/bfe.49
-rw-r--r--share/man/man4/bge.42
-rw-r--r--share/man/man4/bhnd.42
-rw-r--r--share/man/man4/bhnd_chipc.42
-rw-r--r--share/man/man4/bhnd_pmu.42
-rw-r--r--share/man/man4/bhndb.42
-rw-r--r--share/man/man4/bhndb_pci.42
-rw-r--r--share/man/man4/bhyve.42
-rw-r--r--share/man/man4/blackhole.42
-rw-r--r--share/man/man4/bnxt.42
-rw-r--r--share/man/man4/boottrace.42
-rw-r--r--share/man/man4/bpf.42
-rw-r--r--share/man/man4/bridge.444
-rw-r--r--share/man/man4/bwi.42
-rw-r--r--share/man/man4/bwn.42
-rw-r--r--share/man/man4/bxe.44
-rw-r--r--share/man/man4/bytgpio.42
-rw-r--r--share/man/man4/capsicum.45
-rw-r--r--share/man/man4/cardbus.42
-rw-r--r--share/man/man4/carp.421
-rw-r--r--share/man/man4/cas.47
-rw-r--r--share/man/man4/cc_cdg.42
-rw-r--r--share/man/man4/cc_chd.42
-rw-r--r--share/man/man4/cc_cubic.410
-rw-r--r--share/man/man4/cc_dctcp.49
-rw-r--r--share/man/man4/cc_hd.42
-rw-r--r--share/man/man4/cc_htcp.42
-rw-r--r--share/man/man4/cc_newreno.412
-rw-r--r--share/man/man4/cc_vegas.42
-rw-r--r--share/man/man4/ccd.42
-rw-r--r--share/man/man4/ccr.42
-rw-r--r--share/man/man4/cd.42
-rw-r--r--share/man/man4/cdce.425
-rw-r--r--share/man/man4/cdceem.42
-rw-r--r--share/man/man4/cfi.42
-rw-r--r--share/man/man4/cfiscsi.42
-rw-r--r--share/man/man4/cfumass.44
-rw-r--r--share/man/man4/cgem.44
-rw-r--r--share/man/man4/ch.41
-rw-r--r--share/man/man4/chromebook_platform.42
-rw-r--r--share/man/man4/chvgpio.42
-rw-r--r--share/man/man4/ciss.41
-rw-r--r--share/man/man4/coretemp.45
-rw-r--r--share/man/man4/cp2112.44
-rw-r--r--share/man/man4/cpuctl.42
-rw-r--r--share/man/man4/cpufreq.42
-rw-r--r--share/man/man4/crypto.44
-rw-r--r--share/man/man4/ctl.44
-rw-r--r--share/man/man4/cue.42
-rw-r--r--share/man/man4/cxgb.42
-rw-r--r--share/man/man4/cxgbe.48
-rw-r--r--share/man/man4/cxgbev.45
-rw-r--r--share/man/man4/cyapa.42
-rw-r--r--share/man/man4/da.444
-rw-r--r--share/man/man4/dc.42
-rw-r--r--share/man/man4/dcons.46
-rw-r--r--share/man/man4/dcons_crom.42
-rw-r--r--share/man/man4/ddb.4244
-rw-r--r--share/man/man4/devctl.42
-rw-r--r--share/man/man4/disc.43
-rw-r--r--share/man/man4/disk.42
-rw-r--r--share/man/man4/divert.440
-rw-r--r--share/man/man4/dpms.42
-rw-r--r--share/man/man4/ds1307.42
-rw-r--r--share/man/man4/ds3231.42
-rw-r--r--share/man/man4/dtrace_audit.42
-rw-r--r--share/man/man4/dtrace_io.42
-rw-r--r--share/man/man4/dtrace_ip.42
-rw-r--r--share/man/man4/dtrace_kinst.491
-rw-r--r--share/man/man4/dtrace_lockstat.42
-rw-r--r--share/man/man4/dtrace_proc.46
-rw-r--r--share/man/man4/dtrace_sched.42
-rw-r--r--share/man/man4/dtrace_sctp.416
-rw-r--r--share/man/man4/dtrace_tcp.4140
-rw-r--r--share/man/man4/dtrace_udp.42
-rw-r--r--share/man/man4/dtrace_udplite.42
-rw-r--r--share/man/man4/dummynet.42
-rw-r--r--share/man/man4/e6060sw.42
-rw-r--r--share/man/man4/edsc.43
-rw-r--r--share/man/man4/efidev.44
-rw-r--r--share/man/man4/ehci.42
-rw-r--r--share/man/man4/em.473
-rw-r--r--share/man/man4/ena.412
-rw-r--r--share/man/man4/enc.42
-rw-r--r--share/man/man4/enic.488
-rw-r--r--share/man/man4/epair.42
-rw-r--r--share/man/man4/est.42
-rw-r--r--share/man/man4/et.42
-rw-r--r--share/man/man4/etherswitch.42
-rw-r--r--share/man/man4/eventtimers.42
-rw-r--r--share/man/man4/exca.42
-rw-r--r--share/man/man4/fd.43
-rw-r--r--share/man/man4/fdc.459
-rw-r--r--share/man/man4/fdt.42
-rw-r--r--share/man/man4/fdt_pinctrl.42
-rw-r--r--share/man/man4/fdtbus.42
-rw-r--r--share/man/man4/ffclock.42
-rw-r--r--share/man/man4/filemon.417
-rw-r--r--share/man/man4/firewire.44
-rw-r--r--share/man/man4/ftgpio.4 (renamed from share/man/man4/rtw88fw.4)48
-rw-r--r--share/man/man4/ftwd.44
-rw-r--r--share/man/man4/full.42
-rw-r--r--share/man/man4/fwe.42
-rw-r--r--share/man/man4/fwip.42
-rw-r--r--share/man/man4/fwohci.44
-rw-r--r--share/man/man4/fxp.42
-rw-r--r--share/man/man4/gbde.42
-rw-r--r--share/man/man4/gdb.418
-rw-r--r--share/man/man4/gem.411
-rw-r--r--share/man/man4/genet.42
-rw-r--r--share/man/man4/genetlink.4145
-rw-r--r--share/man/man4/geom.414
-rw-r--r--share/man/man4/geom_linux_lvm.42
-rw-r--r--share/man/man4/geom_map.4211
-rw-r--r--share/man/man4/geom_uzip.42
-rw-r--r--share/man/man4/gif.42
-rw-r--r--share/man/man4/gpio.42
-rw-r--r--share/man/man4/gpioiic.42
-rw-r--r--share/man/man4/gpiokeys.44
-rw-r--r--share/man/man4/gpioled.42
-rw-r--r--share/man/man4/gpioths.42
-rw-r--r--share/man/man4/gre.42
-rw-r--r--share/man/man4/gve.4215
-rw-r--r--share/man/man4/h_ertt.42
-rw-r--r--share/man/man4/hconf.44
-rw-r--r--share/man/man4/hcons.44
-rw-r--r--share/man/man4/hgame.46
-rw-r--r--share/man/man4/hidbus.44
-rw-r--r--share/man/man4/hidquirk.44
-rw-r--r--share/man/man4/hidraw.417
-rw-r--r--share/man/man4/hifn.42
-rw-r--r--share/man/man4/hkbd.42
-rw-r--r--share/man/man4/hms.42
-rw-r--r--share/man/man4/hmt.44
-rw-r--r--share/man/man4/hpen.46
-rw-r--r--share/man/man4/hpet.42
-rw-r--r--share/man/man4/hpt27xx.42
-rw-r--r--share/man/man4/hptiop.42
-rw-r--r--share/man/man4/hptmv.42
-rw-r--r--share/man/man4/hptnr.42
-rw-r--r--share/man/man4/hptrr.42
-rw-r--r--share/man/man4/hsctrl.44
-rw-r--r--share/man/man4/htu21.44
-rw-r--r--share/man/man4/hv_kvp.41
-rw-r--r--share/man/man4/hv_netvsc.41
-rw-r--r--share/man/man4/hv_storvsc.43
-rw-r--r--share/man/man4/hv_utils.41
-rw-r--r--share/man/man4/hv_vmbus.41
-rw-r--r--share/man/man4/hv_vss.44
-rw-r--r--share/man/man4/hwpmc.4209
-rw-r--r--share/man/man4/hwpstate_intel.42
-rw-r--r--share/man/man4/i2ctinyusb.485
-rw-r--r--share/man/man4/iavf.42
-rw-r--r--share/man/man4/ichsmb.42
-rw-r--r--share/man/man4/ichwd.44
-rw-r--r--share/man/man4/icmp.43
-rw-r--r--share/man/man4/icmp6.42
-rw-r--r--share/man/man4/ida.41
-rw-r--r--share/man/man4/ietp.44
-rw-r--r--share/man/man4/if_ipsec.42
-rw-r--r--share/man/man4/if_ntb.42
-rw-r--r--share/man/man4/iflib.43
-rw-r--r--share/man/man4/ifmib.42
-rw-r--r--share/man/man4/ig4.42
-rw-r--r--share/man/man4/igc.410
-rw-r--r--share/man/man4/igmp.42
-rw-r--r--share/man/man4/iic.42
-rw-r--r--share/man/man4/iic_gpiomux.42
-rw-r--r--share/man/man4/iicbb.42
-rw-r--r--share/man/man4/iicbus.42
-rw-r--r--share/man/man4/iichid.46
-rw-r--r--share/man/man4/iicmux.42
-rw-r--r--share/man/man4/iicsmb.42
-rw-r--r--share/man/man4/imcsmb.44
-rw-r--r--share/man/man4/inet.49
-rw-r--r--share/man/man4/inet6.422
-rw-r--r--share/man/man4/intpm.42
-rw-r--r--share/man/man4/intro.42
-rw-r--r--share/man/man4/io.42
-rw-r--r--share/man/man4/ioat.42
-rw-r--r--share/man/man4/ip.422
-rw-r--r--share/man/man4/ip6.44
-rw-r--r--share/man/man4/ipfirewall.42
-rw-r--r--share/man/man4/ipheth.42
-rw-r--r--share/man/man4/ipmi.42
-rw-r--r--share/man/man4/ips.42
-rw-r--r--share/man/man4/ipsec.42
-rw-r--r--share/man/man4/ipw.42
-rw-r--r--share/man/man4/ipwfw.42
-rw-r--r--share/man/man4/irdma.4170
-rw-r--r--share/man/man4/isci.42
-rw-r--r--share/man/man4/iscsi.42
-rw-r--r--share/man/man4/iser.42
-rw-r--r--share/man/man4/isl.42
-rw-r--r--share/man/man4/ismt.42
-rw-r--r--share/man/man4/isp.431
-rw-r--r--share/man/man4/ispfw.44
-rw-r--r--share/man/man4/itwd.44
-rw-r--r--share/man/man4/iwi.42
-rw-r--r--share/man/man4/iwifw.42
-rw-r--r--share/man/man4/iwlwifi.426
-rw-r--r--share/man/man4/iwlwififw.41004
-rw-r--r--share/man/man4/iwm.47
-rw-r--r--share/man/man4/iwmfw.45
-rw-r--r--share/man/man4/iwn.42
-rw-r--r--share/man/man4/iwnfw.42
-rw-r--r--share/man/man4/ixgbe.46
-rw-r--r--share/man/man4/ixl.49
-rw-r--r--share/man/man4/jedec_dimm.414
-rw-r--r--share/man/man4/jme.42
-rw-r--r--share/man/man4/kbdmux.41
-rw-r--r--share/man/man4/kcov.42
-rw-r--r--share/man/man4/keyboard.42
-rw-r--r--share/man/man4/kld.42
-rw-r--r--share/man/man4/ksyms.42
-rw-r--r--share/man/man4/ksz8995ma.42
-rw-r--r--share/man/man4/ktls.42
-rw-r--r--share/man/man4/ktr.42
-rw-r--r--share/man/man4/kue.42
-rw-r--r--share/man/man4/kvmclock.496
-rw-r--r--share/man/man4/lagg.464
-rw-r--r--share/man/man4/le.410
-rw-r--r--share/man/man4/led.42
-rw-r--r--share/man/man4/lge.42
-rw-r--r--share/man/man4/linux.42
-rw-r--r--share/man/man4/liquidio.41
-rw-r--r--share/man/man4/lm75.42
-rw-r--r--share/man/man4/lo.43
-rw-r--r--share/man/man4/lp.41
-rw-r--r--share/man/man4/lpbb.42
-rw-r--r--share/man/man4/lpt.42
-rw-r--r--share/man/man4/ltc430x.42
-rw-r--r--share/man/man4/mac.412
-rw-r--r--share/man/man4/mac_biba.42
-rw-r--r--share/man/man4/mac_bsdextended.42
-rw-r--r--share/man/man4/mac_ifoff.42
-rw-r--r--share/man/man4/mac_ipacl.4164
-rw-r--r--share/man/man4/mac_lomac.42
-rw-r--r--share/man/man4/mac_mls.42
-rw-r--r--share/man/man4/mac_none.42
-rw-r--r--share/man/man4/mac_ntpd.42
-rw-r--r--share/man/man4/mac_partition.42
-rw-r--r--share/man/man4/mac_portacl.42
-rw-r--r--share/man/man4/mac_priority.42
-rw-r--r--share/man/man4/mac_seeotheruids.42
-rw-r--r--share/man/man4/mac_stub.42
-rw-r--r--share/man/man4/mac_test.42
-rw-r--r--share/man/man4/malo.42
-rw-r--r--share/man/man4/man4.aarch64/Makefile1
-rw-r--r--share/man/man4/man4.aarch64/Makefile.depend11
-rw-r--r--share/man/man4/man4.aarch64/armv8crypto.42
-rw-r--r--share/man/man4/man4.aarch64/enetc.42
-rw-r--r--share/man/man4/man4.aarch64/felix.42
-rw-r--r--share/man/man4/man4.aarch64/rk_gpio.42
-rw-r--r--share/man/man4/man4.aarch64/rk_grf.42
-rw-r--r--share/man/man4/man4.aarch64/rk_i2c.44
-rw-r--r--share/man/man4/man4.aarch64/rk_pinctrl.42
-rw-r--r--share/man/man4/man4.arm/Makefile1
-rw-r--r--share/man/man4/man4.arm/Makefile.depend1
-rw-r--r--share/man/man4/man4.arm/am335x_dmtpps.42
-rw-r--r--share/man/man4/man4.arm/aw_gpio.42
-rw-r--r--share/man/man4/man4.arm/aw_mmc.42
-rw-r--r--share/man/man4/man4.arm/aw_rtc.42
-rw-r--r--share/man/man4/man4.arm/aw_sid.44
-rw-r--r--share/man/man4/man4.arm/aw_spi.42
-rw-r--r--share/man/man4/man4.arm/aw_syscon.44
-rw-r--r--share/man/man4/man4.arm/bcm283x_pwm.44
-rw-r--r--share/man/man4/man4.arm/devcfg.42
-rw-r--r--share/man/man4/man4.arm/imx6_ahci.42
-rw-r--r--share/man/man4/man4.arm/imx6_snvs.42
-rw-r--r--share/man/man4/man4.arm/imx_spi.42
-rw-r--r--share/man/man4/man4.arm/imx_wdog.42
-rw-r--r--share/man/man4/man4.arm/mge.42
-rw-r--r--share/man/man4/man4.arm/ti_adc.42
-rw-r--r--share/man/man4/man4.i386/CPU_ELAN.42
-rw-r--r--share/man/man4/man4.i386/Makefile3
-rw-r--r--share/man/man4/man4.i386/Makefile.depend1
-rw-r--r--share/man/man4/man4.i386/apm.42
-rw-r--r--share/man/man4/man4.i386/cp.495
-rw-r--r--share/man/man4/man4.i386/glxiic.42
-rw-r--r--share/man/man4/man4.i386/glxsb.42
-rw-r--r--share/man/man4/man4.i386/longrun.42
-rw-r--r--share/man/man4/man4.i386/npx.41
-rw-r--r--share/man/man4/man4.i386/pae.42
-rw-r--r--share/man/man4/man4.i386/pbio.42
-rw-r--r--share/man/man4/man4.i386/perfmon.42
-rw-r--r--share/man/man4/man4.i386/pnp.42
-rw-r--r--share/man/man4/man4.i386/pnpbios.42
-rw-r--r--share/man/man4/man4.i386/sbni.42
-rw-r--r--share/man/man4/man4.i386/smapi.42
-rw-r--r--share/man/man4/man4.i386/vpd.42
-rw-r--r--share/man/man4/man4.powerpc/Makefile1
-rw-r--r--share/man/man4/man4.powerpc/Makefile.depend1
-rw-r--r--share/man/man4/man4.powerpc/abtn.42
-rw-r--r--share/man/man4/man4.powerpc/adb.42
-rw-r--r--share/man/man4/man4.powerpc/akbd.42
-rw-r--r--share/man/man4/man4.powerpc/ams.42
-rw-r--r--share/man/man4/man4.powerpc/cuda.42
-rw-r--r--share/man/man4/man4.powerpc/dtsec.42
-rw-r--r--share/man/man4/man4.powerpc/llan.44
-rw-r--r--share/man/man4/man4.powerpc/ofw_console.41
-rw-r--r--share/man/man4/man4.powerpc/pmu.42
-rw-r--r--share/man/man4/man4.powerpc/powermac_nvram.42
-rw-r--r--share/man/man4/man4.powerpc/smu.42
-rw-r--r--share/man/man4/man4.powerpc/snd_ai2s.42
-rw-r--r--share/man/man4/man4.powerpc/snd_davbus.42
-rw-r--r--share/man/man4/man4.powerpc/tsec.42
-rw-r--r--share/man/man4/max44009.44
-rw-r--r--share/man/man4/md.42
-rw-r--r--share/man/man4/mdio.42
-rw-r--r--share/man/man4/me.42
-rw-r--r--share/man/man4/mem.415
-rw-r--r--share/man/man4/mfi.48
-rw-r--r--share/man/man4/mgb.42
-rw-r--r--share/man/man4/miibus.42
-rw-r--r--share/man/man4/mld.42
-rw-r--r--share/man/man4/mlx.42
-rw-r--r--share/man/man4/mlx4en.44
-rw-r--r--share/man/man4/mlx4ib.44
-rw-r--r--share/man/man4/mlx5en.44
-rw-r--r--share/man/man4/mlx5ib.44
-rw-r--r--share/man/man4/mlx5io.46
-rw-r--r--share/man/man4/mmc.42
-rw-r--r--share/man/man4/mmcsd.42
-rw-r--r--share/man/man4/mod_cc.418
-rw-r--r--share/man/man4/mos.42
-rw-r--r--share/man/man4/mouse.42
-rw-r--r--share/man/man4/mpi3mr.481
-rw-r--r--share/man/man4/mpr.412
-rw-r--r--share/man/man4/mps.46
-rw-r--r--share/man/man4/mpt.44
-rw-r--r--share/man/man4/mrsas.42
-rw-r--r--share/man/man4/msk.42
-rw-r--r--share/man/man4/mt7915.498
-rw-r--r--share/man/man4/mt7921.498
-rw-r--r--share/man/man4/mtio.43
-rw-r--r--share/man/man4/muge.42
-rw-r--r--share/man/man4/multicast.42
-rw-r--r--share/man/man4/mvs.42
-rw-r--r--share/man/man4/mwl.42
-rw-r--r--share/man/man4/mwlfw.42
-rw-r--r--share/man/man4/mx25l.42
-rw-r--r--share/man/man4/mxge.42
-rw-r--r--share/man/man4/my.42
-rw-r--r--share/man/man4/nctgpio.454
-rw-r--r--share/man/man4/ncthwm.452
-rw-r--r--share/man/man4/nda.42
-rw-r--r--share/man/man4/net80211.42
-rw-r--r--share/man/man4/netdump.48
-rw-r--r--share/man/man4/netfpga10g_nf10bmac.42
-rw-r--r--share/man/man4/netgdb.417
-rw-r--r--share/man/man4/netgraph.46
-rw-r--r--share/man/man4/netintro.43
-rw-r--r--share/man/man4/netlink.4357
-rw-r--r--share/man/man4/netmap.42
-rw-r--r--share/man/man4/nfe.42
-rw-r--r--share/man/man4/nfsmb.42
-rw-r--r--share/man/man4/ng_UI.42
-rw-r--r--share/man/man4/ng_async.42
-rw-r--r--share/man/man4/ng_atmllc.496
-rw-r--r--share/man/man4/ng_bluetooth.41
-rw-r--r--share/man/man4/ng_bpf.42
-rw-r--r--share/man/man4/ng_bridge.428
-rw-r--r--share/man/man4/ng_btsocket.41
-rw-r--r--share/man/man4/ng_car.42
-rw-r--r--share/man/man4/ng_ccatm.4323
-rw-r--r--share/man/man4/ng_checksum.42
-rw-r--r--share/man/man4/ng_cisco.42
-rw-r--r--share/man/man4/ng_deflate.42
-rw-r--r--share/man/man4/ng_device.42
-rw-r--r--share/man/man4/ng_echo.42
-rw-r--r--share/man/man4/ng_eiface.42
-rw-r--r--share/man/man4/ng_etf.42
-rw-r--r--share/man/man4/ng_ether.42
-rw-r--r--share/man/man4/ng_ether_echo.42
-rw-r--r--share/man/man4/ng_frame_relay.42
-rw-r--r--share/man/man4/ng_gif.42
-rw-r--r--share/man/man4/ng_gif_demux.42
-rw-r--r--share/man/man4/ng_hci.41
-rw-r--r--share/man/man4/ng_hole.42
-rw-r--r--share/man/man4/ng_hub.42
-rw-r--r--share/man/man4/ng_iface.42
-rw-r--r--share/man/man4/ng_ip_input.42
-rw-r--r--share/man/man4/ng_ipfw.42
-rw-r--r--share/man/man4/ng_ksocket.42
-rw-r--r--share/man/man4/ng_l2cap.41
-rw-r--r--share/man/man4/ng_l2tp.42
-rw-r--r--share/man/man4/ng_lmi.42
-rw-r--r--share/man/man4/ng_macfilter.44
-rw-r--r--share/man/man4/ng_mppc.41
-rw-r--r--share/man/man4/ng_nat.42
-rw-r--r--share/man/man4/ng_netflow.42
-rw-r--r--share/man/man4/ng_one2many.42
-rw-r--r--share/man/man4/ng_patch.42
-rw-r--r--share/man/man4/ng_pipe.42
-rw-r--r--share/man/man4/ng_ppp.42
-rw-r--r--share/man/man4/ng_pppoe.42
-rw-r--r--share/man/man4/ng_pptpgre.44
-rw-r--r--share/man/man4/ng_pred1.42
-rw-r--r--share/man/man4/ng_rfc1490.42
-rw-r--r--share/man/man4/ng_socket.42
-rw-r--r--share/man/man4/ng_source.41
-rw-r--r--share/man/man4/ng_split.42
-rw-r--r--share/man/man4/ng_sscfu.4161
-rw-r--r--share/man/man4/ng_sscop.4403
-rw-r--r--share/man/man4/ng_tag.42
-rw-r--r--share/man/man4/ng_tcpmss.42
-rw-r--r--share/man/man4/ng_tee.42
-rw-r--r--share/man/man4/ng_tty.42
-rw-r--r--share/man/man4/ng_ubt.41
-rw-r--r--share/man/man4/ng_uni.4420
-rw-r--r--share/man/man4/ng_vjc.42
-rw-r--r--share/man/man4/ng_vlan.42
-rw-r--r--share/man/man4/ng_vlan_rotate.46
-rw-r--r--share/man/man4/ngatmbase.4134
-rw-r--r--share/man/man4/nge.42
-rw-r--r--share/man/man4/nmdm.42
-rw-r--r--share/man/man4/ntb.42
-rw-r--r--share/man/man4/ntb_hw_amd.42
-rw-r--r--share/man/man4/ntb_hw_intel.42
-rw-r--r--share/man/man4/ntb_hw_plx.42
-rw-r--r--share/man/man4/ntb_transport.42
-rw-r--r--share/man/man4/null.43
-rw-r--r--share/man/man4/numa.42
-rw-r--r--share/man/man4/nvd.42
-rw-r--r--share/man/man4/nvdimm.44
-rw-r--r--share/man/man4/nvme.42
-rw-r--r--share/man/man4/nvram.42
-rw-r--r--share/man/man4/nvram2env.4117
-rw-r--r--share/man/man4/oce.410
-rw-r--r--share/man/man4/ocs_fc.42
-rw-r--r--share/man/man4/ohci.42
-rw-r--r--share/man/man4/openfirm.44
-rw-r--r--share/man/man4/orm.42
-rw-r--r--share/man/man4/ossl.46
-rw-r--r--share/man/man4/otus.43
-rw-r--r--share/man/man4/otusfw.41
-rw-r--r--share/man/man4/ow.42
-rw-r--r--share/man/man4/ow_temp.42
-rw-r--r--share/man/man4/owc.42
-rw-r--r--share/man/man4/padlock.42
-rw-r--r--share/man/man4/pass.42
-rw-r--r--share/man/man4/pca954x.44
-rw-r--r--share/man/man4/pccard.42
-rw-r--r--share/man/man4/pccbb.42
-rw-r--r--share/man/man4/pcf.42
-rw-r--r--share/man/man4/pcf8574.44
-rw-r--r--share/man/man4/pcf8591.44
-rw-r--r--share/man/man4/pchtherm.42
-rw-r--r--share/man/man4/pci.46
-rw-r--r--share/man/man4/pcib.42
-rw-r--r--share/man/man4/pcic.42
-rw-r--r--share/man/man4/pcm.4183
-rw-r--r--share/man/man4/pf.4185
-rw-r--r--share/man/man4/pflog.42
-rw-r--r--share/man/man4/pflow.4123
-rw-r--r--share/man/man4/pfsync.451
-rw-r--r--share/man/man4/pim.42
-rw-r--r--share/man/man4/pms.42
-rw-r--r--share/man/man4/polling.42
-rw-r--r--share/man/man4/ppbus.42
-rw-r--r--share/man/man4/ppc.42
-rw-r--r--share/man/man4/ppi.42
-rw-r--r--share/man/man4/procdesc.42
-rw-r--r--share/man/man4/proto.410
-rw-r--r--share/man/man4/ps4dshock.44
-rw-r--r--share/man/man4/psm.42
-rw-r--r--share/man/man4/pst.42
-rw-r--r--share/man/man4/pt.42
-rw-r--r--share/man/man4/ptnet.42
-rw-r--r--share/man/man4/pts.43
-rw-r--r--share/man/man4/pty.42
-rw-r--r--share/man/man4/puc.42
-rw-r--r--share/man/man4/pvscsi.42
-rw-r--r--share/man/man4/pwmc.42
-rw-r--r--share/man/man4/qat.466
-rw-r--r--share/man/man4/qat_c2xxx.42
-rw-r--r--share/man/man4/qlnxe.42
-rw-r--r--share/man/man4/qlxgb.42
-rw-r--r--share/man/man4/qlxgbe.42
-rw-r--r--share/man/man4/qlxge.42
-rw-r--r--share/man/man4/ral.42
-rw-r--r--share/man/man4/random.42
-rw-r--r--share/man/man4/rccgpio.42
-rw-r--r--share/man/man4/rctl.42
-rw-r--r--share/man/man4/re.47
-rw-r--r--share/man/man4/rgephy.42
-rw-r--r--share/man/man4/rights.411
-rw-r--r--share/man/man4/rl.42
-rw-r--r--share/man/man4/rndtest.42
-rw-r--r--share/man/man4/route.43
-rw-r--r--share/man/man4/rsu.43
-rw-r--r--share/man/man4/rsufw.41
-rw-r--r--share/man/man4/rtnetlink.4539
-rw-r--r--share/man/man4/rtsx.42
-rw-r--r--share/man/man4/rtw88.431
-rw-r--r--share/man/man4/rtwn.42
-rw-r--r--share/man/man4/rtwn_pci.42
-rw-r--r--share/man/man4/rtwn_usb.42
-rw-r--r--share/man/man4/rtwnfw.42
-rw-r--r--share/man/man4/rue.42
-rw-r--r--share/man/man4/rum.42
-rw-r--r--share/man/man4/run.44
-rw-r--r--share/man/man4/runfw.42
-rw-r--r--share/man/man4/sa.42
-rw-r--r--share/man/man4/safe.42
-rw-r--r--share/man/man4/safexcel.42
-rw-r--r--share/man/man4/sbp.42
-rw-r--r--share/man/man4/sbp_targ.42
-rw-r--r--share/man/man4/scc.42
-rw-r--r--share/man/man4/sched_4bsd.42
-rw-r--r--share/man/man4/sched_ule.42
-rw-r--r--share/man/man4/screen.42
-rw-r--r--share/man/man4/scsi.426
-rw-r--r--share/man/man4/sctp.411
-rw-r--r--share/man/man4/sdhci.42
-rw-r--r--share/man/man4/sem.42
-rw-r--r--share/man/man4/send.42
-rw-r--r--share/man/man4/ses.42
-rw-r--r--share/man/man4/sfxge.42
-rw-r--r--share/man/man4/sge.42
-rw-r--r--share/man/man4/siba.42
-rw-r--r--share/man/man4/siftr.4153
-rw-r--r--share/man/man4/siis.42
-rw-r--r--share/man/man4/simplebus.42
-rw-r--r--share/man/man4/sis.42
-rw-r--r--share/man/man4/sk.42
-rw-r--r--share/man/man4/smartpqi.458
-rw-r--r--share/man/man4/smb.42
-rw-r--r--share/man/man4/smbios.42
-rw-r--r--share/man/man4/smbus.42
-rw-r--r--share/man/man4/smp.42
-rw-r--r--share/man/man4/smsc.42
-rw-r--r--share/man/man4/snd_als4000.42
-rw-r--r--share/man/man4/snd_atiixp.42
-rw-r--r--share/man/man4/snd_cmi.42
-rw-r--r--share/man/man4/snd_cs4281.42
-rw-r--r--share/man/man4/snd_csa.42
-rw-r--r--share/man/man4/snd_emu10k1.42
-rw-r--r--share/man/man4/snd_emu10kx.42
-rw-r--r--share/man/man4/snd_envy24.42
-rw-r--r--share/man/man4/snd_envy24ht.42
-rw-r--r--share/man/man4/snd_es137x.42
-rw-r--r--share/man/man4/snd_fm801.42
-rw-r--r--share/man/man4/snd_hda.42
-rw-r--r--share/man/man4/snd_hdspe.482
-rw-r--r--share/man/man4/snd_ich.42
-rw-r--r--share/man/man4/snd_maestro3.42
-rw-r--r--share/man/man4/snd_neomagic.42
-rw-r--r--share/man/man4/snd_solo.42
-rw-r--r--share/man/man4/snd_spicds.42
-rw-r--r--share/man/man4/snd_t4dwave.42
-rw-r--r--share/man/man4/snd_uaudio.4114
-rw-r--r--share/man/man4/snd_via8233.42
-rw-r--r--share/man/man4/snd_via82c686.42
-rw-r--r--share/man/man4/snd_vibes.42
-rw-r--r--share/man/man4/sndstat.46
-rw-r--r--share/man/man4/snp.414
-rw-r--r--share/man/man4/spigen.42
-rw-r--r--share/man/man4/spkr.42
-rw-r--r--share/man/man4/splash.42
-rw-r--r--share/man/man4/ste.42
-rw-r--r--share/man/man4/stf.42
-rw-r--r--share/man/man4/stge.42
-rw-r--r--share/man/man4/sume.44
-rw-r--r--share/man/man4/superio.446
-rw-r--r--share/man/man4/sym.42
-rw-r--r--share/man/man4/syncache.42
-rw-r--r--share/man/man4/syncer.42
-rw-r--r--share/man/man4/syscons.44
-rw-r--r--share/man/man4/sysmouse.42
-rw-r--r--share/man/man4/tap.41
-rw-r--r--share/man/man4/targ.42
-rw-r--r--share/man/man4/tcp.492
-rw-r--r--share/man/man4/tcp_bbr.413
-rw-r--r--share/man/man4/tcp_rack.4162
-rw-r--r--share/man/man4/tdfx.42
-rw-r--r--share/man/man4/termios.45
-rw-r--r--share/man/man4/textdump.42
-rw-r--r--share/man/man4/ti.44
-rw-r--r--share/man/man4/timecounters.42
-rw-r--r--share/man/man4/tpm.42
-rw-r--r--share/man/man4/tslog.46
-rw-r--r--share/man/man4/tty.43
-rw-r--r--share/man/man4/tun.41
-rw-r--r--share/man/man4/twe.49
-rw-r--r--share/man/man4/tws.42
-rw-r--r--share/man/man4/u3g.420
-rw-r--r--share/man/man4/uark.42
-rw-r--r--share/man/man4/uart.42
-rw-r--r--share/man/man4/uath.42
-rw-r--r--share/man/man4/ubsa.42
-rw-r--r--share/man/man4/ubser.42
-rw-r--r--share/man/man4/ubtbcmfw.41
-rw-r--r--share/man/man4/uchcom.42
-rw-r--r--share/man/man4/ucom.42
-rw-r--r--share/man/man4/ucycom.44
-rw-r--r--share/man/man4/udav.42
-rw-r--r--share/man/man4/udbp.42
-rw-r--r--share/man/man4/udl.46
-rw-r--r--share/man/man4/udp.43
-rw-r--r--share/man/man4/udplite.42
-rw-r--r--share/man/man4/uep.46
-rw-r--r--share/man/man4/ufoma.42
-rw-r--r--share/man/man4/uftdi.42
-rw-r--r--share/man/man4/ugen.42
-rw-r--r--share/man/man4/ugold.42
-rw-r--r--share/man/man4/uhci.42
-rw-r--r--share/man/man4/uhid.42
-rw-r--r--share/man/man4/uhso.42
-rw-r--r--share/man/man4/uipaq.42
-rw-r--r--share/man/man4/ukbd.411
-rw-r--r--share/man/man4/uled.42
-rw-r--r--share/man/man4/ulpt.42
-rw-r--r--share/man/man4/umass.42
-rw-r--r--share/man/man4/umcs.42
-rw-r--r--share/man/man4/umct.42
-rw-r--r--share/man/man4/umodem.42
-rw-r--r--share/man/man4/umoscom.42
-rw-r--r--share/man/man4/ums.42
-rw-r--r--share/man/man4/unix.413
-rw-r--r--share/man/man4/upgt.41
-rw-r--r--share/man/man4/uplcom.42
-rw-r--r--share/man/man4/ural.42
-rw-r--r--share/man/man4/ure.42
-rw-r--r--share/man/man4/urio.42
-rw-r--r--share/man/man4/urndis.44
-rw-r--r--share/man/man4/urtw.42
-rw-r--r--share/man/man4/usb.42
-rw-r--r--share/man/man4/usb_quirk.46
-rw-r--r--share/man/man4/usb_template.41
-rw-r--r--share/man/man4/usbhid.44
-rw-r--r--share/man/man4/usfs.42
-rw-r--r--share/man/man4/uslcom.42
-rw-r--r--share/man/man4/uvisor.42
-rw-r--r--share/man/man4/uvscom.42
-rw-r--r--share/man/man4/vale.42
-rw-r--r--share/man/man4/vga.42
-rw-r--r--share/man/man4/vge.42
-rw-r--r--share/man/man4/viapm.42
-rw-r--r--share/man/man4/viawd.42
-rw-r--r--share/man/man4/virtio.47
-rw-r--r--share/man/man4/virtio_balloon.42
-rw-r--r--share/man/man4/virtio_blk.42
-rw-r--r--share/man/man4/virtio_console.42
-rw-r--r--share/man/man4/virtio_gpu.454
-rw-r--r--share/man/man4/virtio_random.42
-rw-r--r--share/man/man4/virtio_scsi.42
-rw-r--r--share/man/man4/vkbd.41
-rw-r--r--share/man/man4/vlan.42
-rw-r--r--share/man/man4/vmci.42
-rw-r--r--share/man/man4/vmd.411
-rw-r--r--share/man/man4/vmm.427
-rw-r--r--share/man/man4/vmx.42
-rw-r--r--share/man/man4/vr.42
-rw-r--r--share/man/man4/vt.422
-rw-r--r--share/man/man4/vte.42
-rw-r--r--share/man/man4/vtnet.42
-rw-r--r--share/man/man4/vxlan.42
-rw-r--r--share/man/man4/watchdog.44
-rw-r--r--share/man/man4/wbwd.42
-rw-r--r--share/man/man4/wdatwd.491
-rw-r--r--share/man/man4/wg.4231
-rw-r--r--share/man/man4/witness.42
-rw-r--r--share/man/man4/wlan.49
-rw-r--r--share/man/man4/wlan_acl.42
-rw-r--r--share/man/man4/wlan_amrr.42
-rw-r--r--share/man/man4/wlan_ccmp.42
-rw-r--r--share/man/man4/wlan_tkip.42
-rw-r--r--share/man/man4/wlan_wep.42
-rw-r--r--share/man/man4/wlan_xauth.42
-rw-r--r--share/man/man4/wmt.44
-rw-r--r--share/man/man4/wpi.42
-rw-r--r--share/man/man4/wsp.42
-rw-r--r--share/man/man4/xb360gp.46
-rw-r--r--share/man/man4/xdma.42
-rw-r--r--share/man/man4/xen.476
-rw-r--r--share/man/man4/xhci.441
-rw-r--r--share/man/man4/xl.42
-rw-r--r--share/man/man4/xnb.42
-rw-r--r--share/man/man4/xpt.42
-rw-r--r--share/man/man4/zero.42
-rw-r--r--share/man/man4/zyd.41
-rw-r--r--share/man/man5/Makefile7
-rw-r--r--share/man/man5/Makefile.depend1
-rw-r--r--share/man/man5/a.out.57
-rw-r--r--share/man/man5/acct.53
-rw-r--r--share/man/man5/ar.52
-rw-r--r--share/man/man5/autofs.52
-rw-r--r--share/man/man5/bluetooth.device.conf.52
-rw-r--r--share/man/man5/bluetooth.hosts.51
-rw-r--r--share/man/man5/bluetooth.protocols.51
-rw-r--r--share/man/man5/boot.config.52
-rw-r--r--share/man/man5/cd9660.56
-rw-r--r--share/man/man5/core.512
-rw-r--r--share/man/man5/devfs.52
-rw-r--r--share/man/man5/devfs.conf.52
-rw-r--r--share/man/man5/devfs.rules.52
-rw-r--r--share/man/man5/device.hints.52
-rw-r--r--share/man/man5/dir.53
-rw-r--r--share/man/man5/disktab.53
-rw-r--r--share/man/man5/elf.58
-rw-r--r--share/man/man5/ethers.52
-rw-r--r--share/man/man5/eui64.52
-rw-r--r--share/man/man5/ext2fs.54
-rw-r--r--share/man/man5/fbtab.52
-rw-r--r--share/man/man5/fdescfs.516
-rw-r--r--share/man/man5/forward.52
-rw-r--r--share/man/man5/freebsd-update.conf.52
-rw-r--r--share/man/man5/fs.53
-rw-r--r--share/man/man5/fstab.53
-rw-r--r--share/man/man5/fusefs.54
-rw-r--r--share/man/man5/group.53
-rw-r--r--share/man/man5/hesiod.conf.52
-rw-r--r--share/man/man5/hosts.58
-rw-r--r--share/man/man5/hosts.equiv.52
-rw-r--r--share/man/man5/hosts.lpd.52
-rw-r--r--share/man/man5/intro.52
-rw-r--r--share/man/man5/libmap.conf.52
-rw-r--r--share/man/man5/lindebugfs.595
-rw-r--r--share/man/man5/link.52
-rw-r--r--share/man/man5/linprocfs.51
-rw-r--r--share/man/man5/linsysfs.52
-rw-r--r--share/man/man5/mailer.conf.52
-rw-r--r--share/man/man5/make.conf.510
-rw-r--r--share/man/man5/moduli.52
-rw-r--r--share/man/man5/motd.51
-rw-r--r--share/man/man5/mount.conf.52
-rw-r--r--share/man/man5/mqueuefs.52
-rw-r--r--share/man/man5/msdosfs.51
-rw-r--r--share/man/man5/networks.53
-rw-r--r--share/man/man5/nsmb.conf.52
-rw-r--r--share/man/man5/nsswitch.conf.52
-rw-r--r--share/man/man5/nullfs.52
-rw-r--r--share/man/man5/os-release.52
-rw-r--r--share/man/man5/passwd.523
-rw-r--r--share/man/man5/pbm.52
-rw-r--r--share/man/man5/periodic.conf.524
-rw-r--r--share/man/man5/pf.conf.5233
-rw-r--r--share/man/man5/pf.os.52
-rw-r--r--share/man/man5/phones.53
-rw-r--r--share/man/man5/portindex.52
-rw-r--r--share/man/man5/portsnap.conf.5147
-rw-r--r--share/man/man5/procfs.597
-rw-r--r--share/man/man5/protocols.524
-rw-r--r--share/man/man5/quota.user.52
-rw-r--r--share/man/man5/rc.conf.5382
-rw-r--r--share/man/man5/rctl.conf.56
-rw-r--r--share/man/man5/regdomain.52
-rw-r--r--share/man/man5/remote.55
-rw-r--r--share/man/man5/resolver.545
-rw-r--r--share/man/man5/services.53
-rw-r--r--share/man/man5/shells.53
-rw-r--r--share/man/man5/smbfs.54
-rw-r--r--share/man/man5/src.conf.5359
-rw-r--r--share/man/man5/stab.53
-rw-r--r--share/man/man5/style.Makefile.524
-rw-r--r--share/man/man5/style.mdoc.529
-rw-r--r--share/man/man5/sysctl.conf.512
-rw-r--r--share/man/man5/tarfs.5126
-rw-r--r--share/man/man5/tmpfs.583
-rw-r--r--share/man/man5/unionfs.53
-rw-r--r--share/man/man6/Makefile1
-rw-r--r--share/man/man6/Makefile.depend1
-rw-r--r--share/man/man6/intro.62
-rw-r--r--share/man/man7/Makefile11
-rw-r--r--share/man/man7/Makefile.depend1
-rw-r--r--share/man/man7/arch.783
-rw-r--r--share/man/man7/ascii.743
-rw-r--r--share/man/man7/bsd.snmpmod.mk.72
-rw-r--r--share/man/man7/build.737
-rw-r--r--share/man/man7/c.72
-rw-r--r--share/man/man7/clocks.72
-rw-r--r--share/man/man7/crypto.72
-rw-r--r--share/man/man7/development.717
-rw-r--r--share/man/man7/environ.717
-rw-r--r--share/man/man7/ffs.72
-rw-r--r--share/man/man7/firewall.72
-rw-r--r--share/man/man7/growfs.7101
-rw-r--r--share/man/man7/hier.71122
-rw-r--r--share/man/man7/hostname.73
-rw-r--r--share/man/man7/intro.77
-rw-r--r--share/man/man7/maclabel.72
-rw-r--r--share/man/man7/mitigations.7367
-rw-r--r--share/man/man7/networking.7101
-rw-r--r--share/man/man7/operator.73
-rw-r--r--share/man/man7/orders.712
-rw-r--r--share/man/man7/ports.722
-rw-r--r--share/man/man7/release.725
-rw-r--r--share/man/man7/sdoc.71
-rw-r--r--share/man/man7/security.735
-rw-r--r--share/man/man7/simd.7241
-rw-r--r--share/man/man7/sizeof.7308
-rw-r--r--share/man/man7/sprog.72
-rw-r--r--share/man/man7/stats.74
-rw-r--r--share/man/man7/stdint.72
-rw-r--r--share/man/man7/sticky.73
-rw-r--r--share/man/man7/tests.71
-rw-r--r--share/man/man7/tuning.77
-rw-r--r--share/man/man8/Makefile4
-rw-r--r--share/man/man8/Makefile.depend1
-rw-r--r--share/man/man8/beinstall.84
-rw-r--r--share/man/man8/crash.86
-rw-r--r--share/man/man8/debug.sh.8182
-rw-r--r--share/man/man8/diskless.82
-rw-r--r--share/man/man8/intro.83
-rw-r--r--share/man/man8/nanobsd.82
-rw-r--r--share/man/man8/rc.841
-rw-r--r--share/man/man8/rc.sendmail.8298
-rw-r--r--share/man/man8/rc.subr.8241
-rw-r--r--share/man/man8/rescue.82
-rw-r--r--share/man/man8/uefi.87
-rw-r--r--share/man/man8/yp.83
-rw-r--r--share/man/man9/BUF_ISLOCKED.92
-rw-r--r--share/man/man9/BUF_LOCK.92
-rw-r--r--share/man/man9/BUF_LOCKFREE.92
-rw-r--r--share/man/man9/BUF_LOCKINIT.92
-rw-r--r--share/man/man9/BUF_RECURSED.92
-rw-r--r--share/man/man9/BUF_TIMELOCK.92
-rw-r--r--share/man/man9/BUF_UNLOCK.92
-rw-r--r--share/man/man9/BUS_ADD_CHILD.92
-rw-r--r--share/man/man9/BUS_BIND_INTR.92
-rw-r--r--share/man/man9/BUS_CHILD_DELETED.92
-rw-r--r--share/man/man9/BUS_CHILD_DETACHED.92
-rw-r--r--share/man/man9/BUS_CHILD_LOCATION.92
-rw-r--r--share/man/man9/BUS_CHILD_PNPINFO.92
-rw-r--r--share/man/man9/BUS_CONFIG_INTR.92
-rw-r--r--share/man/man9/BUS_DESCRIBE_INTR.92
-rw-r--r--share/man/man9/BUS_GET_CPUS.92
-rw-r--r--share/man/man9/BUS_GET_PROPERTY.94
-rw-r--r--share/man/man9/BUS_NEW_PASS.92
-rw-r--r--share/man/man9/BUS_PRINT_CHILD.92
-rw-r--r--share/man/man9/BUS_READ_IVAR.92
-rw-r--r--share/man/man9/BUS_RESCAN.92
-rw-r--r--share/man/man9/BUS_SETUP_INTR.92
-rw-r--r--share/man/man9/CTASSERT.92
-rw-r--r--share/man/man9/DB_COMMAND.941
-rw-r--r--share/man/man9/DECLARE_GEOM_CLASS.92
-rw-r--r--share/man/man9/DECLARE_MODULE.92
-rw-r--r--share/man/man9/DEFINE_IFUNC.92
-rw-r--r--share/man/man9/DELAY.92
-rw-r--r--share/man/man9/DEVICE_ATTACH.92
-rw-r--r--share/man/man9/DEVICE_DETACH.92
-rw-r--r--share/man/man9/DEVICE_IDENTIFY.92
-rw-r--r--share/man/man9/DEVICE_PROBE.92
-rw-r--r--share/man/man9/DEVICE_SHUTDOWN.92
-rw-r--r--share/man/man9/DEV_MODULE.92
-rw-r--r--share/man/man9/DRIVER_MODULE.92
-rw-r--r--share/man/man9/EVENTHANDLER.9147
-rw-r--r--share/man/man9/KASSERT.9177
-rw-r--r--share/man/man9/LOCK_PROFILING.94
-rw-r--r--share/man/man9/MD5.92
-rw-r--r--share/man/man9/MODULE_DEPEND.92
-rw-r--r--share/man/man9/MODULE_PNP_INFO.92
-rw-r--r--share/man/man9/MODULE_VERSION.92
-rw-r--r--share/man/man9/Makefile162
-rw-r--r--share/man/man9/Makefile.depend1
-rw-r--r--share/man/man9/OF_child.92
-rw-r--r--share/man/man9/OF_device_from_xref.92
-rw-r--r--share/man/man9/OF_finddevice.92
-rw-r--r--share/man/man9/OF_getprop.92
-rw-r--r--share/man/man9/OF_node_from_xref.92
-rw-r--r--share/man/man9/OF_package_to_path.92
-rw-r--r--share/man/man9/PCBGROUP.9221
-rw-r--r--share/man/man9/PCI_IOV_ADD_VF.92
-rw-r--r--share/man/man9/PCI_IOV_INIT.94
-rw-r--r--share/man/man9/PCI_IOV_UNINIT.92
-rw-r--r--share/man/man9/PHOLD.92
-rw-r--r--share/man/man9/SDT.92
-rw-r--r--share/man/man9/SYSCALL_MODULE.910
-rw-r--r--share/man/man9/SYSINIT.93
-rw-r--r--share/man/man9/VFS.92
-rw-r--r--share/man/man9/VFS_CHECKEXP.92
-rw-r--r--share/man/man9/VFS_FHTOVP.92
-rw-r--r--share/man/man9/VFS_MOUNT.92
-rw-r--r--share/man/man9/VFS_QUOTACTL.92
-rw-r--r--share/man/man9/VFS_ROOT.92
-rw-r--r--share/man/man9/VFS_SET.92
-rw-r--r--share/man/man9/VFS_STATFS.92
-rw-r--r--share/man/man9/VFS_SYNC.92
-rw-r--r--share/man/man9/VFS_UNMOUNT.92
-rw-r--r--share/man/man9/VFS_VGET.92
-rw-r--r--share/man/man9/VOP_ACCESS.92
-rw-r--r--share/man/man9/VOP_ACLCHECK.92
-rw-r--r--share/man/man9/VOP_ADVISE.92
-rw-r--r--share/man/man9/VOP_ADVLOCK.92
-rw-r--r--share/man/man9/VOP_ALLOCATE.92
-rw-r--r--share/man/man9/VOP_ATTRIB.92
-rw-r--r--share/man/man9/VOP_BMAP.96
-rw-r--r--share/man/man9/VOP_BWRITE.92
-rw-r--r--share/man/man9/VOP_COPY_FILE_RANGE.96
-rw-r--r--share/man/man9/VOP_CREATE.92
-rw-r--r--share/man/man9/VOP_DEALLOCATE.92
-rw-r--r--share/man/man9/VOP_FSYNC.92
-rw-r--r--share/man/man9/VOP_GETACL.92
-rw-r--r--share/man/man9/VOP_GETEXTATTR.92
-rw-r--r--share/man/man9/VOP_GETPAGES.92
-rw-r--r--share/man/man9/VOP_INACTIVE.92
-rw-r--r--share/man/man9/VOP_IOCTL.92
-rw-r--r--share/man/man9/VOP_LINK.92
-rw-r--r--share/man/man9/VOP_LISTEXTATTR.92
-rw-r--r--share/man/man9/VOP_LOCK.96
-rw-r--r--share/man/man9/VOP_LOOKUP.92
-rw-r--r--share/man/man9/VOP_OPENCLOSE.92
-rw-r--r--share/man/man9/VOP_PATHCONF.92
-rw-r--r--share/man/man9/VOP_PRINT.92
-rw-r--r--share/man/man9/VOP_RDWR.92
-rw-r--r--share/man/man9/VOP_READDIR.92
-rw-r--r--share/man/man9/VOP_READLINK.92
-rw-r--r--share/man/man9/VOP_READ_PGCACHE.92
-rw-r--r--share/man/man9/VOP_REALLOCBLKS.92
-rw-r--r--share/man/man9/VOP_REMOVE.92
-rw-r--r--share/man/man9/VOP_RENAME.92
-rw-r--r--share/man/man9/VOP_REVOKE.92
-rw-r--r--share/man/man9/VOP_SETACL.92
-rw-r--r--share/man/man9/VOP_SETEXTATTR.92
-rw-r--r--share/man/man9/VOP_SETLABEL.92
-rw-r--r--share/man/man9/VOP_STRATEGY.92
-rw-r--r--share/man/man9/VOP_VPTOCNP.92
-rw-r--r--share/man/man9/VOP_VPTOFH.92
-rw-r--r--share/man/man9/accept_filter.92
-rw-r--r--share/man/man9/accf_data.92
-rw-r--r--share/man/man9/accf_dns.92
-rw-r--r--share/man/man9/accf_http.92
-rw-r--r--share/man/man9/accf_tls.995
-rw-r--r--share/man/man9/acl.92
-rw-r--r--share/man/man9/alq.92
-rw-r--r--share/man/man9/altq.92
-rw-r--r--share/man/man9/atomic.95
-rw-r--r--share/man/man9/backlight.92
-rw-r--r--share/man/man9/bhnd.92
-rw-r--r--share/man/man9/bhnd_erom.94
-rw-r--r--share/man/man9/bios.91
-rw-r--r--share/man/man9/bitset.92
-rw-r--r--share/man/man9/bpf.92
-rw-r--r--share/man/man9/buf.94
-rw-r--r--share/man/man9/buf_ring.92
-rw-r--r--share/man/man9/bus_activate_resource.926
-rw-r--r--share/man/man9/bus_adjust_resource.917
-rw-r--r--share/man/man9/bus_alloc_resource.92
-rw-r--r--share/man/man9/bus_child_present.92
-rw-r--r--share/man/man9/bus_delayed_attach_children.92
-rw-r--r--share/man/man9/bus_dma.934
-rw-r--r--share/man/man9/bus_generic_attach.92
-rw-r--r--share/man/man9/bus_generic_detach.92
-rw-r--r--share/man/man9/bus_generic_new_pass.92
-rw-r--r--share/man/man9/bus_generic_print_child.92
-rw-r--r--share/man/man9/bus_generic_read_ivar.92
-rw-r--r--share/man/man9/bus_generic_shutdown.92
-rw-r--r--share/man/man9/bus_get_resource.91
-rw-r--r--share/man/man9/bus_map_resource.918
-rw-r--r--share/man/man9/bus_release_resource.926
-rw-r--r--share/man/man9/bus_set_pass.92
-rw-r--r--share/man/man9/bus_set_resource.92
-rw-r--r--share/man/man9/bus_space.92
-rw-r--r--share/man/man9/byteorder.92
-rw-r--r--share/man/man9/callout.931
-rw-r--r--share/man/man9/casuword.92
-rw-r--r--share/man/man9/cd.92
-rw-r--r--share/man/man9/cnv.92
-rw-r--r--share/man/man9/condvar.96
-rw-r--r--share/man/man9/config_intrhook.92
-rw-r--r--share/man/man9/contigmalloc.92
-rw-r--r--share/man/man9/copy.92
-rw-r--r--share/man/man9/counter.92
-rw-r--r--share/man/man9/cpuset.98
-rw-r--r--share/man/man9/cr_bsd_visible.9117
-rw-r--r--share/man/man9/cr_cansee.963
-rw-r--r--share/man/man9/cr_canseejailproc.981
-rw-r--r--share/man/man9/cr_canseeothergids.9 (renamed from share/man/man9/cr_seeothergids.9)85
-rw-r--r--share/man/man9/cr_canseeotheruids.9 (renamed from share/man/man9/cr_seeotheruids.9)81
-rw-r--r--share/man/man9/critical_enter.950
-rw-r--r--share/man/man9/crypto.92
-rw-r--r--share/man/man9/crypto_buffer.92
-rw-r--r--share/man/man9/crypto_driver.92
-rw-r--r--share/man/man9/crypto_request.913
-rw-r--r--share/man/man9/crypto_session.92
-rw-r--r--share/man/man9/dev_clone.92
-rw-r--r--share/man/man9/dev_refthread.92
-rw-r--r--share/man/man9/devclass.92
-rw-r--r--share/man/man9/devclass_find.92
-rw-r--r--share/man/man9/devclass_get_count.92
-rw-r--r--share/man/man9/devclass_get_device.92
-rw-r--r--share/man/man9/devclass_get_devices.92
-rw-r--r--share/man/man9/devclass_get_drivers.92
-rw-r--r--share/man/man9/devclass_get_maxunit.92
-rw-r--r--share/man/man9/devclass_get_name.92
-rw-r--r--share/man/man9/devclass_get_softc.92
-rw-r--r--share/man/man9/devctl_notify.92
-rw-r--r--share/man/man9/devctl_process_running.92
-rw-r--r--share/man/man9/devctl_safe_quote_sb.92
-rw-r--r--share/man/man9/devfs_set_cdevpriv.943
-rw-r--r--share/man/man9/device.92
-rw-r--r--share/man/man9/device_add_child.96
-rw-r--r--share/man/man9/device_delete_child.92
-rw-r--r--share/man/man9/device_delete_children.92
-rw-r--r--share/man/man9/device_enable.92
-rw-r--r--share/man/man9/device_find_child.92
-rw-r--r--share/man/man9/device_get_children.92
-rw-r--r--share/man/man9/device_get_devclass.92
-rw-r--r--share/man/man9/device_get_driver.92
-rw-r--r--share/man/man9/device_get_ivars.92
-rw-r--r--share/man/man9/device_get_name.92
-rw-r--r--share/man/man9/device_get_parent.92
-rw-r--r--share/man/man9/device_get_property.99
-rw-r--r--share/man/man9/device_get_softc.92
-rw-r--r--share/man/man9/device_get_state.92
-rw-r--r--share/man/man9/device_get_sysctl.92
-rw-r--r--share/man/man9/device_get_unit.92
-rw-r--r--share/man/man9/device_printf.92
-rw-r--r--share/man/man9/device_probe_and_attach.92
-rw-r--r--share/man/man9/device_quiet.92
-rw-r--r--share/man/man9/device_set_desc.910
-rw-r--r--share/man/man9/device_set_driver.92
-rw-r--r--share/man/man9/device_set_flags.92
-rw-r--r--share/man/man9/devstat.93
-rw-r--r--share/man/man9/devtoname.92
-rw-r--r--share/man/man9/disk.92
-rw-r--r--share/man/man9/dnv.92
-rw-r--r--share/man/man9/domain.9332
-rw-r--r--share/man/man9/domainset.92
-rw-r--r--share/man/man9/dpcpu.92
-rw-r--r--share/man/man9/drbr.92
-rw-r--r--share/man/man9/driver.92
-rw-r--r--share/man/man9/efirt.94
-rw-r--r--share/man/man9/epoch.912
-rw-r--r--share/man/man9/ether_gen_addr.94
-rw-r--r--share/man/man9/eventtimers.92
-rw-r--r--share/man/man9/extattr.911
-rw-r--r--share/man/man9/fail.92
-rw-r--r--share/man/man9/fdt_pinctrl.92
-rw-r--r--share/man/man9/fetch.92
-rw-r--r--share/man/man9/firmware.9125
-rw-r--r--share/man/man9/fpu_kern.97
-rw-r--r--share/man/man9/g_access.92
-rw-r--r--share/man/man9/g_attach.92
-rw-r--r--share/man/man9/g_bio.94
-rw-r--r--share/man/man9/g_consumer.92
-rw-r--r--share/man/man9/g_data.92
-rw-r--r--share/man/man9/g_event.92
-rw-r--r--share/man/man9/g_geom.92
-rw-r--r--share/man/man9/g_provider.92
-rw-r--r--share/man/man9/g_provider_by_name.92
-rw-r--r--share/man/man9/g_wither_geom.92
-rw-r--r--share/man/man9/get_cyclecount.92
-rw-r--r--share/man/man9/getenv.92
-rw-r--r--share/man/man9/getnewvnode.911
-rw-r--r--share/man/man9/gone_in.92
-rw-r--r--share/man/man9/groupmember.959
-rw-r--r--share/man/man9/hardclock.942
-rw-r--r--share/man/man9/hash.91
-rw-r--r--share/man/man9/hashinit.92
-rw-r--r--share/man/man9/hexdump.92
-rw-r--r--share/man/man9/hhook.92
-rw-r--r--share/man/man9/ieee80211.92
-rw-r--r--share/man/man9/ieee80211_amrr.92
-rw-r--r--share/man/man9/ieee80211_beacon.92
-rw-r--r--share/man/man9/ieee80211_bmiss.92
-rw-r--r--share/man/man9/ieee80211_crypto.92
-rw-r--r--share/man/man9/ieee80211_ddb.94
-rw-r--r--share/man/man9/ieee80211_input.92
-rw-r--r--share/man/man9/ieee80211_node.917
-rw-r--r--share/man/man9/ieee80211_output.92
-rw-r--r--share/man/man9/ieee80211_proto.92
-rw-r--r--share/man/man9/ieee80211_radiotap.92
-rw-r--r--share/man/man9/ieee80211_regdomain.92
-rw-r--r--share/man/man9/ieee80211_scan.92
-rw-r--r--share/man/man9/ieee80211_vap.94
-rw-r--r--share/man/man9/iflib.91
-rw-r--r--share/man/man9/iflibdd.91
-rw-r--r--share/man/man9/iflibdi.91
-rw-r--r--share/man/man9/iflibtxrx.91
-rw-r--r--share/man/man9/ifnet.913
-rw-r--r--share/man/man9/inittodr.92
-rw-r--r--share/man/man9/insmntque.92
-rw-r--r--share/man/man9/intr_event.9473
-rw-r--r--share/man/man9/intro.9594
-rw-r--r--share/man/man9/ithread.9350
-rw-r--r--share/man/man9/kasan.916
-rw-r--r--share/man/man9/kern_reboot.9249
-rw-r--r--share/man/man9/kern_testfrwk.92
-rw-r--r--share/man/man9/kern_yield.9134
-rw-r--r--share/man/man9/kernacc.92
-rw-r--r--share/man/man9/kernel_mount.92
-rw-r--r--share/man/man9/khelp.92
-rw-r--r--share/man/man9/kmsan.913
-rw-r--r--share/man/man9/kobj.92
-rw-r--r--share/man/man9/kproc.92
-rw-r--r--share/man/man9/kqueue.953
-rw-r--r--share/man/man9/kstack_contains.9 (renamed from share/man/man9/vcount.9)77
-rw-r--r--share/man/man9/kthread.92
-rw-r--r--share/man/man9/ktr.94
-rw-r--r--share/man/man9/lock.92
-rw-r--r--share/man/man9/locking.943
-rw-r--r--share/man/man9/mac.913
-rw-r--r--share/man/man9/make_dev.92
-rw-r--r--share/man/man9/malloc.918
-rw-r--r--share/man/man9/mbchain.92
-rw-r--r--share/man/man9/mbuf.926
-rw-r--r--share/man/man9/mbuf_tags.92
-rw-r--r--share/man/man9/mdchain.92
-rw-r--r--share/man/man9/memcchr.92
-rw-r--r--share/man/man9/memguard.92
-rw-r--r--share/man/man9/mi_switch.9218
-rw-r--r--share/man/man9/microseq.92
-rw-r--r--share/man/man9/microtime.92
-rw-r--r--share/man/man9/microuptime.92
-rw-r--r--share/man/man9/mod_cc.98
-rw-r--r--share/man/man9/module.92
-rw-r--r--share/man/man9/mtx_pool.92
-rw-r--r--share/man/man9/mutex.95
-rw-r--r--share/man/man9/namei.955
-rw-r--r--share/man/man9/netisr.97
-rw-r--r--share/man/man9/nv.97
-rw-r--r--share/man/man9/nvmem.92
-rw-r--r--share/man/man9/ofw_bus_is_compatible.92
-rw-r--r--share/man/man9/ofw_bus_status_okay.92
-rw-r--r--share/man/man9/ofw_graph.92
-rw-r--r--share/man/man9/osd.92
-rw-r--r--share/man/man9/owll.92
-rw-r--r--share/man/man9/own.92
-rw-r--r--share/man/man9/p_candebug.9105
-rw-r--r--share/man/man9/p_cansee.946
-rw-r--r--share/man/man9/panic.9111
-rw-r--r--share/man/man9/pci.92
-rw-r--r--share/man/man9/pci_iov_schema.92
-rw-r--r--share/man/man9/pfil.92
-rw-r--r--share/man/man9/pfind.92
-rw-r--r--share/man/man9/pget.92
-rw-r--r--share/man/man9/pgfind.92
-rw-r--r--share/man/man9/physio.92
-rw-r--r--share/man/man9/pmap.97
-rw-r--r--share/man/man9/pmap_activate.92
-rw-r--r--share/man/man9/pmap_clear_modify.92
-rw-r--r--share/man/man9/pmap_copy.92
-rw-r--r--share/man/man9/pmap_enter.92
-rw-r--r--share/man/man9/pmap_extract.92
-rw-r--r--share/man/man9/pmap_growkernel.92
-rw-r--r--share/man/man9/pmap_init.918
-rw-r--r--share/man/man9/pmap_is_modified.94
-rw-r--r--share/man/man9/pmap_is_prefaultable.94
-rw-r--r--share/man/man9/pmap_kextract.977
-rw-r--r--share/man/man9/pmap_map.92
-rw-r--r--share/man/man9/pmap_mincore.92
-rw-r--r--share/man/man9/pmap_object_init_pt.92
-rw-r--r--share/man/man9/pmap_page_exists_quick.98
-rw-r--r--share/man/man9/pmap_page_init.92
-rw-r--r--share/man/man9/pmap_pinit.99
-rw-r--r--share/man/man9/pmap_protect.92
-rw-r--r--share/man/man9/pmap_qenter.92
-rw-r--r--share/man/man9/pmap_quick_enter_page.92
-rw-r--r--share/man/man9/pmap_release.92
-rw-r--r--share/man/man9/pmap_remove.92
-rw-r--r--share/man/man9/pmap_resident_count.92
-rw-r--r--share/man/man9/pmap_unwire.92
-rw-r--r--share/man/man9/pmap_zero_page.92
-rw-r--r--share/man/man9/printf.916
-rw-r--r--share/man/man9/prison_check.920
-rw-r--r--share/man/man9/priv.92
-rw-r--r--share/man/man9/prng.92
-rw-r--r--share/man/man9/proc_rwmem.92
-rw-r--r--share/man/man9/pseudofs.94
-rw-r--r--share/man/man9/psignal.924
-rw-r--r--share/man/man9/pwmbus.92
-rw-r--r--share/man/man9/random.96
-rw-r--r--share/man/man9/random_harvest.92
-rw-r--r--share/man/man9/ratecheck.92
-rw-r--r--share/man/man9/redzone.92
-rw-r--r--share/man/man9/refcount.97
-rw-r--r--share/man/man9/resettodr.92
-rw-r--r--share/man/man9/resource_int_value.92
-rw-r--r--share/man/man9/rijndael.92
-rw-r--r--share/man/man9/rman.920
-rw-r--r--share/man/man9/rmlock.92
-rw-r--r--share/man/man9/rtalloc.9282
-rw-r--r--share/man/man9/rtentry.93
-rw-r--r--share/man/man9/runqueue.92
-rw-r--r--share/man/man9/rwlock.92
-rw-r--r--share/man/man9/sbuf.910
-rw-r--r--share/man/man9/scheduler.92
-rw-r--r--share/man/man9/securelevel_gt.91
-rw-r--r--share/man/man9/selrecord.92
-rw-r--r--share/man/man9/sema.92
-rw-r--r--share/man/man9/seqc.92
-rw-r--r--share/man/man9/sf_buf.92
-rw-r--r--share/man/man9/sglist.92
-rw-r--r--share/man/man9/shm_map.92
-rw-r--r--share/man/man9/signal.95
-rw-r--r--share/man/man9/sleep.96
-rw-r--r--share/man/man9/sleepqueue.96
-rw-r--r--share/man/man9/smr.9294
-rw-r--r--share/man/man9/socket.917
-rw-r--r--share/man/man9/stack.92
-rw-r--r--share/man/man9/store.92
-rw-r--r--share/man/man9/style.924
-rw-r--r--share/man/man9/style.lua.910
-rw-r--r--share/man/man9/superio.94
-rw-r--r--share/man/man9/swi.941
-rw-r--r--share/man/man9/sx.92
-rw-r--r--share/man/man9/syscall_helper_register.92
-rw-r--r--share/man/man9/sysctl.917
-rw-r--r--share/man/man9/sysctl_add_oid.92
-rw-r--r--share/man/man9/sysctl_ctx_init.92
-rw-r--r--share/man/man9/taskqueue.92
-rw-r--r--share/man/man9/tcp_functions.92
-rw-r--r--share/man/man9/thread_exit.92
-rw-r--r--share/man/man9/time.92
-rw-r--r--share/man/man9/tvtohz.96
-rw-r--r--share/man/man9/ucred.92
-rw-r--r--share/man/man9/uidinfo.92
-rw-r--r--share/man/man9/uio.92
-rw-r--r--share/man/man9/unr.973
-rw-r--r--share/man/man9/usbdi.94
-rw-r--r--share/man/man9/vaccess.921
-rw-r--r--share/man/man9/vaccess_acl_nfs4.92
-rw-r--r--share/man/man9/vaccess_acl_posix1e.92
-rw-r--r--share/man/man9/vflush.92
-rw-r--r--share/man/man9/vfs_busy.92
-rw-r--r--share/man/man9/vfs_getnewfsid.92
-rw-r--r--share/man/man9/vfs_getopt.92
-rw-r--r--share/man/man9/vfs_getvfs.92
-rw-r--r--share/man/man9/vfs_mountedfrom.92
-rw-r--r--share/man/man9/vfs_rootmountalloc.92
-rw-r--r--share/man/man9/vfs_suser.92
-rw-r--r--share/man/man9/vfs_timestamp.92
-rw-r--r--share/man/man9/vfs_unbusy.92
-rw-r--r--share/man/man9/vfs_unmountall.92
-rw-r--r--share/man/man9/vfsconf.92
-rw-r--r--share/man/man9/vget.92
-rw-r--r--share/man/man9/vgone.92
-rw-r--r--share/man/man9/vhold.92
-rw-r--r--share/man/man9/vinvalbuf.92
-rw-r--r--share/man/man9/vm_fault_prefault.92
-rw-r--r--share/man/man9/vm_map.92
-rw-r--r--share/man/man9/vm_map_check_protection.92
-rw-r--r--share/man/man9/vm_map_delete.92
-rw-r--r--share/man/man9/vm_map_entry_resize_free.92
-rw-r--r--share/man/man9/vm_map_find.92
-rw-r--r--share/man/man9/vm_map_findspace.92
-rw-r--r--share/man/man9/vm_map_inherit.92
-rw-r--r--share/man/man9/vm_map_init.92
-rw-r--r--share/man/man9/vm_map_insert.92
-rw-r--r--share/man/man9/vm_map_lock.92
-rw-r--r--share/man/man9/vm_map_lookup.92
-rw-r--r--share/man/man9/vm_map_madvise.92
-rw-r--r--share/man/man9/vm_map_max.92
-rw-r--r--share/man/man9/vm_map_protect.92
-rw-r--r--share/man/man9/vm_map_remove.92
-rw-r--r--share/man/man9/vm_map_simplify_entry.92
-rw-r--r--share/man/man9/vm_map_stack.92
-rw-r--r--share/man/man9/vm_map_submap.92
-rw-r--r--share/man/man9/vm_map_sync.92
-rw-r--r--share/man/man9/vm_map_wire.92
-rw-r--r--share/man/man9/vm_page_aflag.92
-rw-r--r--share/man/man9/vm_page_alloc.92
-rw-r--r--share/man/man9/vm_page_bits.92
-rw-r--r--share/man/man9/vm_page_busy.92
-rw-r--r--share/man/man9/vm_page_deactivate.92
-rw-r--r--share/man/man9/vm_page_dontneed.92
-rw-r--r--share/man/man9/vm_page_free.92
-rw-r--r--share/man/man9/vm_page_grab.92
-rw-r--r--share/man/man9/vm_page_insert.92
-rw-r--r--share/man/man9/vm_page_lookup.92
-rw-r--r--share/man/man9/vm_page_rename.92
-rw-r--r--share/man/man9/vm_page_wire.92
-rw-r--r--share/man/man9/vm_set_page_size.92
-rw-r--r--share/man/man9/vmem.92
-rw-r--r--share/man/man9/vn_deallocate.92
-rw-r--r--share/man/man9/vn_fullpath.92
-rw-r--r--share/man/man9/vn_isdisk.92
-rw-r--r--share/man/man9/vnet.92
-rw-r--r--share/man/man9/vnode.92
-rw-r--r--share/man/man9/vnode_pager_purge_range.92
-rw-r--r--share/man/man9/vnode_pager_setsize.92
-rw-r--r--share/man/man9/vref.92
-rw-r--r--share/man/man9/vrefcnt.92
-rw-r--r--share/man/man9/vrele.92
-rw-r--r--share/man/man9/vslock.92
-rw-r--r--share/man/man9/watchdog.92
-rw-r--r--share/man/man9/zero_region.92
-rw-r--r--share/man/man9/zone.948
1461 files changed, 13607 insertions, 10464 deletions
diff --git a/share/man/Makefile b/share/man/Makefile
index 59a1ab9dbc36..cf91101a27f0 100644
--- a/share/man/Makefile
+++ b/share/man/Makefile
@@ -1,5 +1,3 @@
-# @(#)Makefile 8.2 (Berkeley) 4/16/94
-# $FreeBSD$
.include <src.opts.mk>
@@ -12,8 +10,16 @@ MAKEWHATIS?= makewhatis
makedb:
.if ${MK_MAN_UTILS} != "no"
${MAKEWHATIS} ${DESTDIR}${BINDIR}/man
+.if defined(NO_ROOT) && defined(METALOG)
+ echo ".${DISTBASE}${BINDIR}/man/mandoc.db type=file mode=0644 uname=root gname=wheel" | \
+ cat -l >> ${METALOG}
+.endif
.if ${MK_OPENSSL} != "no"
${MAKEWHATIS} ${DESTDIR}${BINDIR}/openssl/man
+.if defined(NO_ROOT) && defined(METALOG)
+ echo ".${DISTBASE}${BINDIR}/openssl/man/mandoc.db type=file mode=0644 uname=root gname=wheel" | \
+ cat -l >> ${METALOG}
+.endif
.endif
.endif
diff --git a/share/man/man1/Makefile b/share/man/man1/Makefile
index fb94799dc18b..04f05920c9a4 100644
--- a/share/man/man1/Makefile
+++ b/share/man/man1/Makefile
@@ -1,5 +1,3 @@
-# @(#)Makefile 8.1 (Berkeley) 6/5/93
-# $FreeBSD$
.include <src.opts.mk>
diff --git a/share/man/man1/Makefile.depend b/share/man/man1/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man1/Makefile.depend
+++ b/share/man/man1/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man1/builtin.1 b/share/man/man1/builtin.1
index 1eda275ae2ae..d546548ab4e5 100644
--- a/share/man/man1/builtin.1
+++ b/share/man/man1/builtin.1
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 21, 2010
.Dt BUILTIN 1
.Os
diff --git a/share/man/man1/intro.1 b/share/man/man1/intro.1
index 8fa293efe6f6..65e77ac606b7 100644
--- a/share/man/man1/intro.1
+++ b/share/man/man1/intro.1
@@ -1,3 +1,6 @@
+.\"-
+.\" SPDX-License-Identifier: BSD-3-Clause
+.\"
.\" Copyright (c) 1991, 1993
.\" The Regents of the University of California. All rights reserved.
.\"
@@ -25,10 +28,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)intro.1 8.2 (Berkeley) 12/30/93
-.\" $FreeBSD$
-.\"
-.Dd October 21, 2001
+.Dd April 12, 2024
.Dt INTRO 1
.Os
.Sh NAME
@@ -37,9 +37,9 @@
.Sh DESCRIPTION
Section one of the manual contains most of the commands
which comprise the
-.Bx
+.Fx
user environment.
-Some of the commands included in section one are
+Some of the commands included with the system in section one are
text editors, command shell interpreters,
searching and sorting tools,
file manipulation commands,
@@ -49,6 +49,16 @@ compilers and compiler tools,
formatted output tools,
and line printer commands.
.Pp
+Tens of thousands of additional commands are available to be installed
+with
+.Xr pkg 8 ,
+or compiled with the
+.Xr ports 7
+collection.
+Some of which include web browsers, office suites, calendars,
+conferencing utilities, integrated development environments,
+media players, audio and video processing suites, etc.
+.Pp
All commands set a status value upon exit which may be tested
to see if the command completed normally.
Traditionally, the value 0 signifies successful
@@ -56,10 +66,23 @@ completion of the command, while a value >0 indicates an error.
Some commands attempt to describe the nature of the failure by using
exit codes as defined in
.Xr sysexits 3 ,
-while others simply set the status to an arbitrary value >0 (typically 1).
+while others simply set the status to an arbitrary value >0
+.Pq typically 1 .
+.Sh FILES
+.Bl -tag -width "/usr/local/bin/tab" -compact
+.It Pa /bin/
+Commands fundamental to single- and multi-user modes.
+.It Pa /usr/bin/
+General commands included with the base system.
+.It Pa /usr/local/bin/
+Locally installed commands from
+.Xr pkg 8 or
+.Xr ports 7 .
+.El
.Sh SEE ALSO
.Xr apropos 1 ,
.Xr man 1 ,
+.Xr which 1 ,
.Xr intro 2 ,
.Xr intro 3 ,
.Xr sysexits 3 ,
@@ -67,14 +90,16 @@ while others simply set the status to an arbitrary value >0 (typically 1).
.Xr intro 5 ,
.Xr intro 6 ,
.Xr intro 7 ,
+.Xr ports 7 ,
.Xr security 7 ,
.Xr intro 8 ,
+.Xr pkg 8 ,
.Xr intro 9
.Pp
Tutorials in the
.%T "UNIX User's Manual Supplementary Documents" .
.Sh HISTORY
The
-.Nm
-manual page appeared in
+.Nm Ns Pq 1
+manual page first appeared in
.At v6 .
diff --git a/share/man/man3/ATOMIC_VAR_INIT.3 b/share/man/man3/ATOMIC_VAR_INIT.3
index e2786027a423..b3dd242342f7 100644
--- a/share/man/man3/ATOMIC_VAR_INIT.3
+++ b/share/man/man3/ATOMIC_VAR_INIT.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 27, 2011
.Dt ATOMIC_VAR_INIT 3
.Os
diff --git a/share/man/man3/CMSG_DATA.3 b/share/man/man3/CMSG_DATA.3
index 92c5b9736da3..27e15613217e 100644
--- a/share/man/man3/CMSG_DATA.3
+++ b/share/man/man3/CMSG_DATA.3
@@ -1,7 +1,5 @@
.\" Written by Jared Yanovich <jaredy@openbsd.org>
.\" Public domain, July 3, 2005
-.\"
-.\" $FreeBSD$
.Dd March 13, 2020
.Dt CMSG_DATA 3
.Os
@@ -165,7 +163,7 @@ main()
close(hellofd[1]);
if (read(hellofd[0], buf, HELLOLEN) == -1)
- err(EX_IOERR, "faild to receive 'hello'");
+ err(EX_IOERR, "failed to receive 'hello'");
printf("parent: received '%s'\\n", buf);
break;
}
diff --git a/share/man/man3/Makefile b/share/man/man3/Makefile
index fa4f751ce553..5c8dced71743 100644
--- a/share/man/man3/Makefile
+++ b/share/man/man3/Makefile
@@ -1,5 +1,3 @@
-# @(#)Makefile 8.2 (Berkeley) 12/13/93
-# $FreeBSD$
.include <src.opts.mk>
@@ -27,8 +25,10 @@ MAN= arb.3 \
queue.3 \
sigevent.3 \
siginfo.3 \
+ snl.3 \
stats.3 \
stdarg.3 \
+ stdckdint.3 \
sysexits.3 \
tgmath.3 \
timeradd.3 \
@@ -215,6 +215,7 @@ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \
queue.3 LIST_NEXT.3 \
queue.3 LIST_PREV.3 \
queue.3 LIST_REMOVE.3 \
+ queue.3 LIST_REPLACE.3 \
queue.3 LIST_SWAP.3 \
queue.3 SLIST_CLASS_ENTRY.3 \
queue.3 SLIST_CLASS_HEAD.3 \
@@ -283,6 +284,7 @@ MLINKS+= queue.3 LIST_CLASS_ENTRY.3 \
queue.3 TAILQ_NEXT.3 \
queue.3 TAILQ_PREV.3 \
queue.3 TAILQ_REMOVE.3 \
+ queue.3 TAILQ_REPLACE.3 \
queue.3 TAILQ_SWAP.3
MLINKS+= stats.3 stats_tpl_alloc.3 \
stats.3 stats_tpl_fetch_allocid.3 \
@@ -310,6 +312,9 @@ MLINKS+= stdarg.3 va_arg.3 \
stdarg.3 va_end.3 \
stdarg.3 varargs.3 \
stdarg.3 va_start.3
+MLINKS+= stdckdint.3 ckd_add.3 \
+ stdckdint.3 ckd_sub.3 \
+ stdckdint.3 ckd_mul.3
MLINKS+= timeradd.3 timerclear.3 \
timeradd.3 timercmp.3 \
timeradd.3 timerisset.3 \
@@ -320,6 +325,7 @@ MLINKS+= timeradd.3 timerclear.3 \
timeradd.3 timespecisset.3 \
timeradd.3 timespeccmp.3
MLINKS+= tree.3 RB_AUGMENT.3 \
+ tree.3 RB_AUGMENT_CHECK.3 \
tree.3 RB_EMPTY.3 \
tree.3 RB_ENTRY.3 \
tree.3 RB_FIND.3 \
@@ -446,6 +452,7 @@ PTHREAD_MAN= pthread.3 \
pthread_set_name_np.3 \
pthread_setspecific.3 \
pthread_sigmask.3 \
+ pthread_sigqueue.3 \
pthread_spin_init.3 \
pthread_spin_lock.3 \
pthread_suspend_all_np.3 \
diff --git a/share/man/man3/Makefile.depend b/share/man/man3/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man3/Makefile.depend
+++ b/share/man/man3/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man3/Q_FRAWMASK.3 b/share/man/man3/Q_FRAWMASK.3
index d4def82300be..4d03b2596c80 100644
--- a/share/man/man3/Q_FRAWMASK.3
+++ b/share/man/man3/Q_FRAWMASK.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt Q_FRAWMASK 3
.Os
diff --git a/share/man/man3/Q_IFRAWMASK.3 b/share/man/man3/Q_IFRAWMASK.3
index 522b2b480ea3..b6885084ff43 100644
--- a/share/man/man3/Q_IFRAWMASK.3
+++ b/share/man/man3/Q_IFRAWMASK.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt Q_IFRAWMASK 3
.Os
diff --git a/share/man/man3/Q_INI.3 b/share/man/man3/Q_INI.3
index 867d5e20031c..b7794d729f48 100644
--- a/share/man/man3/Q_INI.3
+++ b/share/man/man3/Q_INI.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt Q_INI 3
.Os
diff --git a/share/man/man3/Q_IRAWMASK.3 b/share/man/man3/Q_IRAWMASK.3
index 16a47e06a733..a15b885c946e 100644
--- a/share/man/man3/Q_IRAWMASK.3
+++ b/share/man/man3/Q_IRAWMASK.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt Q_IRAWMASK 3
.Os
diff --git a/share/man/man3/Q_QABS.3 b/share/man/man3/Q_QABS.3
index 8d5c2883d4a5..31219e1f9218 100644
--- a/share/man/man3/Q_QABS.3
+++ b/share/man/man3/Q_QABS.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt Q_QABS 3
.Os
diff --git a/share/man/man3/Q_QADDI.3 b/share/man/man3/Q_QADDI.3
index 2e03b2e7a424..5b1bc8c26023 100644
--- a/share/man/man3/Q_QADDI.3
+++ b/share/man/man3/Q_QADDI.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt Q_QADDI 3
.Os
diff --git a/share/man/man3/Q_QADDQ.3 b/share/man/man3/Q_QADDQ.3
index 26db644f34e3..d6a7df7f5e98 100644
--- a/share/man/man3/Q_QADDQ.3
+++ b/share/man/man3/Q_QADDQ.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt Q_QADDQ 3
.Os
diff --git a/share/man/man3/Q_SIGNED.3 b/share/man/man3/Q_SIGNED.3
index e8f79c55cbc3..528757dccbd5 100644
--- a/share/man/man3/Q_SIGNED.3
+++ b/share/man/man3/Q_SIGNED.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt Q_SIGNED 3
.Os
diff --git a/share/man/man3/Q_SIGNSHFT.3 b/share/man/man3/Q_SIGNSHFT.3
index a12a182fe7d1..ce355560a656 100644
--- a/share/man/man3/Q_SIGNSHFT.3
+++ b/share/man/man3/Q_SIGNSHFT.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt Q_SIGNSHFT 3
.Os
diff --git a/share/man/man3/arb.3 b/share/man/man3/arb.3
index 14ea77c2b35a..e33ef3a37f7d 100644
--- a/share/man/man3/arb.3
+++ b/share/man/man3/arb.3
@@ -29,8 +29,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 14, 2019
.Dt ARB 3
.Os
@@ -266,7 +264,7 @@ variant includes a suffix denoting the signed integer data type size
used to store array indices.
For example,
.Fn ARB_HEAD8
-creates a red-black tree head strucutre with 8-bit signed array indices capable
+creates a red-black tree head structure with 8-bit signed array indices capable
of indexing up to 128 entries.
.Pp
The
diff --git a/share/man/man3/assert.3 b/share/man/man3/assert.3
index cc23f96360f0..f219aa1d6743 100644
--- a/share/man/man3/assert.3
+++ b/share/man/man3/assert.3
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)assert.3 8.1 (Berkeley) 6/9/93
-.\" $FreeBSD$
-.\"
.Dd April 20, 2021
.Dt ASSERT 3
.Os
@@ -123,19 +120,15 @@ If none is provided, it only points at the constraint.
.Xr abort2 2 ,
.Xr abort 3
.Sh STANDARDS
-.Rs
The
.Fn assert
macro conforms to
.St -isoC-99 .
-.Re
.Pp
-.Rs
The
.Fn static_assert
macro conforms to
.St -isoC-2011 .
-.Re
.Sh HISTORY
An
.Nm
diff --git a/share/man/man3/bitstring.3 b/share/man/man3/bitstring.3
index c6f0dfe45c12..bfc0eb5ca139 100644
--- a/share/man/man3/bitstring.3
+++ b/share/man/man3/bitstring.3
@@ -55,10 +55,7 @@
.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGES.
.\"
-.\" @(#)bitstring.3 8.1 (Berkeley) 7/19/93
-.\" $FreeBSD$
-.\"
-.Dd August 8, 2021
+.Dd November 21, 2023
.Dt BITSTRING 3
.Os
.Sh NAME
@@ -86,49 +83,49 @@
.Sh SYNOPSIS
.In bitstring.h
.Ft bitstr_t *
-.Fn bit_alloc "int nbits"
+.Fn bit_alloc "size_t nbits"
.Ft void
-.Fn bit_decl "bitstr_t *name" "int nbits"
+.Fn bit_decl "bitstr_t *name" "size_t nbits"
.Ft void
-.Fn bit_clear "bitstr_t *name" "int bit"
+.Fn bit_clear "bitstr_t *name" "size_t bit"
.Ft void
-.Fn bit_count "bitstr_t *name" "int count" "int nbits" "int *value"
+.Fn bit_count "bitstr_t *name" "size_t count" "size_t nbits" "ssize_t *value"
.Ft void
-.Fn bit_ffc "bitstr_t *name" "int nbits" "int *value"
+.Fn bit_ffc "bitstr_t *name" "size_t nbits" "ssize_t *value"
.Ft void
-.Fn bit_ffs "bitstr_t *name" "int nbits" "int *value"
+.Fn bit_ffs "bitstr_t *name" "size_t nbits" "ssize_t *value"
.Ft void
-.Fn bit_ffc_at "bitstr_t *name" "int start" "int nbits" "int *value"
+.Fn bit_ffc_at "bitstr_t *name" "size_t start" "size_t nbits" "ssize_t *value"
.Ft void
-.Fn bit_ffs_at "bitstr_t *name" "int start" "int nbits" "int *value"
+.Fn bit_ffs_at "bitstr_t *name" "size_t start" "size_t nbits" "ssize_t *value"
.Ft void
-.Fn bit_ff_at "bitstr_t *name" "int start" "int nbits" "int match" "int *value"
+.Fn bit_ff_at "bitstr_t *name" "size_t start" "size_t nbits" "int match" "ssize_t *value"
.Ft void
-.Fn bit_ffc_area "bitstr_t *name" "int nbits" "int size" "int *value"
+.Fn bit_ffc_area "bitstr_t *name" "size_t nbits" "size_t size" "ssize_t *value"
.Ft void
-.Fn bit_ffs_area "bitstr_t *name" "int nbits" "int size" "int *value"
+.Fn bit_ffs_area "bitstr_t *name" "size_t nbits" "size_t size" "ssize_t *value"
.Ft void
-.Fn bit_ffc_area_at "bitstr_t *name" "int start" "int nbits" "int size" "int *value"
+.Fn bit_ffc_area_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t size" "ssize_t *value"
.Ft void
-.Fn bit_ffs_area_at "bitstr_t *name" "int start" "int nbits" "int size" "int *value"
+.Fn bit_ffs_area_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t size" "ssize_t *value"
.Ft void
-.Fn bit_ff_area_at "bitstr_t *name" "int start" "int nbits" "int size" "int match" "int *value"
-.Fn bit_foreach "bitstr_t *name" "int nbits" "int var"
-.Fn bit_foreach_at "bitstr_t *name" "int start" "int nbits" "int var"
-.Fn bit_foreach_unset "bitstr_t *name" "int nbits" "int var"
-.Fn bit_foreach_unset_at "bitstr_t *name" "int start" "int nbits" "int var"
+.Fn bit_ff_area_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t size" "int match" "ssize_t *value"
+.Fn bit_foreach "bitstr_t *name" "size_t nbits" "size_t var"
+.Fn bit_foreach_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t var"
+.Fn bit_foreach_unset "bitstr_t *name" "size_t nbits" "size_t var"
+.Fn bit_foreach_unset_at "bitstr_t *name" "size_t start" "size_t nbits" "size_t var"
.Ft void
-.Fn bit_nclear "bitstr_t *name" "int start" "int stop"
+.Fn bit_nclear "bitstr_t *name" "size_t start" "size_t stop"
.Ft void
-.Fn bit_nset "bitstr_t *name" "int start" "int stop"
+.Fn bit_nset "bitstr_t *name" "size_t start" "size_t stop"
.Ft int
-.Fn bit_ntest "bitstr_t *name" "int start" "int stop" "int match"
+.Fn bit_ntest "bitstr_t *name" "size_t start" "size_t stop" "int match"
.Ft void
-.Fn bit_set "bitstr_t *name" "int bit"
+.Fn bit_set "bitstr_t *name" "size_t bit"
.Ft int
-.Fn bitstr_size "int nbits"
+.Fn bitstr_size "size_t nbits"
.Ft int
-.Fn bit_test "bitstr_t *name" "int bit"
+.Fn bit_test "bitstr_t *name" "size_t bit"
.Sh DESCRIPTION
These macros operate on strings of bits.
.Pp
diff --git a/share/man/man3/end.3 b/share/man/man3/end.3
index 66ad47b5a528..538003424724 100644
--- a/share/man/man3/end.3
+++ b/share/man/man3/end.3
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)end.3 6.4 (Berkeley) 1/24/94
-.\" $FreeBSD$
-.\"
.Dd August 28, 2000
.Dt END 3
.Os
diff --git a/share/man/man3/fpgetround.3 b/share/man/man3/fpgetround.3
index c6f013072143..c827122e462f 100644
--- a/share/man/man3/fpgetround.3
+++ b/share/man/man3/fpgetround.3
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)fpgetround.3 1.0 (Berkeley) 9/23/93
-.\" $FreeBSD$
-.\"
.Dd December 3, 2010
.Dt FPGETROUND 3
.Os
diff --git a/share/man/man3/intro.3 b/share/man/man3/intro.3
index d6dff3ab3782..39897eb565cd 100644
--- a/share/man/man3/intro.3
+++ b/share/man/man3/intro.3
@@ -24,11 +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.
-.\"
-.\" @(#)intro.3 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
-.Dd December 18, 2021
+.Dd November 16, 2023
.Dt INTRO 3
.Os
.Sh NAME
@@ -231,6 +227,13 @@ See
The POSIX threads library.
See
.Xr pthread 3 .
+.It Em libstdthreads
+.Pq Fl l Ns Ar stdthreads
+The ISO C11 standard
+.In threads.h
+library.
+See
+.Xr thrd_create 3 .
.It Em libsysdecode
.Pq Fl l Ns Ar sysdecode
The system argument decoding library.
@@ -272,13 +275,105 @@ the math library
.It Pa /usr/lib/libm_p.a
the math library compiled for profiling
.El
+.Sh LIBRARY TYPES
+The system libraries are located in
+.Pa /lib
+and
+.Pa /usr/lib .
+A library has the following naming convention:
+.Bd -unfilled -offset indent
+libc.so.7
+.Ed
+.Pp
+Libraries with an
+.Sq .a
+suffix are static.
+When a program is linked against a static library, all necessary library code
+will be included in the binary.
+This means the binary can be run even when the libraries are unavailable.
+However, it can be inefficient with both disk space and memory usage
+during execution.
+The C compiler,
+.Xr cc 1 ,
+can be instructed to link statically by specifying the
+.Fl static
+flag.
+.Pp
+Libraries with a
+.Sq .so.X
+suffix are dynamic libraries.
+When code is linked dynamically, the library code that the application needs
+is not included in the binary.
+Instead, data structures are added containing information about which dynamic
+libraries to link with.
+When the binary is executed, the run-time linker
+.Xr ld.so 1
+reads these data structures and loads them into the
+process virtual address space.
+.Xr rtld 1
+loads the shared libraries when the program is executed.
+.Pp
+.Sq X
+represents the library version number of the library.
+In the example above, a binary linked with
+.Pa libc.so.8
+would not be usable on a system where only
+.Pa libc.so.7
+is available.
+.Pp
+The advantages of dynamic libraries are that multiple instances of the same
+library can share address space, and the physical size of the binary is
+smaller.
+A namespace per shared library is available via hidden visibility,
+allowing multiple compilation units in a library to share things without
+making them available to other libraries.
+It is possible to load libraries dynamically via
+.Xr dlopen 3 .
+The disadvantage is the added complexity that comes with loading the
+libraries dynamically, and the extra time taken to load the libraries.
+Of course, if the libraries are not available, the binary will be unable
+to execute.
+Calls across shared libraries are also slightly slower and cannot be
+inlined, not even with link time optimization.
+The C compiler,
+.Xr cc 1 ,
+can be instructed to link dynamically by specifying the
+.Fl shared
+flag.
+.Pp
+Shared libraries, as well as static libraries on architectures which produce
+position-independent executables
+.Pq PIEs
+by default, contain position-independent code
+.Pq PIC .
+Normally, compilers produce relocatable code.
+Relocatable code needs to be modified at run-time, depending on where in
+memory it is to be run.
+The C compiler,
+.Xr cc 1 ,
+can be instructed to generate PIC code by specifying the
+.Fl fPIC
+flag.
+.Pp
+Static libraries are generated using the
+.Xr ar 1
+utility.
+The libraries contain an index to the contents of the library,
+stored within the library itself.
+The index lists each symbol defined by a member of a library that is a
+relocatable object file.
+This speeds up linking to the library, and allows routines in the library
+to call each other regardless of their placement within the library.
.Sh SEE ALSO
+.Xr ar 1 ,
.Xr cc 1 ,
.Xr ld 1 ,
.Xr nm 1 ,
.Xr intro 2 ,
.Xr math 3 ,
-.Xr stdio 3
+.Xr stdio 3 ,
+.Xr make.conf 5 ,
+.Xr src.conf 5
.Sh HISTORY
An
.Nm
diff --git a/share/man/man3/makedev.3 b/share/man/man3/makedev.3
index 8ce9c554a094..4cf851f87508 100644
--- a/share/man/man3/makedev.3
+++ b/share/man/man3/makedev.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 3, 2017
.Dt MAKEDEV 3
.Os
diff --git a/share/man/man3/offsetof.3 b/share/man/man3/offsetof.3
index ee5958f7b932..f757d58ac53d 100644
--- a/share/man/man3/offsetof.3
+++ b/share/man/man3/offsetof.3
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 18, 2010
.Dt OFFSETOF 3
.Os
diff --git a/share/man/man3/pthread.3 b/share/man/man3/pthread.3
index 6b7b82eb27f5..1cb13981e18c 100644
--- a/share/man/man3/pthread.3
+++ b/share/man/man3/pthread.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD 3
.Os
diff --git a/share/man/man3/pthread_affinity_np.3 b/share/man/man3/pthread_affinity_np.3
index 0a52add2ee3c..86c43d2255b9 100644
--- a/share/man/man3/pthread_affinity_np.3
+++ b/share/man/man3/pthread_affinity_np.3
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd October 12, 2021
+.Dd January 29, 2023
.Dt PTHREAD_AFFINITY_NP 3
.Os
.Sh NAME
@@ -50,14 +48,19 @@ Masks of type
are composed using the
.Dv CPU_SET
macros.
-The kernel tolerates large sets as long as all CPUs specified
-in the set exist.
-Sets smaller than the kernel uses generate an error on calls to
+If the user-supplied mask is not large enough to fit all of the matching CPUs,
.Fn pthread_getaffinity_np
-even if the result set would fit within the user supplied set.
+fails with
+.Er ERANGE .
Calls to
.Fn pthread_setaffinity_np
-tolerate small sets with no restrictions.
+tolerate masks of any size with no restrictions.
+The kernel uses the meaningful part of the mask, where the upper bound is
+the maximum CPU id present in the system.
+If bits for non-existing CPUs are set, calls to
+.Fn pthread_setaffinity_np
+fail with
+.Er EINVAL .
.Pp
The supplied mask should have a size of
.Fa cpusetsize
@@ -96,6 +99,12 @@ and
.Fn pthread_setaffinity_np
functions may fail if:
.Bl -tag -width Er
+.It Bq Er EINVAL
+The
+.Fa cpusetp
+argument specified when calling
+.Fn pthread_setaffinity_np
+was not a valid value.
.It Bq Er EDEADLK
The
.Fn pthread_setaffinity_np
@@ -112,7 +121,7 @@ argument could not be found.
.It Bq Er ERANGE
The
.Fa cpusetsize
-was either preposterously large or smaller than the kernel set size.
+was smaller than needed to fit all of the matching CPUs.
.It Bq Er EPERM
The calling thread did not have the credentials required to complete the
operation.
diff --git a/share/man/man3/pthread_atfork.3 b/share/man/man3/pthread_atfork.3
index 2e783caccd54..5edec13e9cf5 100644
--- a/share/man/man3/pthread_atfork.3
+++ b/share/man/man3/pthread_atfork.3
@@ -32,8 +32,6 @@
.\" the referee document. The original Standard can be obtained online at
.\" http://www.opengroup.org/unix/online.html.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 21, 2004
.Dt PTHREAD_ATFORK 3
.Os
diff --git a/share/man/man3/pthread_attr.3 b/share/man/man3/pthread_attr.3
index 6ce889386d5c..828195c260a5 100644
--- a/share/man/man3/pthread_attr.3
+++ b/share/man/man3/pthread_attr.3
@@ -24,8 +24,6 @@
.\" WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.Dd August 17, 2018
.Dt PTHREAD_ATTR 3
.Os
diff --git a/share/man/man3/pthread_attr_affinity_np.3 b/share/man/man3/pthread_attr_affinity_np.3
index 2c85aee9ac19..0589213c6171 100644
--- a/share/man/man3/pthread_attr_affinity_np.3
+++ b/share/man/man3/pthread_attr_affinity_np.3
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 27, 2022
+.Dd January 29, 2023
.Dt PTHREAD_ATTR_AFFINITY_NP 3
.Os
.Sh NAME
@@ -52,17 +50,18 @@ are composed using the
.Dv CPU_SET
macros.
If the user-supplied mask is not large enough to fit all of the matching CPUs,
-.Fn cpuset_getaffinity
+.Fn pthread_attr_getaffinity_np
fails with
.Er ERANGE .
Calls to
-.Fn cpuset_setaffinity
+.Fn pthread_attr_setaffinity_np
tolerate masks of any size with no restrictions.
-The kernel uses the meaningful part of the mask, where the upper bound is
+.Fn pthread_attr_setaffinity_np
+uses the meaningful part of the mask, where the upper bound is
the maximum CPU id present in the system.
If bits for non-existing CPUs are set, calls to
-.Fn cpuset_setaffinity
-fails with
+.Fn pthread_attr_setaffinity_np
+fail with
.Er EINVAL .
.Pp
The supplied mask should have a size of
diff --git a/share/man/man3/pthread_attr_get_np.3 b/share/man/man3/pthread_attr_get_np.3
index 336c3626a27c..07153586c1b2 100644
--- a/share/man/man3/pthread_attr_get_np.3
+++ b/share/man/man3/pthread_attr_get_np.3
@@ -1,5 +1,10 @@
.\" Copyright (c) 2002,2003 Alexey Zelkin <phantom@FreeBSD.org>
.\" All rights reserved.
+.\" Copyright (c) 2024 The FreeBSD Foundation
+.\"
+.\" Portions of this documentation were written by Olivier Certner
+.\" <olce@FreeBSD.org> at Kumacom SARL under sponsorship from the
+.\" FreeBSD Foundation.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -22,14 +27,12 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd October 12, 2021
+.Dd January 5, 2024
.Dt PTHREAD_ATTR_GET_NP 3
.Os
.Sh NAME
.Nm pthread_attr_get_np
-.Nd get attributes of existent thread
+.Nd get attributes of an existing thread
.Sh LIBRARY
.Lb libpthread
.Sh SYNOPSIS
@@ -39,51 +42,54 @@
.Sh DESCRIPTION
The
.Fn pthread_attr_get_np
-function is used to get existent thread's attributes.
-Most fields of
-.Vt pthread_attr_t
-structure are exact values of attributes provided at thread creation
-time (as parameter to
-.Xr pthread_create 3
-function), except for the stack address.
-.Pp
-Value returned as
-.Fa dst
-is supposed to be used in conjunction with
-.Fn pthread_attr_get*
-functions to retrieve individual values from
+function is used to retrieve the attributes of the specified thread into an
+existing
.Vt pthread_attr_t
structure.
-Parameter
-.Fa dst
-should point to allocated memory area big enough to fit this structure.
+The attributes' values are the current ones for the target thread, except for
+the stack top address if not properly aligned for the architecture, since in
+this case its value has been adjusted internally before use.
.Pp
-It is HIGHLY RECOMMENDED to use
+Argument
+.Fa dst
+must be a pointer to a valid attributes object
+.Po
+it was initialized at some point by
.Xr pthread_attr_init 3
-function to allocate attribute storage.
-.Sh IMPLEMENTATION NOTES
-The
-.Fn pthread_attr_get_np
-function will always return a pointer to the thread's real stack address,
-regardless of its value in the original attributes structure.
+and was not destroyed since then
+.Pc .
+After a successful call to
+.Fn pthread_attr_get_np ,
+the individual attributes' values can be retrieved as usual via the
+corresponding accessor functions as documented in
+.Xr pthread_attr 3 .
+After a failed call to
+.Fn pthread_attr_get_np ,
+the object pointed to by
+.Fa dst
+is left unmodified, and can continue to be used as if the failed call never
+happened.
.Sh RETURN VALUES
If successful,
.Fn pthread_attr_get_np
function returns 0.
Otherwise, an error number is returned to indicate the error.
.Sh EXAMPLES
+This function retrieves the stack size of the thread specified by the
+.Fa pid
+argument:
.Bd -literal
size_t
-my_thread_stack_size(pthread_t pid)
+my_thread_stack_size(pthread_t tid)
{
- pthread_attr_t attr;
- size_t size;
+ pthread_attr_t attr;
+ size_t size;
- pthread_attr_init(&attr);
- pthread_attr_get_np(pid, &attr);
- pthread_attr_getstacksize(&attr, &size);
- pthread_attr_destroy(&attr);
- return(size);
+ pthread_attr_init(&attr);
+ pthread_attr_get_np(tid, &attr);
+ pthread_attr_getstacksize(&attr, &size);
+ pthread_attr_destroy(&attr);
+ return (size);
}
.Ed
.Sh ERRORS
@@ -92,12 +98,16 @@ The
function will fail if:
.Bl -tag -width Er
.It Bq Er EINVAL
-Invalid value for one of given parameters.
+One of the arguments has an invalid value.
.It Bq Er ESRCH
No thread could be found corresponding to that specified by the given
thread ID.
+.It Bq Er ENOMEM
+There was not enough memory to allocate additional storage needed by the attributes
+object's implementation.
.El
.Sh SEE ALSO
+.Xr pthread_attr 3 ,
.Xr pthread_attr_destroy 3 ,
.Xr pthread_attr_getdetachstate 3 ,
.Xr pthread_attr_getinheritsched 3 ,
@@ -113,4 +123,6 @@ thread ID.
The
.Fn pthread_attr_get_np
function and this manual page were written by
-.An Alexey Zelkin Aq Mt phantom@FreeBSD.org .
+.An Alexey Zelkin Aq Mt phantom@FreeBSD.org ,
+and the latter was revised by
+.An Olivier Certner Aq Mt olce@FreeBSD.org .
diff --git a/share/man/man3/pthread_attr_setcreatesuspend_np.3 b/share/man/man3/pthread_attr_setcreatesuspend_np.3
index d2c6a6f74694..3d2f84a4ad46 100644
--- a/share/man/man3/pthread_attr_setcreatesuspend_np.3
+++ b/share/man/man3/pthread_attr_setcreatesuspend_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_ATTR_SETCREATESUSPEND_NP 3
.Os
diff --git a/share/man/man3/pthread_barrier_destroy.3 b/share/man/man3/pthread_barrier_destroy.3
index fbbf88c00e9b..06c8b97e81ed 100644
--- a/share/man/man3/pthread_barrier_destroy.3
+++ b/share/man/man3/pthread_barrier_destroy.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2018
.Dt PTHREAD_BARRIER 3
.Os
diff --git a/share/man/man3/pthread_barrierattr.3 b/share/man/man3/pthread_barrierattr.3
index 3836186ef4fd..1f5243f99873 100644
--- a/share/man/man3/pthread_barrierattr.3
+++ b/share/man/man3/pthread_barrierattr.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2018
.Dt PTHREAD_BARRIERATTR 3
.Os
diff --git a/share/man/man3/pthread_cancel.3 b/share/man/man3/pthread_cancel.3
index e737f5e36429..33a00300cd65 100644
--- a/share/man/man3/pthread_cancel.3
+++ b/share/man/man3/pthread_cancel.3
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.Dd January 17, 1999
.Dt PTHREAD_CANCEL 3
.Os
diff --git a/share/man/man3/pthread_cleanup_pop.3 b/share/man/man3/pthread_cleanup_pop.3
index 2b7756a24903..2747624b0947 100644
--- a/share/man/man3/pthread_cleanup_pop.3
+++ b/share/man/man3/pthread_cleanup_pop.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 25, 2014
.Dt PTHREAD_CLEANUP_POP 3
.Os
diff --git a/share/man/man3/pthread_cleanup_push.3 b/share/man/man3/pthread_cleanup_push.3
index 47f35db98d8a..327c2fc3ce59 100644
--- a/share/man/man3/pthread_cleanup_push.3
+++ b/share/man/man3/pthread_cleanup_push.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 25, 2014
.Dt PTHREAD_CLEANUP_PUSH 3
.Os
diff --git a/share/man/man3/pthread_cond_broadcast.3 b/share/man/man3/pthread_cond_broadcast.3
index bbd274103ac3..77c1a2c2b216 100644
--- a/share/man/man3/pthread_cond_broadcast.3
+++ b/share/man/man3/pthread_cond_broadcast.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 28, 1998
.Dt PTHREAD_COND_BROADCAST 3
.Os
diff --git a/share/man/man3/pthread_cond_destroy.3 b/share/man/man3/pthread_cond_destroy.3
index 4ea7a87d8a26..ec07b030c1dd 100644
--- a/share/man/man3/pthread_cond_destroy.3
+++ b/share/man/man3/pthread_cond_destroy.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 28, 1998
.Dt PTHREAD_COND_DESTROY 3
.Os
diff --git a/share/man/man3/pthread_cond_init.3 b/share/man/man3/pthread_cond_init.3
index 8f13a34fd759..8d3dd79db42d 100644
--- a/share/man/man3/pthread_cond_init.3
+++ b/share/man/man3/pthread_cond_init.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2018
.Dt PTHREAD_COND_INIT 3
.Os
diff --git a/share/man/man3/pthread_cond_signal.3 b/share/man/man3/pthread_cond_signal.3
index 8ab801f91997..5eb656500ddb 100644
--- a/share/man/man3/pthread_cond_signal.3
+++ b/share/man/man3/pthread_cond_signal.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 28, 1998
.Dt PTHREAD_COND_SIGNAL 3
.Os
diff --git a/share/man/man3/pthread_cond_timedwait.3 b/share/man/man3/pthread_cond_timedwait.3
index 071f690be195..d955bf8546cd 100644
--- a/share/man/man3/pthread_cond_timedwait.3
+++ b/share/man/man3/pthread_cond_timedwait.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 9, 2010
.Dt PTHREAD_COND_TIMEDWAIT 3
.Os
diff --git a/share/man/man3/pthread_cond_wait.3 b/share/man/man3/pthread_cond_wait.3
index 9fcbc2267fd9..c09e7aa68738 100644
--- a/share/man/man3/pthread_cond_wait.3
+++ b/share/man/man3/pthread_cond_wait.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 7, 2019
.Dt PTHREAD_COND_WAIT 3
.Os
diff --git a/share/man/man3/pthread_condattr.3 b/share/man/man3/pthread_condattr.3
index b2f14c5452d0..f3b1d3639827 100644
--- a/share/man/man3/pthread_condattr.3
+++ b/share/man/man3/pthread_condattr.3
@@ -24,9 +24,7 @@
.\" WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
-.Dd May 31, 2016
+.Dd October 27, 2023
.Dt PTHREAD_CONDATTR 3
.Os
.Sh NAME
@@ -114,6 +112,10 @@ threads in the same process as the one that created the object.
The condition variable it is attached to may be accessed by
threads in processes other than the one that created the object.
.El
+See
+.Xr libthr 3
+for details of the implementation of shared condition variables,
+and their limitations.
.Sh RETURN VALUES
If successful, these functions return 0.
Otherwise, an error number is returned to indicate the error.
@@ -155,6 +157,7 @@ The value specified in
is not one of the allowed values.
.El
.Sh SEE ALSO
+.Xr libthr 3 ,
.Xr pthread_cond_init 3 ,
.Xr pthread_cond_timedwait 3
.Sh STANDARDS
diff --git a/share/man/man3/pthread_create.3 b/share/man/man3/pthread_create.3
index 3cb7760e26bc..2d43ac7b2ef9 100644
--- a/share/man/man3/pthread_create.3
+++ b/share/man/man3/pthread_create.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2018
.Dt PTHREAD_CREATE 3
.Os
diff --git a/share/man/man3/pthread_detach.3 b/share/man/man3/pthread_detach.3
index dba4aec433c1..93bead1c86cb 100644
--- a/share/man/man3/pthread_detach.3
+++ b/share/man/man3/pthread_detach.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 1996
.Dt PTHREAD_DETACH 3
.Os
diff --git a/share/man/man3/pthread_equal.3 b/share/man/man3/pthread_equal.3
index 1ed85319b961..6ef861bc016e 100644
--- a/share/man/man3/pthread_equal.3
+++ b/share/man/man3/pthread_equal.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 1996
.Dt PTHREAD_EQUAL 3
.Os
diff --git a/share/man/man3/pthread_exit.3 b/share/man/man3/pthread_exit.3
index f50947112c17..5c8f6ac44f51 100644
--- a/share/man/man3/pthread_exit.3
+++ b/share/man/man3/pthread_exit.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 15, 2014
.Dt PTHREAD_EXIT 3
.Os
diff --git a/share/man/man3/pthread_getconcurrency.3 b/share/man/man3/pthread_getconcurrency.3
index c4b23c96dbc5..c94e7b9ed17b 100644
--- a/share/man/man3/pthread_getconcurrency.3
+++ b/share/man/man3/pthread_getconcurrency.3
@@ -21,8 +21,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd April 11, 2003
.Dt PTHREAD_GETCONCURRENCY 3
.Os
diff --git a/share/man/man3/pthread_getcpuclockid.3 b/share/man/man3/pthread_getcpuclockid.3
index c36be81e58dc..b372d2dfeab7 100644
--- a/share/man/man3/pthread_getcpuclockid.3
+++ b/share/man/man3/pthread_getcpuclockid.3
@@ -32,8 +32,6 @@
.\" the referee document. The original Standard can be obtained online at
.\" http://www.opengroup.org/unix/online.html.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 21, 2012
.Dt PTHREAD_GETCPUCLOCKID 3
.Os
diff --git a/share/man/man3/pthread_getspecific.3 b/share/man/man3/pthread_getspecific.3
index 3657e13515f4..c9a46729a918 100644
--- a/share/man/man3/pthread_getspecific.3
+++ b/share/man/man3/pthread_getspecific.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 1996
.Dt PTHREAD_GETSPECIFIC 3
.Os
diff --git a/share/man/man3/pthread_getthreadid_np.3 b/share/man/man3/pthread_getthreadid_np.3
index 562f6a7ae91a..da7ae5455e6f 100644
--- a/share/man/man3/pthread_getthreadid_np.3
+++ b/share/man/man3/pthread_getthreadid_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_GETTHREADID_NP 3
.Os
diff --git a/share/man/man3/pthread_join.3 b/share/man/man3/pthread_join.3
index 4cd04eade0aa..716b171e1295 100644
--- a/share/man/man3/pthread_join.3
+++ b/share/man/man3/pthread_join.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_JOIN 3
.Os
diff --git a/share/man/man3/pthread_key_create.3 b/share/man/man3/pthread_key_create.3
index a818e1a52364..0faf0a07cac5 100644
--- a/share/man/man3/pthread_key_create.3
+++ b/share/man/man3/pthread_key_create.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 1996
.Dt PTHREAD_KEY_CREATE 3
.Os
diff --git a/share/man/man3/pthread_key_delete.3 b/share/man/man3/pthread_key_delete.3
index c7861af50ce2..884b261c54fb 100644
--- a/share/man/man3/pthread_key_delete.3
+++ b/share/man/man3/pthread_key_delete.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 1996
.Dt PTHREAD_KEY_DELETE 3
.Os
diff --git a/share/man/man3/pthread_kill.3 b/share/man/man3/pthread_kill.3
index 1ef879a2f765..cb2d76c6aa9a 100644
--- a/share/man/man3/pthread_kill.3
+++ b/share/man/man3/pthread_kill.3
@@ -24,8 +24,6 @@
.\" WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.Dd April 27, 2000
.Dt PTHREAD_KILL 3
.Os
diff --git a/share/man/man3/pthread_main_np.3 b/share/man/man3/pthread_main_np.3
index c386cb224a9b..58e3b11dfe66 100644
--- a/share/man/man3/pthread_main_np.3
+++ b/share/man/man3/pthread_main_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_MAIN_NP 3
.Os
diff --git a/share/man/man3/pthread_multi_np.3 b/share/man/man3/pthread_multi_np.3
index 065b53c49b1f..62c4fb454fb2 100644
--- a/share/man/man3/pthread_multi_np.3
+++ b/share/man/man3/pthread_multi_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_MULTI_NP 3
.Os
diff --git a/share/man/man3/pthread_mutex_consistent.3 b/share/man/man3/pthread_mutex_consistent.3
index ae614f768099..ac44a8d99718 100644
--- a/share/man/man3/pthread_mutex_consistent.3
+++ b/share/man/man3/pthread_mutex_consistent.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 27, 2017
.Dt PTHREAD_MUTEX_CONSISTENT 3
.Os
diff --git a/share/man/man3/pthread_mutex_destroy.3 b/share/man/man3/pthread_mutex_destroy.3
index d6c4bcd5e446..3627a6c8af8b 100644
--- a/share/man/man3/pthread_mutex_destroy.3
+++ b/share/man/man3/pthread_mutex_destroy.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 29, 1998
.Dt PTHREAD_MUTEX_DESTROY 3
.Os
diff --git a/share/man/man3/pthread_mutex_init.3 b/share/man/man3/pthread_mutex_init.3
index 934a323d3a3d..4133cf07713c 100644
--- a/share/man/man3/pthread_mutex_init.3
+++ b/share/man/man3/pthread_mutex_init.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2018
.Dt PTHREAD_MUTEX_INIT 3
.Os
diff --git a/share/man/man3/pthread_mutex_lock.3 b/share/man/man3/pthread_mutex_lock.3
index cd55ef8699af..ba54cd45b99c 100644
--- a/share/man/man3/pthread_mutex_lock.3
+++ b/share/man/man3/pthread_mutex_lock.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 7, 2019
.Dt PTHREAD_MUTEX_LOCK 3
.Os
diff --git a/share/man/man3/pthread_mutex_timedlock.3 b/share/man/man3/pthread_mutex_timedlock.3
index 006357659e14..b6e95edbe46e 100644
--- a/share/man/man3/pthread_mutex_timedlock.3
+++ b/share/man/man3/pthread_mutex_timedlock.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 7, 2019
.Dt PTHREAD_MUTEX_TIMEDLOCK 3
.Os
diff --git a/share/man/man3/pthread_mutex_trylock.3 b/share/man/man3/pthread_mutex_trylock.3
index 131b81653580..cd08d760595a 100644
--- a/share/man/man3/pthread_mutex_trylock.3
+++ b/share/man/man3/pthread_mutex_trylock.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 7, 2019
.Dt PTHREAD_MUTEX_TRYLOCK 3
.Os
diff --git a/share/man/man3/pthread_mutex_unlock.3 b/share/man/man3/pthread_mutex_unlock.3
index 4d3badd8aa0e..eb6866a2c90d 100644
--- a/share/man/man3/pthread_mutex_unlock.3
+++ b/share/man/man3/pthread_mutex_unlock.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 29, 2016
.Dt PTHREAD_MUTEX_UNLOCK 3
.Os
diff --git a/share/man/man3/pthread_mutexattr.3 b/share/man/man3/pthread_mutexattr.3
index 2a2c5c8d133e..8f4d0d9a06a4 100644
--- a/share/man/man3/pthread_mutexattr.3
+++ b/share/man/man3/pthread_mutexattr.3
@@ -29,9 +29,7 @@
.\" WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
-.Dd October 1, 2021
+.Dd October 27, 2023
.Dt PTHREAD_MUTEXATTR 3
.Os
.Sh NAME
@@ -134,6 +132,30 @@ all threads waiting on any mutex owned by this thread.
.El
.Pp
The
+.Fn pthread_mutexattr_setpshared
+function sets the process-shared attribute of
+.Fa attr
+to the value specified in
+.Fa pshared .
+The argument
+.Fa pshared
+may have one of the following values:
+.Bl -tag -width ".Dv PTHREAD_PROCESS_PRIVATE"
+.It Dv PTHREAD_PROCESS_PRIVATE
+The mutex may only be used by threads in the same process as the one
+that created the object.
+.It Dv PTHREAD_PROCESS_SHARED
+The mutex may be used by
+threads in processes other than the one that created the object,
+assuming other processes share access to the memory where the mutex
+was allocated.
+.El
+See
+.Xr libthr 3
+for details of the implementation of the shared mutexes,
+and their limitations.
+.Pp
+The
.Fn pthread_mutexattr_setrobust
function specifies robustness attribute of the mutex.
Possible values for the
@@ -316,6 +338,7 @@ Invalid value for
.Fa attr .
.El
.Sh SEE ALSO
+.Xr libthr 3 ,
.Xr pthread_mutex_init 3
.Sh STANDARDS
The
diff --git a/share/man/man3/pthread_mutexattr_getkind_np.3 b/share/man/man3/pthread_mutexattr_getkind_np.3
index cc3cc3df20ae..15eb7061b20e 100644
--- a/share/man/man3/pthread_mutexattr_getkind_np.3
+++ b/share/man/man3/pthread_mutexattr_getkind_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_MUTEXATTR_GETKIND_NP 3
.Os
diff --git a/share/man/man3/pthread_once.3 b/share/man/man3/pthread_once.3
index fe234187730c..1ff0a74bc1c2 100644
--- a/share/man/man3/pthread_once.3
+++ b/share/man/man3/pthread_once.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 1996
.Dt PTHREAD_ONCE 3
.Os
diff --git a/share/man/man3/pthread_resume_all_np.3 b/share/man/man3/pthread_resume_all_np.3
index 40df03a07af1..411d5a570f4b 100644
--- a/share/man/man3/pthread_resume_all_np.3
+++ b/share/man/man3/pthread_resume_all_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_RESUME_ALL_NP 3
.Os
diff --git a/share/man/man3/pthread_resume_np.3 b/share/man/man3/pthread_resume_np.3
index 16833872c010..546e133657b6 100644
--- a/share/man/man3/pthread_resume_np.3
+++ b/share/man/man3/pthread_resume_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_RESUME_NP 3
.Os
diff --git a/share/man/man3/pthread_rwlock_destroy.3 b/share/man/man3/pthread_rwlock_destroy.3
index 0129222866b2..9c50e71fea81 100644
--- a/share/man/man3/pthread_rwlock_destroy.3
+++ b/share/man/man3/pthread_rwlock_destroy.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 1998
.Dt PTHREAD_RWLOCK_DESTROY 3
.Os
diff --git a/share/man/man3/pthread_rwlock_init.3 b/share/man/man3/pthread_rwlock_init.3
index 3b99032889d8..e6474199c564 100644
--- a/share/man/man3/pthread_rwlock_init.3
+++ b/share/man/man3/pthread_rwlock_init.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2018
.Dt PTHREAD_RWLOCK_INIT 3
.Os
diff --git a/share/man/man3/pthread_rwlock_rdlock.3 b/share/man/man3/pthread_rwlock_rdlock.3
index 7a197f210ba0..f8403fc8f279 100644
--- a/share/man/man3/pthread_rwlock_rdlock.3
+++ b/share/man/man3/pthread_rwlock_rdlock.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 1998
.Dt PTHREAD_RWLOCK_RDLOCK 3
.Os
diff --git a/share/man/man3/pthread_rwlock_timedrdlock.3 b/share/man/man3/pthread_rwlock_timedrdlock.3
index 2f012f516c1f..2b7365298323 100644
--- a/share/man/man3/pthread_rwlock_timedrdlock.3
+++ b/share/man/man3/pthread_rwlock_timedrdlock.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2018
.Dt PTHREAD_RWLOCK_TIMEDRDLOCK 3
.Os
diff --git a/share/man/man3/pthread_rwlock_timedwrlock.3 b/share/man/man3/pthread_rwlock_timedwrlock.3
index 041c0e54cd46..4543eff46d92 100644
--- a/share/man/man3/pthread_rwlock_timedwrlock.3
+++ b/share/man/man3/pthread_rwlock_timedwrlock.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2018
.Dt PTHREAD_RWLOCK_TIMEDWRLOCK 3
.Os
diff --git a/share/man/man3/pthread_rwlock_unlock.3 b/share/man/man3/pthread_rwlock_unlock.3
index 8ad891ea4545..8e348e927a29 100644
--- a/share/man/man3/pthread_rwlock_unlock.3
+++ b/share/man/man3/pthread_rwlock_unlock.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 1998
.Dt PTHREAD_RWLOCK_UNLOCK 3
.Os
diff --git a/share/man/man3/pthread_rwlock_wrlock.3 b/share/man/man3/pthread_rwlock_wrlock.3
index 602b54fd029f..58416b27de64 100644
--- a/share/man/man3/pthread_rwlock_wrlock.3
+++ b/share/man/man3/pthread_rwlock_wrlock.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 1998
.Dt PTHREAD_RWLOCK_WRLOCK 3
.Os
diff --git a/share/man/man3/pthread_rwlockattr_destroy.3 b/share/man/man3/pthread_rwlockattr_destroy.3
index bff808fdbbd9..2f9fe7099ef2 100644
--- a/share/man/man3/pthread_rwlockattr_destroy.3
+++ b/share/man/man3/pthread_rwlockattr_destroy.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 1998
.Dt PTHREAD_RWLOCKATTR_DESTROY 3
.Os
diff --git a/share/man/man3/pthread_rwlockattr_getpshared.3 b/share/man/man3/pthread_rwlockattr_getpshared.3
index 8e65be3ce391..33d7cd3229f0 100644
--- a/share/man/man3/pthread_rwlockattr_getpshared.3
+++ b/share/man/man3/pthread_rwlockattr_getpshared.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2018
.Dt PTHREAD_RWLOCKATTR_GETPSHARED 3
.Os
diff --git a/share/man/man3/pthread_rwlockattr_init.3 b/share/man/man3/pthread_rwlockattr_init.3
index 1cce9cd02554..46100608f9b6 100644
--- a/share/man/man3/pthread_rwlockattr_init.3
+++ b/share/man/man3/pthread_rwlockattr_init.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 1998
.Dt PTHREAD_RWLOCKATTR_INIT 3
.Os
diff --git a/share/man/man3/pthread_rwlockattr_setpshared.3 b/share/man/man3/pthread_rwlockattr_setpshared.3
index bf2ddac0285a..3ed86f411ef4 100644
--- a/share/man/man3/pthread_rwlockattr_setpshared.3
+++ b/share/man/man3/pthread_rwlockattr_setpshared.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 31, 2016
.Dt PTHREAD_RWLOCKATTR_SETPSHARED 3
.Os
diff --git a/share/man/man3/pthread_schedparam.3 b/share/man/man3/pthread_schedparam.3
index 9d8b98a89d96..3ba175781f48 100644
--- a/share/man/man3/pthread_schedparam.3
+++ b/share/man/man3/pthread_schedparam.3
@@ -25,9 +25,7 @@
.\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
.\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 17, 2018
+.Dd October 17, 2022
.Dt PTHREAD_SCHEDPARAM 3
.Os
.Sh NAME
@@ -75,6 +73,8 @@ Invalid value for
.Fa policy .
.It Bq Er ENOTSUP
Invalid value for scheduling parameters.
+.It Bq Er EPERM
+The calling thread does not have sufficient privilege to perform the operation.
.It Bq Er ESRCH
Non-existent thread
.Fa thread .
diff --git a/share/man/man3/pthread_self.3 b/share/man/man3/pthread_self.3
index 8b346836c631..1c4853006fb1 100644
--- a/share/man/man3/pthread_self.3
+++ b/share/man/man3/pthread_self.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 1996
.Dt PTHREAD_SELF 3
.Os
diff --git a/share/man/man3/pthread_set_name_np.3 b/share/man/man3/pthread_set_name_np.3
index 5423ef898f58..69adcad2bd81 100644
--- a/share/man/man3/pthread_set_name_np.3
+++ b/share/man/man3/pthread_set_name_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_SET_NAME_NP 3
.Os
diff --git a/share/man/man3/pthread_setspecific.3 b/share/man/man3/pthread_setspecific.3
index 3153c991f90b..59079e35890d 100644
--- a/share/man/man3/pthread_setspecific.3
+++ b/share/man/man3/pthread_setspecific.3
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 1996
.Dt PTHREAD_SETSPECIFIC 3
.Os
diff --git a/share/man/man3/pthread_sigmask.3 b/share/man/man3/pthread_sigmask.3
index 013ba7cb6844..8d2a5d6519d5 100644
--- a/share/man/man3/pthread_sigmask.3
+++ b/share/man/man3/pthread_sigmask.3
@@ -24,8 +24,6 @@
.\" WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.Dd February 19, 2011
.Dt PTHREAD_SIGMASK 3
.Os
diff --git a/share/man/man3/pthread_sigqueue.3 b/share/man/man3/pthread_sigqueue.3
new file mode 100644
index 000000000000..bf5dd62f04e6
--- /dev/null
+++ b/share/man/man3/pthread_sigqueue.3
@@ -0,0 +1,102 @@
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright 2024 The FreeBSD Foundation, Inc.
+.\"
+.\" This documentation was written by
+.\" Konstantin Belousov <kib@FreeBSD.org> under sponsorship
+.\" from the FreeBSD Foundation.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice(s), this list of conditions and the following disclaimer as
+.\" the first lines of this file unmodified other than the possible
+.\" addition of one or more copyright notices.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice(s), this list of conditions and the following disclaimer in
+.\" the documentation and/or other materials provided with the
+.\" distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY
+.\" EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE
+.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+.\" BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+.\" WHETHER IN CONTRACT, STRICT 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 April 21, 2024
+.Dt PTHREAD_SIGQUEUE 3
+.Os
+.Sh NAME
+.Nm pthread_sigqueue
+.Nd queue a signal to a specified thread
+.Sh LIBRARY
+.Lb libpthread
+.Sh SYNOPSIS
+.In pthread.h
+.In signal.h
+.Ft int
+.Fn pthread_sigqueue "pthread_t thread" "int sig" "const union sigval value"
+.Sh DESCRIPTION
+The
+.Fn pthread_queue
+function queues a signal, specified by
+.Fa sig ,
+to a thread, specified by
+.Fa thread .
+If
+.Fa sig
+is 0, error checking is performed, but no signal is actually sent.
+The
+.Fa value
+is queued together with the signal, and becomes available in
+.Vt siginfo_t
+data passed to the signal handler.
+.Pp
+The
+.Nm
+function is similar to
+.Xr sigqueue 2 ,
+but targets a thread in the current process instead of a process.
+See
+.Xr sigqueue 2
+for details about signal queueing and delivery selection.
+.Sh RETURN VALUES
+If successful,
+.Fn pthread_sigqueue
+returns 0.
+Otherwise, an error number is returned.
+.Sh ERRORS
+The
+.Fn pthread_sigqueue
+function will fail if:
+.Bl -tag -width Er
+.It Bq Er EAGAIN
+No resources are available to queue the signal.
+The current process has already queued
+.Brq Dv SIGQUEUE_MAX
+signals that are still pending,
+or a system-wide resource limit has been exceeded.
+.It Bq Er ESRCH
+.Fa thread
+is an invalid thread ID.
+.It Bq Er EINVAL
+.Fa sig
+is an invalid or unsupported signal number.
+.El
+.Sh SEE ALSO
+.Xr sigqueue 2
+.Sh STANDARDS
+The
+.Fn pthread_sigqueue
+function is a
+.Fx
+extension.
+An identical function with the same semantic is available in other
+operating systems.
diff --git a/share/man/man3/pthread_spin_init.3 b/share/man/man3/pthread_spin_init.3
index 3ef67add5248..4820ddcf7885 100644
--- a/share/man/man3/pthread_spin_init.3
+++ b/share/man/man3/pthread_spin_init.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 31, 2016
.Dt PTHREAD_SPIN_INIT 3
.Os
diff --git a/share/man/man3/pthread_spin_lock.3 b/share/man/man3/pthread_spin_lock.3
index 24dea92d2397..4308271a384f 100644
--- a/share/man/man3/pthread_spin_lock.3
+++ b/share/man/man3/pthread_spin_lock.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 22, 2004
.Dt PTHREAD_SPIN_LOCK 3
.Os
diff --git a/share/man/man3/pthread_suspend_all_np.3 b/share/man/man3/pthread_suspend_all_np.3
index 2821c7360786..c99a08a05b6c 100644
--- a/share/man/man3/pthread_suspend_all_np.3
+++ b/share/man/man3/pthread_suspend_all_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_SUSPEND_ALL_NP 3
.Os
diff --git a/share/man/man3/pthread_suspend_np.3 b/share/man/man3/pthread_suspend_np.3
index 58bcf56964b6..8e05bac0d985 100644
--- a/share/man/man3/pthread_suspend_np.3
+++ b/share/man/man3/pthread_suspend_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_SUSPEND_NP 3
.Os
diff --git a/share/man/man3/pthread_switch_add_np.3 b/share/man/man3/pthread_switch_add_np.3
index ddfa630ffd9a..f02ff15eedc3 100644
--- a/share/man/man3/pthread_switch_add_np.3
+++ b/share/man/man3/pthread_switch_add_np.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt PTHREAD_SWITCH_ADD_NP 3
.Os
diff --git a/share/man/man3/pthread_testcancel.3 b/share/man/man3/pthread_testcancel.3
index 9ba1403dffdc..2d2bb06c48e2 100644
--- a/share/man/man3/pthread_testcancel.3
+++ b/share/man/man3/pthread_testcancel.3
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.Dd March 18, 2017
.Dt PTHREAD_TESTCANCEL 3
.Os
diff --git a/share/man/man3/pthread_yield.3 b/share/man/man3/pthread_yield.3
index e47c033acfb7..e9ef649109a7 100644
--- a/share/man/man3/pthread_yield.3
+++ b/share/man/man3/pthread_yield.3
@@ -2,8 +2,6 @@
.\"
.\" PUBLIC DOMAIN: No Rights Reserved. Marco S Hyman <marc@snafu.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd September 18, 2006
.Dt PTHREAD_YIELD 3
.Os
diff --git a/share/man/man3/qmath.3 b/share/man/man3/qmath.3
index 3e874ab704e6..5c2332f0bc55 100644
--- a/share/man/man3/qmath.3
+++ b/share/man/man3/qmath.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 4, 2019
.Dt QMATH 3
.Os
diff --git a/share/man/man3/queue.3 b/share/man/man3/queue.3
index 2e2ddec0c555..be890fd2cc88 100644
--- a/share/man/man3/queue.3
+++ b/share/man/man3/queue.3
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)queue.3 8.2 (Berkeley) 1/24/94
-.\" $FreeBSD$
-.\"
-.Dd September 8, 2016
+.Dd April 8, 2024
.Dt QUEUE 3
.Os
.Sh NAME
@@ -93,6 +90,7 @@
.Nm LIST_NEXT ,
.Nm LIST_PREV ,
.Nm LIST_REMOVE ,
+.Nm LIST_REPLACE ,
.Nm LIST_SWAP ,
.Nm TAILQ_CLASS_ENTRY ,
.Nm TAILQ_CLASS_HEAD ,
@@ -119,6 +117,7 @@
.Nm TAILQ_NEXT ,
.Nm TAILQ_PREV ,
.Nm TAILQ_REMOVE ,
+.Nm TAILQ_REPLACE ,
.Nm TAILQ_SWAP
.Nd implementations of singly-linked lists, singly-linked tail queues,
lists and tail queues
@@ -188,6 +187,7 @@ lists and tail queues
.Fn LIST_NEXT "TYPE *elm" "LIST_ENTRY NAME"
.Fn LIST_PREV "TYPE *elm" "LIST_HEAD *head" "TYPE" "LIST_ENTRY NAME"
.Fn LIST_REMOVE "TYPE *elm" "LIST_ENTRY NAME"
+.Fn LIST_REPLACE "TYPE *elm" "TYPE *new" "LIST_ENTRY NAME"
.Fn LIST_SWAP "LIST_HEAD *head1" "LIST_HEAD *head2" "TYPE" "LIST_ENTRY NAME"
.\"
.Fn TAILQ_CLASS_ENTRY "CLASSTYPE"
@@ -215,6 +215,7 @@ lists and tail queues
.Fn TAILQ_NEXT "TYPE *elm" "TAILQ_ENTRY NAME"
.Fn TAILQ_PREV "TYPE *elm" "HEADNAME" "TAILQ_ENTRY NAME"
.Fn TAILQ_REMOVE "TAILQ_HEAD *head" "TYPE *elm" "TAILQ_ENTRY NAME"
+.Fn TAILQ_REPLACE "TAILQ_HEAD *head" "TYPE *elm" "TYPE *new" "TAILQ_ENTRY NAME"
.Fn TAILQ_SWAP "TAILQ_HEAD *head1" "TAILQ_HEAD *head2" "TYPE" "TAILQ_ENTRY NAME"
.\"
.Sh DESCRIPTION
@@ -966,6 +967,17 @@ removes the element
from the list.
.Pp
The macro
+.Fn LIST_REPLACE
+replaces the element
+.Fa elm
+with
+.Fa new
+in the list.
+The element
+.Fa new
+must not already be on a list.
+.Pp
+The macro
.Nm LIST_SWAP
swaps the contents of
.Fa head1
@@ -1224,6 +1236,17 @@ removes the element
from the tail queue.
.Pp
The macro
+.Fn TAILQ_REPLACE
+replaces the element
+.Fa elm
+with
+.Fa new
+in the tail queue.
+The element
+.Fa new
+must not already be on a list.
+.Pp
+The macro
.Nm TAILQ_SWAP
swaps the contents of
.Fa head1
@@ -1238,7 +1261,7 @@ struct entry {
...
TAILQ_ENTRY(entry) entries; /* Tail queue. */
...
-} *n1, *n2, *n3, *np;
+} *n1, *n2, *n3, *n4, *np;
TAILQ_INIT(&head); /* Initialize the queue. */
@@ -1256,6 +1279,10 @@ TAILQ_INSERT_BEFORE(n2, n3, entries);
TAILQ_REMOVE(&head, n2, entries); /* Deletion. */
free(n2);
+
+n4 = malloc(sizeof(struct entry)); /* Replacement. */
+TAILQ_REPLACE(&head, n3, n4, entries);
+free(n3);
/* Forward traversal. */
TAILQ_FOREACH(np, &head, entries)
np-> ...
diff --git a/share/man/man3/sigevent.3 b/share/man/man3/sigevent.3
index fea8e621f3ea..731b365801cc 100644
--- a/share/man/man3/sigevent.3
+++ b/share/man/man3/sigevent.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 25, 2020
.Dt SIGEVENT 3
.Os
diff --git a/share/man/man3/siginfo.3 b/share/man/man3/siginfo.3
index 7f8a809cdfa5..f57cf5f7d706 100644
--- a/share/man/man3/siginfo.3
+++ b/share/man/man3/siginfo.3
@@ -25,8 +25,6 @@
.\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
.\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 17, 2021
.Dt SIGINFO 3
.Os
diff --git a/share/man/man3/snl.3 b/share/man/man3/snl.3
new file mode 100644
index 000000000000..9a6eceb66a32
--- /dev/null
+++ b/share/man/man3/snl.3
@@ -0,0 +1,309 @@
+.\"
+.\" Copyright (C) 2022 Alexander Chernikov <melifaro@FreeBSD.org>.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 December 16, 2022
+.Dt SNL 3
+.Os
+.Sh NAME
+.Nm snl_init ,
+.Nm snl_free ,
+.Nm snl_read_message ,
+.Nm snl_send ,
+.Nm snl_get_seq ,
+.Nm snl_allocz ,
+.Nm snl_clear_lb ,
+.Nm snl_parse_nlmsg ,
+.Nm snl_parse_header ,
+.Nm snl_parse_attrs ,
+.Nm snl_parse_attrs_raw ,
+.Nm snl_attr_get_flag ,
+.Nm snl_attr_get_ip ,
+.Nm snl_attr_get_uint16 ,
+.Nm snl_attr_get_uint32 ,
+.Nm snl_attr_get_string ,
+.Nm snl_attr_get_stringn ,
+.Nm snl_attr_get_nla ,
+.Nm snl_field_get_uint8 ,
+.Nm snl_field_get_uint16 ,
+.Nm snl_field_get_uint32
+.Nd "simple netlink library"
+.Sh SYNOPSIS
+.In netlink/netlink_snl.h
+.In netlink/netlink_snl_route.h
+.Ft "bool"
+.Fn snl_init "struct snl_state *ss" "int netlink_family"
+.Fn snl_free "struct snl_state *ss"
+.Ft "struct nlmsghdr *"
+.Fn snl_read_message "struct snl_state *ss"
+.Ft "bool"
+.Fn snl_send "struct snl_state *ss" "void *data" "int sz"
+.Ft "uint32_t"
+.Fn snl_get_seq "struct snl_state *ss"
+.Ft "void *"
+.Fn snl_allocz "struct snl_state *ss" "int len"
+.Fn snl_clear_lb "struct snl_state *ss"
+.Ft "bool"
+.Fn snl_parse_nlmsg "struct snl_state *ss" "struct nlmsghdr *hdr" "const struct snl_hdr_parser *ps" "void *target"
+.Ft "bool"
+.Fn snl_parse_header "struct snl_state *ss" "void *hdr" "int len" "const struct snl_hdr_parser *ps" "int pslen" "void *target"
+.Ft "bool"
+.Fn snl_parse_attrs "struct snl_state *ss" "struct nlmsghdr *hdr" "int hdrlen" "const struct snl_attr_parser *ps" "int pslen" "void *target"
+.Ft "bool"
+.Fn snl_parse_attrs_raw "struct snl_state *ss" "struct nlattr *nla_head" "int len" "const struct snl_attr_parser *ps" "int pslen" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_flag "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_uint8 "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_uint16 "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_uint32 "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_uint64 "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_string "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_stringn "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_nla "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_ip "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Ft "bool"
+.Fn snl_attr_get_ipvia "struct snl_state *ss" "struct nlattr *nla" "void *target"
+.Sh DESCRIPTION
+The
+.Xr snl 3
+library provides an easy way of sending and receiving Netlink messages,
+taking care of serialisation and deserialisation.
+.Ss INITIALISATION
+Call
+.Fn snl_init
+with a pointer to the
+.Dv struct snl_state
+and the desired Netlink family to initialise the library instance.
+To free the library instance, call
+.Fn snl_free .
+.Pp
+The library functions are NOT multithread-safe.
+If multithreading is desired, consider initializing an instance
+per thread.
+.Ss MEMORY ALLOCATION
+The library uses pre-allocated extendable memory buffers to handle message parsing.
+The typical usage pattern is to allocate the necessary data structures during the
+message parsing or writing process via
+.Fn snl_allocz
+and free all allocated data at once using
+.Fn snl_clear_lb
+after handling the message.
+.Ss COMPOSING AND SENDING MESSAGES
+The library does not currently offer any wrappers for writing netlink messages.
+Simple request messages can be composed by filling in all needed fields directly.
+Example for constructing an interface dump request:
+.Bd -literal
+ struct {
+ struct nlmsghdr hdr;
+ struct ifinfomsg ifmsg;
+ } msg = {
+ .hdr.nlmsg_type = RTM_GETLINK,
+ .hdr.nlmsg_flags = NLM_F_DUMP | NLM_F_REQUEST,
+ .hdr.nlmsg_seq = snl_get_seq(ss),
+ };
+ msg.hdr.nlmsg_len = sizeof(msg);
+.Ed
+.Fn snl_get_seq
+can be used to generate a unique message number.
+To send the resulting message,
+.Fn snl_send
+can be used.
+.Ss RECEIVING AND PARSING MESSAGES
+To receive a message, use
+.Fn snl_read_message .
+Currently, this call is blocking.
+.Pp
+The library provides an easy way to convert the message to the pre-defined C
+structure.
+For each message type, one needs to define rules, converting the protocol header
+fields and the desired attributes to the specified structure.
+It can be accomplished by using message parsers.
+Each message parser consists of an array of attribute getters and an array of
+header field getters.
+The former array needs to be sorted by the attribute type.
+There is a
+.Fn SNL_VERIFY_PARSERS
+macro to check if the order is correct.
+.Fn SNL_DECLARE_PARSER "parser_name" "family header type" "struct snl_field_parser[]" "struct snl_attr_parser[]"
+can be used to create a new parser.
+.Fn SNL_DECLARE_ATTR_PARSER "parser_name" "struct snl_field_parser[]"
+can be used to create an attribute-only message parser.
+.Pp
+Each attribute getter needs to be embedded in the following structure:
+.Bd -literal
+typedef bool snl_parse_attr_f(struct snl_state *ss, struct nlattr *attr, const void *arg, void *target);
+struct snl_attr_parser {
+ uint16_t type; /* Attribute type */
+ uint16_t off; /* field offset in the target structure */
+ snl_parse_attr_f *cb; /* getter function to call */
+ const void *arg; /* getter function custom argument */
+};
+.Ed
+The generic attribute getter has the following signature:
+.Ft "bool"
+.Fn snl_attr_get_<type> "struct snl_state *ss" "struct nlattr *nla" "const void *arg" "void *target" .
+nla contains the pointer of the attribute to use as the datasource.
+The target field is the pointer to the field in the target structure.
+It is up to the getter to know the type of the target field.
+The getter must check the input attribute and return
+false if the attribute is not formed correctly.
+Otherwise, the getter fetches the attribute value and stores it in the target,
+then returns true.
+It is possible to use
+.Fn snl_allocz
+to create the desired data structure .
+A number of predefined getters for the common data types exist.
+.Fn snl_attr_get_flag
+converts a flag-type attribute to an uint8_t value of 1 or 0, depending on the
+attribute presence.
+.Fn snl_attr_get_uint8
+stores a uint8_t type attribute into the uint8_t target field.
+.Fn snl_attr_get_uint16
+stores a uint16_t type attribute into the uint16_t target field.
+.Fn snl_attr_get_uint32
+stores a uint32_t type attribute into the uint32_t target field.
+.Fn snl_attr_get_uint64
+stores a uint64_t type attribute into the uint64_t target field.
+.Fn snl_attr_get_ip
+and
+.Fn snl_attr_get_ipvia
+stores a pointer to the sockaddr structure with the IPv4/IPv6 address contained
+in the attribute.
+Sockaddr is allocated using
+.Fn snl_allocz .
+.Fn snl_attr_get_string
+stores a pointer to the NULL-terminated string.
+The string itself is allocated using
+.Fn snl_allocz .
+.Fn snl_attr_get_nla
+stores a pointer to the specified attribute.
+.Fn snl_attr_get_stringn
+stores a pointer to the non-NULL-terminated string.
+.Pp
+Similarly, each family header getter needs to be embedded in the following structure:
+.Bd -literal
+typedef void snl_parse_field_f(struct snl_state *ss, void *hdr, void *target);
+struct snl_field_parser {
+ uint16_t off_in; /* field offset in the input structure */
+ uint16_t off_out;/* field offset in the target structure */
+ snl_parse_field_f *cb; /* getter function to call */
+};
+.Ed
+The generic field getter has the following signature:
+.Ft "void"
+snl_field_get_<type> "struct snl_state *ss" "void *src" "void *target" .
+A number of pre-defined getters for the common data types exist.
+.Fn "snl_field_get_uint8"
+fetches an uint8_t value and stores it in the target.
+.Fn "snl_field_get_uint16"
+fetches an uint8_t value and stores it in the target.
+.Fn "snl_field_get_uint32"
+fetches an uint32_t value and stores it in the target.
+.Sh EXAMPLES
+The following example demonstrates how to list all system interfaces
+using netlink.
+.Bd -literal
+#include <stdio.h>
+
+#include <netlink/netlink.h>
+#include <netlink/netlink_route.h>
+#include "netlink/netlink_snl.h"
+#include "netlink/netlink_snl_route.h"
+
+struct nl_parsed_link {
+ uint32_t ifi_index;
+ uint32_t ifla_mtu;
+ char *ifla_ifname;
+};
+
+#define _IN(_field) offsetof(struct ifinfomsg, _field)
+#define _OUT(_field) offsetof(struct nl_parsed_link, _field)
+static const struct snl_attr_parser ap_link[] = {
+ { .type = IFLA_IFNAME, .off = _OUT(ifla_ifname), .cb = snl_attr_get_string },
+ { .type = IFLA_MTU, .off = _OUT(ifla_mtu), .cb = snl_attr_get_uint32 },
+};
+static const struct snl_field_parser fp_link[] = {
+ {.off_in = _IN(ifi_index), .off_out = _OUT(ifi_index), .cb = snl_field_get_uint32 },
+};
+#undef _IN
+#undef _OUT
+SNL_DECLARE_PARSER(link_parser, struct ifinfomsg, fp_link, ap_link);
+
+
+int
+main(int ac, char *argv[])
+{
+ struct snl_state ss;
+
+ if (!snl_init(&ss, NETLINK_ROUTE))
+ return (1);
+
+ struct {
+ struct nlmsghdr hdr;
+ struct ifinfomsg ifmsg;
+ } msg = {
+ .hdr.nlmsg_type = RTM_GETLINK,
+ .hdr.nlmsg_flags = NLM_F_DUMP | NLM_F_REQUEST,
+ .hdr.nlmsg_seq = snl_get_seq(&ss),
+ };
+ msg.hdr.nlmsg_len = sizeof(msg);
+
+ if (!snl_send(&ss, &msg, sizeof(msg))) {
+ snl_free(&ss);
+ return (1);
+ }
+
+ struct nlmsghdr *hdr;
+ while ((hdr = snl_read_message(&ss)) != NULL && hdr->nlmsg_type != NLMSG_DONE) {
+ if (hdr->nlmsg_seq != msg.hdr.nlmsg_seq)
+ break;
+
+ struct nl_parsed_link link = {};
+ if (!snl_parse_nlmsg(&ss, hdr, &link_parser, &link))
+ continue;
+ printf("Link#%u %s mtu %u\n", link.ifi_index, link.ifla_ifname, link.ifla_mtu);
+ }
+
+ return (0);
+}
+.Ed
+.Sh SEE ALSO
+.Xr genetlink 4 ,
+.Xr netlink 4 ,
+and
+.Xr rtnetlink 4
+.Sh HISTORY
+The
+.Dv SNL
+library appeared in
+.Fx 13.2 .
+.Sh AUTHORS
+This library was implemented by
+.An Alexander Chernikov Aq Mt melifaro@FreeBSD.org .
diff --git a/share/man/man3/stats.3 b/share/man/man3/stats.3
index 2a63febef1d6..4dfb1dac63a2 100644
--- a/share/man/man3/stats.3
+++ b/share/man/man3/stats.3
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 2, 2019
.Dt STATS 3
.Os
diff --git a/share/man/man3/stdarg.3 b/share/man/man3/stdarg.3
index 3b47eee70ff0..b7346c91d7a3 100644
--- a/share/man/man3/stdarg.3
+++ b/share/man/man3/stdarg.3
@@ -29,9 +29,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)stdarg.3 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd February 25, 2020
.Dt STDARG 3
.Os
diff --git a/share/man/man3/stdckdint.3 b/share/man/man3/stdckdint.3
new file mode 100644
index 000000000000..e3593472c08b
--- /dev/null
+++ b/share/man/man3/stdckdint.3
@@ -0,0 +1,106 @@
+.\"-
+.\" Copyright (c) 2023 Dag-Erling Smørgrav
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.Dd September 5, 2023
+.Dt STDCKDINT 3
+.Os
+.Sh NAME
+.Nm stdckdint
+.Nd checked integer arithmetic
+.Sh SYNOPSIS
+.In stdckdint.h
+.Ft bool
+.Fn ckd_add "type1 *result" "type2 a" "type3 b"
+.Ft bool
+.Fn ckd_sub "type1 *result" "type2 a" "type3 b"
+.Ft bool
+.Fn ckd_mul "type1 *result" "type2 a" "type3 b"
+.Sh DESCRIPTION
+The function-like macros
+.Nm ckd_add ,
+.Nm ckd_sub ,
+and
+.Nm ckd_mul
+perform checked integer addition, subtraction, and multiplication,
+respectively.
+If the result of adding, subtracting, or multiplying
+.Fa a
+and
+.Fa b
+as if their respective types had infinite range fits in
+.Ft type1 ,
+it is stored in the location pointed to by
+.Fa result
+and the macro evaluates to
+.Dv false .
+Otherwise, the macro evaluates to
+.Dv true
+and the contents of the location pointed to by
+.Fa result
+is the result of the operation wrapped to the range of
+.Ft type1 .
+.Sh RETURN VALUES
+The
+.Nm ckd_add ,
+.Nm ckd_sub ,
+and
+.Nm ckd_mul
+macros evaluate to
+.Dv true
+if the requested operation overflowed the result type and
+.Dv false
+otherwise.
+.Sh EXAMPLES
+.Bd -literal -offset indent
+#include <assert.h>
+#include <limits.h>
+#include <stdckdint.h>
+
+int main(void)
+{
+ int result;
+
+ assert(!ckd_add(&result, INT_MAX, 0));
+ assert(result == INT_MAX);
+ assert(ckd_add(&result, INT_MAX, 1));
+ assert(result == INT_MIN);
+
+ assert(!ckd_sub(&result, INT_MIN, 0));
+ assert(result == INT_MIN);
+ assert(ckd_sub(&result, INT_MIN, 1));
+ assert(result == INT_MAX);
+
+ assert(!ckd_mul(&result, INT_MAX / 2, 2));
+ assert(result == INT_MAX - 1);
+ assert(ckd_mul(&result, INT_MAX / 2 + 1, 2));
+ assert(result == INT_MIN);
+
+ return 0;
+}
+.Ed
+.\" .Sh STANDARDS
+.\" The
+.\" .Nm ckd_add ,
+.\" .Nm ckd_sub ,
+.\" and
+.\" .Nm ckd_mul
+.\" macros conform to
+.\" .St -isoC-23 .
+.Sh HISTORY
+The
+.Nm ckd_add ,
+.Nm ckd_sub ,
+and
+.Nm ckd_mul
+macros were first introduced in
+.Fx 14.0 .
+.Sh AUTHORS
+The
+.Nm ckd_add ,
+.Nm ckd_sub ,
+and
+.Nm ckd_mul
+macros and this manual page were written by
+.An Dag-Erling Sm\(/orgrav Aq Mt des@FreeBSD.org .
diff --git a/share/man/man3/sysexits.3 b/share/man/man3/sysexits.3
index a0f9af98d42e..ef736192e439 100644
--- a/share/man/man3/sysexits.3
+++ b/share/man/man3/sysexits.3
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.\" "
.Dd January 21, 2010
.Dt SYSEXITS 3
diff --git a/share/man/man3/tgmath.3 b/share/man/man3/tgmath.3
index be49dfa87b18..98dbb7439793 100644
--- a/share/man/man3/tgmath.3
+++ b/share/man/man3/tgmath.3
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 4, 2012
.Dt TGMATH 3
.Os
diff --git a/share/man/man3/timeradd.3 b/share/man/man3/timeradd.3
index 055bef9668f2..6ce601f25150 100644
--- a/share/man/man3/timeradd.3
+++ b/share/man/man3/timeradd.3
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 30, 2018
.Dt TIMERADD 3
.Os
diff --git a/share/man/man3/tree.3 b/share/man/man3/tree.3
index 7e3727b2c365..e6d855c5ade0 100644
--- a/share/man/man3/tree.3
+++ b/share/man/man3/tree.3
@@ -28,8 +28,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 27, 2020
.Dt TREE 3
.Os
@@ -97,9 +95,12 @@
.Nm RB_FOREACH_REVERSE_SAFE ,
.Nm RB_INIT ,
.Nm RB_INSERT ,
+.Nm RB_INSERT_NEXT ,
+.Nm RB_INSERT_PREV ,
.Nm RB_REMOVE ,
.Nm RB_REINSERT ,
.Nm RB_AUGMENT
+.Nm RB_AUGMENT_CHECK,
.Nm RB_UPDATE_AUGMENT
.Nd "implementations of splay and rank-balanced (wavl) trees"
.Sh SYNOPSIS
@@ -192,11 +193,17 @@
.Ft "struct TYPE *"
.Fn RB_INSERT NAME "RB_HEAD *head" "struct TYPE *elm"
.Ft "struct TYPE *"
+.Fn RB_INSERT_NEXT NAME "RB_HEAD *head" "struct TYPE *elm" "struct TYPE *next"
+.Ft "struct TYPE *"
+.Fn RB_INSERT_PREV NAME "RB_HEAD *head" "struct TYPE *elm" "struct TYPE *prev"
+.Ft "struct TYPE *"
.Fn RB_REMOVE NAME "RB_HEAD *head" "struct TYPE *elm"
.Ft "struct TYPE *"
.Fn RB_REINSERT NAME "RB_HEAD *head" "struct TYPE *elm"
.Ft "void"
.Fn RB_AUGMENT NAME "struct TYPE *elm"
+.Ft "bool"
+.Fn RB_AUGMENT_CHECK NAME "struct TYPE *elm"
.Ft "void"
.Fn RB_UPDATE_AUGMENT NAME "struct TYPE *elm"
.Sh DESCRIPTION
@@ -512,6 +519,18 @@ macro inserts the new element
into the tree.
.Pp
The
+.Fn RB_INSERT_NEXT
+macro inserts the new element
+.Fa elm
+into the tree immediately after a given element.
+.Pp
+The
+.Fn RB_INSERT_PREV
+macro inserts the new element
+.Fa elm
+into the tree immediately before a given element.
+.Pp
+The
.Fn RB_REMOVE
macro removes the element
.Fa elm
@@ -620,6 +639,22 @@ It is typically used to maintain some associative accumulation of tree
elements, such as sums, minima, maxima, and the like.
.Pp
The
+.Fn RB_AUGMENT_CHECK
+macro updates augmentation data of the element
+.Fa elm
+in the tree.
+By default, it does nothing and returns false.
+If
+.Fn RB_AUGMENT_CHECK
+is defined, then when an element is inserted or removed from the tree,
+it is invoked for every element in the tree that is the root of an
+altered subtree, working from the bottom of the tree up toward the
+top, until it returns false to indicate that it did not change the
+element and so working further up the tree would change nothing.
+It is typically used to maintain some associative accumulation of tree
+elements, such as sums, minima, maxima, and the like.
+.Pp
+The
.Fn RB_UPDATE_AUGMENT
macro updates augmentation data of the element
.Fa elm
diff --git a/share/man/man3lua/Makefile b/share/man/man3lua/Makefile
index 751d559adfb5..35555988b6a2 100644
--- a/share/man/man3lua/Makefile
+++ b/share/man/man3lua/Makefile
@@ -1,4 +1,3 @@
-# $FreeBSD$
.include <src.opts.mk>
diff --git a/share/man/man3lua/intro.3lua b/share/man/man3lua/intro.3lua
index 854865a5ca42..50594c6ad179 100644
--- a/share/man/man3lua/intro.3lua
+++ b/share/man/man3lua/intro.3lua
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2020, Ryan Moeller <freqlabs@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 24, 2020
.Dt INTRO 3lua
.Os
diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile
index 192bab4155a2..020b009893d5 100644
--- a/share/man/man4/Makefile
+++ b/share/man/man4/Makefile
@@ -1,5 +1,3 @@
-# @(#)Makefile 8.1 (Berkeley) 6/18/93
-# $FreeBSD$
.include <src.opts.mk>
@@ -15,6 +13,7 @@ MAN= aac.4 \
${_acpi_panasonic.4} \
${_acpi_rapidstart.4} \
${_acpi_sony.4} \
+ acpi_ged.4 \
acpi_thermal.4 \
acpi_battery.4 \
${_acpi_toshiba.4} \
@@ -54,11 +53,10 @@ MAN= aac.4 \
at45d.4 \
ata.4 \
ath.4 \
- ath_ahb.4 \
ath_hal.4 \
- ath_pci.4 \
atkbd.4 \
atkbdc.4 \
+ ${_atopcase.4} \
atp.4 \
${_atf_test_case.4} \
${_atrtc.4} \
@@ -142,6 +140,7 @@ MAN= aac.4 \
em.4 \
ena.4 \
enc.4 \
+ enic.4 \
epair.4 \
est.4 \
et.4 \
@@ -157,6 +156,7 @@ MAN= aac.4 \
ffclock.4 \
filemon.4 \
firewire.4 \
+ ${_ftgpio.4} \
${_ftwd.4} \
full.4 \
fwe.4 \
@@ -167,11 +167,12 @@ MAN= aac.4 \
gdb.4 \
gem.4 \
genet.4 \
+ genetlink.4 \
geom.4 \
geom_linux_lvm.4 \
- geom_map.4 \
geom_uzip.4 \
gif.4 \
+ ${_gve.4} \
gpio.4 \
gpioiic.4 \
gpiokeys.4 \
@@ -206,6 +207,7 @@ MAN= aac.4 \
${_hv_vss.4} \
hwpmc.4 \
${_hwpstate_intel.4} \
+ i2ctinyusb.4 \
iavf.4 \
ichsmb.4 \
${_ichwd.4} \
@@ -269,6 +271,7 @@ MAN= aac.4 \
ktls.4 \
ktr.4 \
kue.4 \
+ ${_kvmclock.4} \
lagg.4 \
le.4 \
led.4 \
@@ -284,7 +287,9 @@ MAN= aac.4 \
mac.4 \
mac_biba.4 \
mac_bsdextended.4 \
+ mac_ddb.4 \
mac_ifoff.4 \
+ mac_ipacl.4 \
mac_lomac.4 \
mac_mls.4 \
mac_none.4 \
@@ -313,6 +318,7 @@ MAN= aac.4 \
mod_cc.4 \
mos.4 \
mouse.4 \
+ mpi3mr.4 \
mpr.4 \
mps.4 \
mpt.4 \
@@ -333,17 +339,15 @@ MAN= aac.4 \
netgdb.4 \
netgraph.4 \
netintro.4 \
+ netlink.4 \
netmap.4 \
${_nfe.4} \
${_nfsmb.4} \
ng_async.4 \
- ngatmbase.4 \
- ng_atmllc.4 \
ng_bpf.4 \
ng_bridge.4 \
ng_btsocket.4 \
ng_car.4 \
- ng_ccatm.4 \
ng_checksum.4 \
ng_cisco.4 \
ng_deflate.4 \
@@ -382,15 +386,12 @@ MAN= aac.4 \
ng_socket.4 \
ng_source.4 \
ng_split.4 \
- ng_sscfu.4 \
- ng_sscop.4 \
ng_tag.4 \
ng_tcpmss.4 \
ng_tee.4 \
ng_tty.4 \
ng_ubt.4 \
ng_UI.4 \
- ng_uni.4 \
ng_vjc.4 \
ng_vlan.4 \
ng_vlan_rotate.4 \
@@ -404,11 +405,10 @@ MAN= aac.4 \
${_if_ntb.4} \
null.4 \
numa.4 \
- ${_nvd.4} \
+ nvd.4 \
${_nvdimm.4} \
- ${_nvme.4} \
+ nvme.4 \
${_nvram.4} \
- ${_nvram2env.4} \
oce.4 \
ocs_fc.4\
ohci.4 \
@@ -434,6 +434,7 @@ MAN= aac.4 \
pcm.4 \
${_pf.4} \
${_pflog.4} \
+ ${_pflow.4} \
${_pfsync.4} \
pim.4 \
pms.4 \
@@ -452,6 +453,7 @@ MAN= aac.4 \
pty.4 \
puc.4 \
pwmc.4 \
+ ${_qat.4} \
${_qat_c2xxx.4} \
${_qlxge.4} \
${_qlxgb.4} \
@@ -466,9 +468,9 @@ MAN= aac.4 \
rl.4 \
rndtest.4 \
route.4 \
+ rtnetlink.4 \
rtsx.4 \
rtw88.4 \
- rtw88fw.4 \
rtwn.4 \
rtwnfw.4 \
rtwn_pci.4 \
@@ -544,6 +546,7 @@ MAN= aac.4 \
targ.4 \
tcp.4 \
tcp_bbr.4 \
+ tcp_rack.4 \
tdfx.4 \
termios.4 \
textdump.4 \
@@ -567,6 +570,7 @@ MAN= aac.4 \
virtio_balloon.4 \
virtio_blk.4 \
virtio_console.4 \
+ virtio_gpu.4 \
virtio_random.4 \
virtio_scsi.4 \
${_vmci.4} \
@@ -582,6 +586,8 @@ MAN= aac.4 \
vtnet.4 \
watchdog.4 \
${_wbwd.4} \
+ ${_wdatwd.4} \
+ wg.4 \
witness.4 \
wlan.4 \
wlan_acl.4 \
@@ -616,7 +622,6 @@ MLINKS+=altera_atse.4 atse.4
MLINKS+=altera_sdcard.4 altera_sdcardc.4
MLINKS+=altq.4 ALTQ.4
MLINKS+=ath.4 if_ath.4
-MLINKS+=ath_pci.4 if_ath_pci.4
MLINKS+=aue.4 if_aue.4
MLINKS+=axe.4 if_axe.4
MLINKS+=bce.4 if_bce.4
@@ -654,7 +659,9 @@ MLINKS+=disc.4 if_disc.4
MLINKS+=edsc.4 if_edsc.4
MLINKS+=em.4 if_em.4 \
em.4 igb.4 \
- em.4 if_igb.4
+ em.4 if_igb.4 \
+ em.4 lem.4 \
+ em.4 if_lem.4
MLINKS+=enc.4 if_enc.4
MLINKS+=epair.4 if_epair.4
MLINKS+=et.4 if_et.4
@@ -684,6 +691,7 @@ MLINKS+=ipfirewall.4 ipaccounting.4 \
MLINKS+=ipheth.4 if_ipheth.4
MLINKS+=ipw.4 if_ipw.4
MLINKS+=iwi.4 if_iwi.4
+MLINKS+=iwlwifi.4 if_iwlwifi.4
MLINKS+=iwm.4 if_iwm.4
MLINKS+=iwn.4 if_iwn.4
MLINKS+=ixgbe.4 ix.4
@@ -727,10 +735,9 @@ MLINKS+=re.4 if_re.4
MLINKS+=rl.4 if_rl.4
MLINKS+=rtwn_pci.4 if_rtwn_pci.4
MLINKS+=rue.4 if_rue.4
-MLINKS+=scsi.4 CAM.4 \
- scsi.4 cam.4 \
- scsi.4 scbus.4 \
- scsi.4 SCSI.4
+MLINKS+=scsi.4 cam.4
+MLINKS+=scsi.4 scbus.4
+MLINKS+=scsi.4 SCSI.4
MLINKS+=sge.4 if_sge.4
MLINKS+=sis.4 if_sis.4
MLINKS+=sk.4 if_sk.4
@@ -759,6 +766,8 @@ MLINKS+=vr.4 if_vr.4
MLINKS+=vte.4 if_vte.4
MLINKS+=vtnet.4 if_vtnet.4
MLINKS+=watchdog.4 SW_WATCHDOG.4
+MLINKS+=wg.4 if_wg.4
+MLINKS+=wlan.4 wifi.4
MLINKS+=${_wpi.4} ${_if_wpi.4}
MLINKS+=xl.4 if_xl.4
@@ -785,12 +794,14 @@ _amdsmb.4= amdsmb.4
_amdsmn.4= amdsmn.4
_amdtemp.4= amdtemp.4
_asmc.4= asmc.4
+_atopcase.4= atopcase.4
_bxe.4= bxe.4
_bytgpio.4= bytgpio.4
_chvgpio.4= chvgpio.4
_coretemp.4= coretemp.4
_cpuctl.4= cpuctl.4
_dpms.4= dpms.4
+_ftgpio.4= ftgpio.4
_ftwd.4= ftwd.4
_hpt27xx.4= hpt27xx.4
_hptiop.4= hptiop.4
@@ -815,6 +826,7 @@ _igc.4= igc.4
_imcsmb.4= imcsmb.4
_io.4= io.4
_itwd.4= itwd.4
+_kvmclock.4= kvmclock.4
_mgb.4= mgb.4
_nda.4= nda.4
_nfe.4= nfe.4
@@ -825,11 +837,10 @@ _ntb_hw_amd.4= ntb_hw_amd.4
_ntb_hw_intel.4= ntb_hw_intel.4
_ntb_hw_plx.4= ntb_hw_plx.4
_ntb_transport.4=ntb_transport.4
-_nvd.4= nvd.4
-_nvme.4= nvme.4
_nvram.4= nvram.4
_padlock.4= padlock.4
_pchtherm.4= pchtherm.4
+_qat.4= qat.4
_qat_c2xxx.4= qat_c2xxx.4
_rr232x.4= rr232x.4
_speaker.4= speaker.4
@@ -842,6 +853,7 @@ _vmci.4= vmci.4
_vmd.4= vmd.4
_vmx.4= vmx.4
_wbwd.4= wbwd.4
+_wdatwd.4= wdatwd.4
_wpi.4= wpi.4
_xen.4= xen.4
_xnb.4= xnb.4
@@ -872,17 +884,9 @@ _vmm.4= vmm.4
.endif
.endif
-.if ${MACHINE_CPUARCH} == "mips"
-_nvram2env.4= nvram2env.4
-.endif
-
-.if ${MACHINE_CPUARCH} == "powerpc"
-_nvd.4= nvd.4
-_nvme.4= nvme.4
-.endif
-
.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" || \
${MACHINE_CPUARCH} == "aarch64"
+_gve.4= gve.4
_ipmi.4= ipmi.4
_linux.4= linux.4
_ossl.4= ossl.4
@@ -917,6 +921,7 @@ _ccd.4= ccd.4
_dtrace_provs= dtrace_audit.4 \
dtrace_io.4 \
dtrace_ip.4 \
+ dtrace_kinst.4 \
dtrace_lockstat.4 \
dtrace_proc.4 \
dtrace_sched.4 \
@@ -958,6 +963,7 @@ _atf_test_case.4= atf-test-case.4
.if ${MK_PF} != "no"
_pf.4= pf.4
_pflog.4= pflog.4
+_pflow.4= pflow.4
_pfsync.4= pfsync.4
.endif
diff --git a/share/man/man4/Makefile.depend b/share/man/man4/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man4/Makefile.depend
+++ b/share/man/man4/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man4/aac.4 b/share/man/man4/aac.4
index eec5bc1671ca..7a7d0350dcdb 100644
--- a/share/man/man4/aac.4
+++ b/share/man/man4/aac.4
@@ -21,8 +21,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd July 10, 2009
.Dt AAC 4
.Os
diff --git a/share/man/man4/aacraid.4 b/share/man/man4/aacraid.4
index 3f2e023a7a00..3bf683ac40c8 100644
--- a/share/man/man4/aacraid.4
+++ b/share/man/man4/aacraid.4
@@ -21,8 +21,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd June 19, 2015
.Dt AACRAID 4
.Os
diff --git a/share/man/man4/acpi.4 b/share/man/man4/acpi.4
index e7265654839a..434e97d529f5 100644
--- a/share/man/man4/acpi.4
+++ b/share/man/man4/acpi.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 12, 2021
.Dt ACPI 4
.Os
diff --git a/share/man/man4/acpi_asus.4 b/share/man/man4/acpi_asus.4
index 124999a72cc6..25c1df9599b2 100644
--- a/share/man/man4/acpi_asus.4
+++ b/share/man/man4/acpi_asus.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 8, 2010
.Dt ACPI_ASUS 4
.Os
diff --git a/share/man/man4/acpi_asus_wmi.4 b/share/man/man4/acpi_asus_wmi.4
index 9949b3b63bcb..7d6aeaca948b 100644
--- a/share/man/man4/acpi_asus_wmi.4
+++ b/share/man/man4/acpi_asus_wmi.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 2, 2012
.Dt ACPI_ASUS_WMI 4
.Os
@@ -65,7 +63,7 @@ handled inside the driver.
The following sysctls are currently implemented:
.Bl -tag -width indent
.It Va dev.acpi_asus_wmi.0.handle_keys
-Specifies whether driver should handle some harwdare keys, such as keyboard
+Specifies whether driver should handle some hardware keys, such as keyboard
backlight, internally.
.El
.Pp
diff --git a/share/man/man4/acpi_battery.4 b/share/man/man4/acpi_battery.4
index 2b44ecbce2b7..3707cd125678 100644
--- a/share/man/man4/acpi_battery.4
+++ b/share/man/man4/acpi_battery.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 16, 2020
.Dt ACPI_BATTERY 4
.Os
diff --git a/share/man/man4/acpi_dock.4 b/share/man/man4/acpi_dock.4
index db23b3b7f21e..b2c58627a55e 100644
--- a/share/man/man4/acpi_dock.4
+++ b/share/man/man4/acpi_dock.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 20, 2006
.Dt ACPI_DOCK 4
.Os
diff --git a/share/man/man4/acpi_fujitsu.4 b/share/man/man4/acpi_fujitsu.4
index 5a8271823610..da74e671dd67 100644
--- a/share/man/man4/acpi_fujitsu.4
+++ b/share/man/man4/acpi_fujitsu.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 8, 2010
.Dt ACPI_FUJITSU 4
.Os
diff --git a/share/man/man4/man4.i386/ce.4 b/share/man/man4/acpi_ged.4
index 451f9fb22da0..c87c7b3e97c9 100644
--- a/share/man/man4/man4.i386/ce.4
+++ b/share/man/man4/acpi_ged.4
@@ -1,5 +1,4 @@
-.\" Copyright (c) 2006 Roman Kurakin <rik@FreeBSD.org>
-.\" All rights reserved.
+.\" Copyright (c) 2022 Takanori Watanabe
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -10,10 +9,10 @@
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\"
-.\" THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
@@ -22,70 +21,42 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd October 22, 2021
-.Dt CE 4 i386
+.Dd October 18, 2022
+.Dt ACPI_GED 4
.Os
.Sh NAME
-.Nm ce
-.Nd "driver for synchronous Cronyx Tau-PCI/32 WAN adapters"
+.Nm acpi_ged
+.Nd "ACPI Generic Event Device"
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following line in your
kernel configuration file:
.Bd -ragged -offset indent
-.Cd "device ce"
+.Cd "device acpi_ged"
.Ed
.Pp
Alternatively, to load the driver as a
module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
-if_ce_load="YES"
+acpi_ged_load="YES"
.Ed
.Sh DESCRIPTION
The
.Nm
-driver creates a
-.Xr netgraph 4
-node for each device found.
-The node is usually paired with
-.Xr ng_async 4 ,
-.Xr ng_cisco 4 ,
-.Xr ng_frame_relay 4
-or with
-.Xr ng_ppp 4
-under control of net/mpd5 port.
-.Pp
-Refer to
-.Xr sconfig 8
-for information about the
-.Nm
-adapter configuration.
-.Sh HARDWARE
-The
-.Nm
-driver supports the following models of Tau-PCI/32 WAN adapters:
-.Pp
-.Bl -tag -width 20n -compact
-.It Cronyx Tau-PCI/32
-two fractional/unframed E1 interfaces,
-with 32 HDLC channels shared between them with total adapter throughput
-2048 kbps.
-.It Cronyx Tau-PCI/32-Lite
-single fractional/unframed E1 interface,
-with 32 HDLC channels.
-.El
+driver provides support for generic events interface.
+This handles interrupts and evaluates the specific ACPI method.
+This may generate optionally ACPI notify for another device.
.Sh SEE ALSO
-.Xr cp 4 ,
-.Xr netgraph 4 ,
-.Xr sconfig 8
+.Xr acpi 4
.Sh HISTORY
The
.Nm
-driver was added in
-.Fx 6.2 ,
-.Fx 5.5
-and
-.Fx 4.11 .
+device driver first appeared in
+.Fx 14.0 .
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+driver was written by
+.An Takanori Watanabe Aq Mt takawata@FreeBSD.org
diff --git a/share/man/man4/acpi_hp.4 b/share/man/man4/acpi_hp.4
index a3f320e4b3d8..660d66f53a1c 100644
--- a/share/man/man4/acpi_hp.4
+++ b/share/man/man4/acpi_hp.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 19, 2015
.Dt ACPI_HP 4
.Os
diff --git a/share/man/man4/acpi_ibm.4 b/share/man/man4/acpi_ibm.4
index 434a1a7cba2c..6b808b77c521 100644
--- a/share/man/man4/acpi_ibm.4
+++ b/share/man/man4/acpi_ibm.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 13, 2022
.Dt ACPI_IBM 4
.Os
diff --git a/share/man/man4/acpi_panasonic.4 b/share/man/man4/acpi_panasonic.4
index 160656b7a1db..de9663b5fe41 100644
--- a/share/man/man4/acpi_panasonic.4
+++ b/share/man/man4/acpi_panasonic.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 19, 2015
.Dt ACPI_PANASONIC 4
.Os
diff --git a/share/man/man4/acpi_rapidstart.4 b/share/man/man4/acpi_rapidstart.4
index 0bfa1bd12ca7..606a55d202d5 100644
--- a/share/man/man4/acpi_rapidstart.4
+++ b/share/man/man4/acpi_rapidstart.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 8, 2013
.Dt ACPI_RAPIDSTART 4
.Os
diff --git a/share/man/man4/acpi_sony.4 b/share/man/man4/acpi_sony.4
index c40ffcf1173d..33c988fba68c 100644
--- a/share/man/man4/acpi_sony.4
+++ b/share/man/man4/acpi_sony.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 8, 2010
.Dt ACPI_SONY 4
.Os
diff --git a/share/man/man4/acpi_thermal.4 b/share/man/man4/acpi_thermal.4
index d1cf8ee60ef2..86efaafed6b5 100644
--- a/share/man/man4/acpi_thermal.4
+++ b/share/man/man4/acpi_thermal.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd March 17, 2007
+.Dd November 21, 2022
.Dt ACPI_THERMAL 4
.Os
.Sh NAME
@@ -84,6 +82,9 @@ Current temperature for this zone.
.It Va hw.acpi.thermal.tz%d._PSV
Temperature to start passive cooling by throttling down CPU, etc.
This value can be overridden by the user.
+.It Va hw.acpi.thermal.tz%d._CR3
+Temperature to start critical suspend to RAM (S3).
+This value can be overridden by the user.
.It Va hw.acpi.thermal.tz%d._HOT
Temperature to start critical suspend to disk (S4).
This value can be overridden by the user.
diff --git a/share/man/man4/acpi_toshiba.4 b/share/man/man4/acpi_toshiba.4
index 3bf19d41bdb3..0d8514ebe7b7 100644
--- a/share/man/man4/acpi_toshiba.4
+++ b/share/man/man4/acpi_toshiba.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 8, 2010
.Dt ACPI_TOSHIBA 4
.Os
diff --git a/share/man/man4/acpi_video.4 b/share/man/man4/acpi_video.4
index 537c47ebd045..c51c3ff1047f 100644
--- a/share/man/man4/acpi_video.4
+++ b/share/man/man4/acpi_video.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 8, 2004
.Dt ACPI_VIDEO 4
.Os
diff --git a/share/man/man4/acpi_wmi.4 b/share/man/man4/acpi_wmi.4
index eaf85440702c..9ad14ed7892a 100644
--- a/share/man/man4/acpi_wmi.4
+++ b/share/man/man4/acpi_wmi.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 5, 2019
.Dt ACPI_WMI 4
.Os
diff --git a/share/man/man4/ada.4 b/share/man/man4/ada.4
index 0d1c0506425f..6536be44680b 100644
--- a/share/man/man4/ada.4
+++ b/share/man/man4/ada.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 20, 2017
.Dt ADA 4
.Os
diff --git a/share/man/man4/adm6996fc.4 b/share/man/man4/adm6996fc.4
index 81b96a1f6c68..af9d19b8450a 100644
--- a/share/man/man4/adm6996fc.4
+++ b/share/man/man4/adm6996fc.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 5, 2017
.Dt ADM6996FC 4
.Os
diff --git a/share/man/man4/ads111x.4 b/share/man/man4/ads111x.4
index b2e032a39b36..03468a4442da 100644
--- a/share/man/man4/ads111x.4
+++ b/share/man/man4/ads111x.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 2, 2019
.Dt ADS111x 4
.Os
@@ -55,8 +53,9 @@ The devices offer a number of configuration options which can be
set via hints, FDT data, and
.Xr sysctl 8 .
.Pp
-.Xr Sysctl 8
-provides access to the voltage measurements made by the device.
+The
+.Xr sysctl 8
+utility provides access to the voltage measurements made by the device.
Each time the
.Va dev.ads111x.<unit>.<channel>.voltage
variable is accessed for a given channel, the driver switches the
@@ -72,7 +71,7 @@ For example, if the sample rate were configured as 125 samples per
second, a single measurement would require 8 milliseconds.
.Pp
For devices that support multiple input pins, the device datasheet
-describes mux settings to control how those pins are interpeted when
+describes mux settings to control how those pins are interpreted when
making either single-ended or differential measurements.
There are eight possible ways to combine the inputs from the four pins.
The
diff --git a/share/man/man4/ae.4 b/share/man/man4/ae.4
index b1707d5b4c83..a871986b2c70 100644
--- a/share/man/man4/ae.4
+++ b/share/man/man4/ae.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 17, 2019
.Dt AE 4
.Os
diff --git a/share/man/man4/aesni.4 b/share/man/man4/aesni.4
index 08465bdf5e88..fbc0c0e59442 100644
--- a/share/man/man4/aesni.4
+++ b/share/man/man4/aesni.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 29, 2020
.Dt AESNI 4
.Os
diff --git a/share/man/man4/age.4 b/share/man/man4/age.4
index 054627fec4eb..0cd841477cbb 100644
--- a/share/man/man4/age.4
+++ b/share/man/man4/age.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 18, 2008
.Dt AGE 4
.Os
diff --git a/share/man/man4/agp.4 b/share/man/man4/agp.4
index 8af97d6387e1..de19349caa08 100644
--- a/share/man/man4/agp.4
+++ b/share/man/man4/agp.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 28, 2007
.Dt AGP 4
.Os
@@ -62,7 +60,7 @@ nForce and nForce2 AGP controllers
The most common application of
.Nm
is for running
-.Xr X 7
+.Xr X 7 Pq Pa ports/x11/xorg-docs
on the Intel i81x controllers.
.Sh IOCTLS
The following
diff --git a/share/man/man4/ahc.4 b/share/man/man4/ahc.4
index 1e7a9fdb3607..a666885f8f4a 100644
--- a/share/man/man4/ahc.4
+++ b/share/man/man4/ahc.4
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 15, 2017
.Dt AHC 4
.Os
diff --git a/share/man/man4/ahci.4 b/share/man/man4/ahci.4
index ba2bde4e34bd..70fe34904e63 100644
--- a/share/man/man4/ahci.4
+++ b/share/man/man4/ahci.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 17, 2021
.Dt AHCI 4
.Os
diff --git a/share/man/man4/ahd.4 b/share/man/man4/ahd.4
index e00c42758ea7..cf04863ce1c8 100644
--- a/share/man/man4/ahd.4
+++ b/share/man/man4/ahd.4
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 4, 2004
.Dt AHD 4
.Os
diff --git a/share/man/man4/aibs.4 b/share/man/man4/aibs.4
index c760465ae638..f3bba5fbc586 100644
--- a/share/man/man4/aibs.4
+++ b/share/man/man4/aibs.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" $NetBSD: aibs.4,v 1.2 2010/02/09 05:37:25 cnst Exp $
.\" $OpenBSD: aibs.4,v 1.4 2009/07/30 06:30:45 jmc Exp $
.\"
diff --git a/share/man/man4/aio.4 b/share/man/man4/aio.4
index 513a5728defc..21332a3b1037 100644
--- a/share/man/man4/aio.4
+++ b/share/man/man4/aio.4
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2002 Dag-Erling Coïdan Smørgrav
+.\" Copyright (c) 2002 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 2, 2021
.Dt AIO 4
.Os
diff --git a/share/man/man4/alc.4 b/share/man/man4/alc.4
index 6398f79ae1d1..5ce5ce97d68a 100644
--- a/share/man/man4/alc.4
+++ b/share/man/man4/alc.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 22, 2016
.Dt ALC 4
.Os
@@ -138,7 +136,11 @@ This tunable disables MSI support on the Ethernet hardware.
The default value is 0.
.It Va hw.alc.msix_disable
This tunable disables MSI-X support on the Ethernet hardware.
-The default value is 0.
+The default value is 2, which means to enable or disable MSI-X based on the
+card type; for "Killer" cards (E2x00) MSI-X will be disabled, while on other
+cards it will be enabled.
+Set this to 0 to force MSI-X to be enabled, or 1 to force it to be disabled
+regardless of card type.
.El
.Sh SYSCTL VARIABLES
The following variables are available as both
diff --git a/share/man/man4/ale.4 b/share/man/man4/ale.4
index 85fc6e24424c..fe48357c94f4 100644
--- a/share/man/man4/ale.4
+++ b/share/man/man4/ale.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 12, 2008
.Dt ALE 4
.Os
diff --git a/share/man/man4/alpm.4 b/share/man/man4/alpm.4
index 5bfa8774a81f..5f8be9432de4 100644
--- a/share/man/man4/alpm.4
+++ b/share/man/man4/alpm.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 13, 1999
.Dt ALPM 4
.Os
diff --git a/share/man/man4/altera_atse.4 b/share/man/man4/altera_atse.4
index 1cff0d05482f..d425b125d961 100644
--- a/share/man/man4/altera_atse.4
+++ b/share/man/man4/altera_atse.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 21, 2014
.Dt ALTERA_ATSE 4
.Os
diff --git a/share/man/man4/altera_avgen.4 b/share/man/man4/altera_avgen.4
index 2ba9360b7fc7..dc7e9a0a308b 100644
--- a/share/man/man4/altera_avgen.4
+++ b/share/man/man4/altera_avgen.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 18, 2012
.Dt ALTERA_AVGEN 4
.Os
diff --git a/share/man/man4/altera_jtag_uart.4 b/share/man/man4/altera_jtag_uart.4
index 5b5a25f58f7d..339e58d7c2f1 100644
--- a/share/man/man4/altera_jtag_uart.4
+++ b/share/man/man4/altera_jtag_uart.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 18, 2012
.Dt ALTERA_JTAG_UART 4
.Os
diff --git a/share/man/man4/altera_sdcard.4 b/share/man/man4/altera_sdcard.4
index 4155dcbd2c60..65d1ba5369ed 100644
--- a/share/man/man4/altera_sdcard.4
+++ b/share/man/man4/altera_sdcard.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 18, 2012
.Dt ALTERA_SDCARD 4
.Os
diff --git a/share/man/man4/altq.4 b/share/man/man4/altq.4
index 5e8989025cb3..2a6acc96ed86 100644
--- a/share/man/man4/altq.4
+++ b/share/man/man4/altq.4
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 26, 2021
+.Dd January 21, 2024
.Dt ALTQ 4
.Os
.Sh NAME
@@ -130,7 +128,6 @@ They have been applied to the following hardware drivers:
.Xr age 4 ,
.Xr alc 4 ,
.Xr ale 4 ,
-.Xr an 4 ,
.Xr aue 4 ,
.Xr axe 4 ,
.Xr bce 4 ,
@@ -138,7 +135,6 @@ They have been applied to the following hardware drivers:
.Xr bge 4 ,
.Xr bxe 4 ,
.Xr cas 4 ,
-.Xr cxgbe 4 ,
.Xr dc 4 ,
.Xr em 4 ,
.Xr epair 4 ,
@@ -155,7 +151,6 @@ They have been applied to the following hardware drivers:
.Xr my 4 ,
.Xr nfe 4 ,
.Xr nge 4 ,
-.Xr npe 4 ,
.Xr qlxgb 4 ,
.Xr re 4 ,
.Xr rl 4 ,
@@ -173,19 +168,14 @@ and
.Xr xl 4 .
.Pp
The
-.Xr tun 4
+.Xr tun 4 ,
+.Xr if_bridge 4 ,
+.Xr if_vlan 4 ,
and
.Xr ng_iface 4
pseudo drivers also do support
.Nm .
.Pp
-The
-.Xr vlan 4
-driver does not directly support
-.Nm ,
-but as packets (mbufs) are passed to the underlying interface, a queue
-can be defined for the underlying interface, and any packets directed
-to the queue will be processed at the interface level.
An example:
.Bd -literal -offset indent
altq on igb0 cbq queue { def aq }
diff --git a/share/man/man4/amdpm.4 b/share/man/man4/amdpm.4
index a872d90b25d3..65d2706e5682 100644
--- a/share/man/man4/amdpm.4
+++ b/share/man/man4/amdpm.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 31, 2005
.Dt AMDPM 4
.Os
diff --git a/share/man/man4/amdsbwd.4 b/share/man/man4/amdsbwd.4
index 5535f7c7b508..676b06fc1d03 100644
--- a/share/man/man4/amdsbwd.4
+++ b/share/man/man4/amdsbwd.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 8, 2016
.Dt AMDSBWD 4
.Os
diff --git a/share/man/man4/amdsmb.4 b/share/man/man4/amdsmb.4
index 83a3176e9cb1..7f4b471a722d 100644
--- a/share/man/man4/amdsmb.4
+++ b/share/man/man4/amdsmb.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 31, 2005
.Dt AMDSMB 4
.Os
diff --git a/share/man/man4/amdsmn.4 b/share/man/man4/amdsmn.4
index 8e279cc00319..fd3e247ac813 100644
--- a/share/man/man4/amdsmn.4
+++ b/share/man/man4/amdsmn.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 5, 2017
.Dt AMDSMN 4
.Os
diff --git a/share/man/man4/amdtemp.4 b/share/man/man4/amdtemp.4
index 8d1764f7e877..cd876f5c67da 100644
--- a/share/man/man4/amdtemp.4
+++ b/share/man/man4/amdtemp.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 5, 2017
.Dt AMDTEMP 4
.Os
@@ -83,6 +81,7 @@ tunable:
Add the given offset to the temperature of the sensor.
Default is 0.
.Sh SEE ALSO
+.Xr coretemp 4 ,
.Xr loader 8 ,
.Xr sysctl 8
.Sh HISTORY
diff --git a/share/man/man4/aout.4 b/share/man/man4/aout.4
index 960ae25dd0b7..78c18e0c5f42 100644
--- a/share/man/man4/aout.4
+++ b/share/man/man4/aout.4
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 14, 2012
.Dt AOUT 4
.Os
diff --git a/share/man/man4/apic.4 b/share/man/man4/apic.4
index da9b71ef6798..022acd878a51 100644
--- a/share/man/man4/apic.4
+++ b/share/man/man4/apic.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 19, 2020
.Dt APIC 4
.Os
diff --git a/share/man/man4/arcmsr.4 b/share/man/man4/arcmsr.4
index 4efb946f6ddf..9356f4f23c8b 100644
--- a/share/man/man4/arcmsr.4
+++ b/share/man/man4/arcmsr.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 15, 2020
.Dt ARCMSR 4
.Os
diff --git a/share/man/man4/arswitch.4 b/share/man/man4/arswitch.4
index 481a3a08f339..3ec7316ae6e7 100644
--- a/share/man/man4/arswitch.4
+++ b/share/man/man4/arswitch.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd October 19, 2021
+.Dd August 8, 2023
.Dt ARSWITCH 4
.Os
.Sh NAME
@@ -39,9 +37,7 @@ The
.Nm
device driver provides a management interface to multiple Atheros
fast ethernet switch chips:
-.Bl -tag -compact -width "AR7240"
-.It AR7240
-Wireless Network Processor SOC with five Fast Ethernet PHYs
+.Bl -tag -compact -width "AR8216"
.It AR8216
Fast Ethernet Switch
.It AR8226
@@ -49,8 +45,6 @@ Fast Ethernet Switch
Six-port Gigabit Ethernet Switch
.It AR8327
Seven-port Gigabit Ethernet Switch
-.It AR9340
-Wireless networking SoC
.El
.Pp
The driver uses an
diff --git a/share/man/man4/asmc.4 b/share/man/man4/asmc.4
index bd7720a96583..4bc2a040bbce 100644
--- a/share/man/man4/asmc.4
+++ b/share/man/man4/asmc.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 2, 2019
.Dt ASMC 4
.Os
diff --git a/share/man/man4/at45d.4 b/share/man/man4/at45d.4
index e0240e28f3d7..3b49f5cf7e40 100644
--- a/share/man/man4/at45d.4
+++ b/share/man/man4/at45d.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 2, 2019
.Dt AT45D 4
.Os
diff --git a/share/man/man4/ata.4 b/share/man/man4/ata.4
index 4fb7a3a75874..feea1dd3cc85 100644
--- a/share/man/man4/ata.4
+++ b/share/man/man4/ata.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 23, 2015
.Dt ATA 4
.Os
diff --git a/share/man/man4/ath.4 b/share/man/man4/ath.4
index 564238fd396e..e731277e4e75 100644
--- a/share/man/man4/ath.4
+++ b/share/man/man4/ath.4
@@ -25,10 +25,8 @@
.\" IN CONTRACT, STRICT 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 DAMAGES.
-.\"
-.\" $FreeBSD$
.\"/
-.Dd June 16, 2020
+.Dd August 7, 2023
.Dt ATH 4
.Os
.Sh NAME
@@ -40,7 +38,6 @@ place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
.Cd "device ath"
-.Cd "device ath_pci"
.Cd "device ath_hal"
.Cd "device ath_rate_sample"
.Cd "device wlan"
@@ -51,7 +48,6 @@ module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
if_ath_load="YES"
-if_ath_pci_load="YES"
.Ed
.Sh DESCRIPTION
The
@@ -65,19 +61,6 @@ Supported features include 802.11 and 802.3 frames, power management, BSS,
IBSS, MBSS, WDS/DWDS TDMA, and host-based access point operation modes.
All host/device interaction is via DMA.
.Pp
-Please note that from FreeBSD-9.0, the
-.Nm
-driver does not include the PCI/PCIe bus glue.
-The same driver supports multiple underlying bus types, including PCI/PCIe,
-but also embedded (AHB) and USB in the future.
-.Pp
-To enable use for PCI/PCIe systems, see the
-.Xr ath_pci 4
-driver.
-For embedded systems which use the AHB to connect the wireless MAC, see the
-.Xr ath_ahb 4
-driver.
-.Pp
The
.Nm
driver encapsulates all IP and ARP traffic as 802.11 frames, however
diff --git a/share/man/man4/ath10k.4 b/share/man/man4/ath10k.4
new file mode 100644
index 000000000000..61c44543815f
--- /dev/null
+++ b/share/man/man4/ath10k.4
@@ -0,0 +1,100 @@
+.\"-
+.\" Copyright (c) 2022 Bjoern A. Zeeb
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 April 22, 2023
+.Dt ATH10K 4
+.Os
+.Sh NAME
+.Nm ath10k
+.Nd Qualcomm Atheros IEEE 802.11ac wireless network driver
+.Sh SYNOPSIS
+The driver will auto-load without any user interaction using
+.Xr devmatch 8
+if enabled in
+.Xr rc.conf 5 .
+.Pp
+Only if auto-loading is explicitly disabled, place the following
+lines in
+.Xr rc.conf 5
+to manually load the driver as a module at boot time:
+.Bd -literal -offset indent
+kld_list="${kld_list} if_ath10k"
+.Ed
+.Pp
+It is discouraged to load the driver from
+.Xr loader 8 .
+.Sh DESCRIPTION
+The
+.Nm
+driver is derived from Qualcomm Atheros' Linux ath10k driver and
+provides support for the following PCI chipsets:
+.Pp
+.Bl -tag -width Ds -offset indent -compact
+.It QCA6174
+.It QCA9377
+.It QCA9887
+.It QCA9888
+.It QCA988X
+.It QCA9984
+.It QCA99X0
+.El
+.Pp
+This driver requires firmware to be loaded before it will work.
+The package
+.Pa wifi-firmware-ath10k-kmod
+from the
+.Pa ports/net/wifi-firmware-ath10k-kmod
+port needs to be installed before the driver is loaded.
+Otherwise no
+.Xr wlan 4
+interface can be created using
+.Xr ifconfig 8 .
+The driver uses the
+.\" No LinuxKPI man pages so no .Xr here.
+.Em linuxkpi_wlan
+and
+.Em linuxkpi
+compat framework to bridge between the Linux and
+native
+.Fx
+driver code as well as to the native
+.Xr net80211 4
+wireless stack.
+.Pp
+While
+.Nm
+supports all 802.11 a/b/g/n and ac
+the compatibility code currently only supports 802.11 a/b/g modes.
+Support for 802.11 n/ac is to come.
+.Sh SEE ALSO
+.Xr wlan 4 ,
+.Xr ifconfig 8 ,
+.Xr wpa_supplicant 8
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Fx 14.0 .
+.Sh BUGS
+Certainly.
diff --git a/share/man/man4/ath_ahb.4 b/share/man/man4/ath_ahb.4
deleted file mode 100644
index 52aceb760657..000000000000
--- a/share/man/man4/ath_ahb.4
+++ /dev/null
@@ -1,60 +0,0 @@
-.\"-
-.\" Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd
-.\" All rights reserved.
-.\""
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer,
-.\" without modification.
-.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer
-.\" similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
-.\" redistribution must be conditioned upon including a substantially
-.\" similar Disclaimer requirement for further binary redistribution.
-.\"
-.\" NO WARRANTY
-.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-.\" LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
-.\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
-.\" THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
-.\" OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT 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 DAMAGES.
-.\"
-.\" $FreeBSD$
-.\"/
-.Dd May 30, 2011
-.Dt ATH_AHB 4
-.Os
-.Sh NAME
-.Nm ath_ahb
-.Nd "Atheros AHB device glue"
-.Sh SYNOPSIS
-.Cd "device ath_ahb"
-.Sh DESCRIPTION
-This module provides the AHB bus glue needed for the devices supported
-by the
-.Xr ath 4
-and
-.Xr ath_hal 4
-drivers.
-.Pp
-This is only relevant for embedded System-on-Chip (SoC) devices such as
-the Atheros AR913x series, which include an Atheros wireless MAC on-die.
-.Sh SEE ALSO
-.Xr ath 4 ,
-.Xr ath_hal 4
-.Sh HISTORY
-The
-.Nm
-module first appeared in
-.Fx 9.0 .
-.Sh BUGS
-See
-.Xr ath 4
-for known bugs.
diff --git a/share/man/man4/ath_hal.4 b/share/man/man4/ath_hal.4
index 940809a9c3c9..cc5349119244 100644
--- a/share/man/man4/ath_hal.4
+++ b/share/man/man4/ath_hal.4
@@ -25,10 +25,8 @@
.\" IN CONTRACT, STRICT 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 DAMAGES.
-.\"
-.\" $FreeBSD$
.\"/
-.Dd January 25, 2019
+.Dd August 7, 2023
.Dt ATH_HAL 4
.Os
.Sh NAME
@@ -50,7 +48,6 @@ or
.\".Cd "device ath_ar5312"
.\".Cd "device ath_rf2136"
.\".Cd "device ath_rf2137"
-.Cd "device ath_ar9130"
.Cd "device ath_ar9160"
.Cd "device ath_ar9280"
.Cd "device ath_ar9285"
@@ -59,7 +56,7 @@ or
.Sh DESCRIPTION
The hal provides hardware support for wireless network adapters based on
the Atheros AR5210, AR5211, AR5212, AR5213, AR2413, AR2417, AR2425,
-AR5413, AR5416, AR5418, AR5424, AR9130, AR9160, AR9220, AR9280, AR9285,
+AR5413, AR5416, AR5418, AR5424, AR9160, AR9220, AR9280, AR9285,
AR9287, AR9380, AR9390, AR9580, AR9590, AR9562 and QCA9565
chips (and companion RF/baseband parts).
This code is part of the
diff --git a/share/man/man4/ath_pci.4 b/share/man/man4/ath_pci.4
deleted file mode 100644
index 0cc36d7268f3..000000000000
--- a/share/man/man4/ath_pci.4
+++ /dev/null
@@ -1,57 +0,0 @@
-.\"-
-.\" Copyright (c) 2011 Adrian Chadd, Xenion Pty Ltd
-.\" All rights reserved.
-.\""
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer,
-.\" without modification.
-.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer
-.\" similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
-.\" redistribution must be conditioned upon including a substantially
-.\" similar Disclaimer requirement for further binary redistribution.
-.\"
-.\" NO WARRANTY
-.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-.\" LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
-.\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
-.\" THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
-.\" OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
-.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
-.\" IN CONTRACT, STRICT 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 DAMAGES.
-.\"
-.\" $FreeBSD$
-.\"/
-.Dd May 30, 2011
-.Dt ATH_PCI 4
-.Os
-.Sh NAME
-.Nm ath_pci
-.Nd "Atheros PCI device glue"
-.Sh SYNOPSIS
-.Cd "device ath_pci"
-.Sh DESCRIPTION
-This module provides the PCI/PCIe bus glue needed for the devices supported
-by the
-.Xr ath 4
-and
-.Xr ath_hal 4
-drivers.
-.Sh SEE ALSO
-.Xr ath 4 ,
-.Xr ath_hal 4
-.Sh HISTORY
-The
-.Nm
-module first appeared in
-.Fx 9.0 .
-.Sh BUGS
-See
-.Xr ath 4
-for known bugs.
diff --git a/share/man/man4/atkbd.4 b/share/man/man4/atkbd.4
index 7ce99e70e467..84087364d779 100644
--- a/share/man/man4/atkbd.4
+++ b/share/man/man4/atkbd.4
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 29, 2008
.Dt ATKBD 4
.Os
diff --git a/share/man/man4/atkbdc.4 b/share/man/man4/atkbdc.4
index d0fc50d145a5..48067c98a5be 100644
--- a/share/man/man4/atkbdc.4
+++ b/share/man/man4/atkbdc.4
@@ -24,9 +24,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd February 9, 1999
+.Dd February 26, 2023
.Dt ATKBDC 4
.Os
.Sh NAME
@@ -35,6 +33,8 @@
.Sh SYNOPSIS
.Cd "options KBD_RESETDELAY=N"
.Cd "options KBD_MAXWAIT=N"
+.Cd "options KBD_DELAY1=N"
+.Cd "options KBD_DELAY2=N"
.Cd "options KBDIO_DEBUG=N"
.Cd "device atkbdc"
.Pp
@@ -90,6 +90,13 @@ The default values are
and 5
for
.Fa Y .
+.It Em KBD_DELAY1=X, KBD_DELAY2=Y
+DELAY1 sets the initial key repeat delay to
+.Fa X .
+The default value is 500ms.
+DELAY2 sets the key repeat delay to
+.Fa Y .
+The default value is 100ms.
.It Em KBDIO_DEBUG=N
Sets the debug level to
.Fa N .
diff --git a/share/man/man4/atopcase.4 b/share/man/man4/atopcase.4
new file mode 100644
index 000000000000..33e47ec64ee8
--- /dev/null
+++ b/share/man/man4/atopcase.4
@@ -0,0 +1,134 @@
+.\" Copyright (c) 2023 Vladimir Kondratyev <wulf@FreeBSD.org>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 August 17, 2023
+.Dt ATOPCASE 4
+.Os
+.Sh NAME
+.Nm atopcase
+.Nd Apple HID-over-SPI transport 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 atopcase"
+.Cd "device intelspi"
+.Cd "device spibus"
+.Cd "device hidbus"
+.Cd "device hkbd"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+atopcase_load="YES"
+hkbd_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for Human Interface Devices (HID) on
+Serial Peripheral Interface (SPI) buses on Apple Intel Macs.
+.Sh HARDWARE
+The
+.Nm
+driver supports the following MacBooks produced in 2015-2018 years:
+.Pp
+.Bl -bullet -compact
+.It
+Macbook8,1
+.It
+Macbook9,1
+.It
+Macbook10,1
+.It
+MacbookPro11,4
+.It
+MacbookPro12,1
+.It
+MacbookPro13,1
+.It
+MacbookPro13,2
+.It
+MacbookPro13,3
+.It
+MacbookPro14,1
+.It
+MacbookPro14,2
+.It
+MacbookPro14,3
+.El
+.Sh SYSCTL VARIABLES
+The following variables are available as both
+.Xr sysctl 8
+variables and
+.Xr loader 8
+tunables:
+.Bl -tag -width indent
+.It Va hw.hid.atopcase.debug
+Debug output level, where 0 is debugging disabled and larger values increase
+debug message verbosity.
+Default is 0.
+.El
+.Sh FILES
+.Bl -tag -width ".Pa /dev/backlight/atopcase0" -compact
+.It Pa /dev/backlight/atopcase0
+Keyboard
+.Xr backlight 8
+device node.
+.El
+.Sh SEE ALSO
+.Xr acpi 4 ,
+.Xr backlight 8 ,
+.Xr loader 8 ,
+.Xr loader.conf 5 .
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Fx 14.0 .
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+driver was originally written by
+.An Val Packett Aq Mt val@packett.cool
+and marginally improved upon by
+.An Vladimir Kondratyev Aq Mt wulf@FreeBSD.org .
+.Pp
+This manual page was written by
+.An Vladimir Kondratyev Aq Mt wulf@FreeBSD.org .
+.Sh BUGS
+Device interrupts are not acknowledged on some hardware that results in
+interrupt storm.
+Installation of Darwin OSI in
+.Xr acpi 4
+driver fixes the issue.
+To install Darwin OSI add following lines to
+.Xr loader.conf 5 :
+.Bl -tag -width indent
+.It Va hw.acpi.install_interface="Darwin"
+.It Va hw.acpi.remove_interface="Windows 2009, Windows 2012"
+.El
diff --git a/share/man/man4/atp.4 b/share/man/man4/atp.4
index b622bb0b6380..3c0c59348847 100644
--- a/share/man/man4/atp.4
+++ b/share/man/man4/atp.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 24, 2014
.Dt ATP 4
.Os
diff --git a/share/man/man4/atrtc.4 b/share/man/man4/atrtc.4
index 3a046a34a587..942d6fe09f73 100644
--- a/share/man/man4/atrtc.4
+++ b/share/man/man4/atrtc.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd September 17, 2010
+.Dd December 15, 2022
.Dt ATRTC 4
.Os
.Sh NAME
@@ -40,7 +38,7 @@ The following tunables are settable from the
controls event timers functionality support.
Setting to 0, disables it.
Default value is 1.
-.It Va hw.atrtc.enable
+.It Va hw.atrtc.enabled
Forces enabling or disabling of the device(s).
Setting to 0 disables it, setting to 1 enables it, bypassing any platform
configuration hints.
diff --git a/share/man/man4/attimer.4 b/share/man/man4/attimer.4
index 097e07335978..a24cc6fe9243 100644
--- a/share/man/man4/attimer.4
+++ b/share/man/man4/attimer.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 26, 2014
.Dt ATTIMER 4
.Os
diff --git a/share/man/man4/audit.4 b/share/man/man4/audit.4
index f8430edf348b..54434101f490 100644
--- a/share/man/man4/audit.4
+++ b/share/man/man4/audit.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 28, 2019
.Dt AUDIT 4
.Os
diff --git a/share/man/man4/auditpipe.4 b/share/man/man4/auditpipe.4
index 7dc9cdaff509..415216f51dcd 100644
--- a/share/man/man4/auditpipe.4
+++ b/share/man/man4/auditpipe.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 28, 2019
.Dt AUDITPIPE 4
.Os
diff --git a/share/man/man4/aue.4 b/share/man/man4/aue.4
index 043200e857b0..e451315672e9 100644
--- a/share/man/man4/aue.4
+++ b/share/man/man4/aue.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 24, 2015
.Dt AUE 4
.Os
diff --git a/share/man/man4/axe.4 b/share/man/man4/axe.4
index 060dcc9d72bf..023175fe3946 100644
--- a/share/man/man4/axe.4
+++ b/share/man/man4/axe.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 24, 2015
.Dt AXE 4
.Os
diff --git a/share/man/man4/axge.4 b/share/man/man4/axge.4
index 47a10a82606f..9ca268d6ff83 100644
--- a/share/man/man4/axge.4
+++ b/share/man/man4/axge.4
@@ -28,14 +28,12 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 24, 2015
+.Dd October 4, 2023
.Dt AXGE 4
.Os
.Sh NAME
.Nm axge
-.Nd "ASIX Electronics AX88178A/AX88179 USB Gigabit Ethernet driver"
+.Nd "ASIX Electronics AX88178A/179/179A USB Gigabit Ethernet driver"
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following lines in your
@@ -61,13 +59,13 @@ if_axge_load="YES"
The
.Nm
driver provides support for USB Gigabit Ethernet adapters based on the ASIX
-Electronics AX88179 USB 3.0 and AX88178A USB 2.0 chipsets.
+Electronics AX88179/AX88179A USB 3.0 and AX88178A USB 2.0 chipsets.
.Pp
-The AX88179 and AX88178A contain a 10/100/1000 Ethernet MAC with a GMII
-interface for interfacing with the Gigabit Ethernet PHY.
+The AX88179, AX88179A and AX88178A contain a 10/100/1000 Ethernet MAC with a
+GMII interface for interfacing with the Gigabit Ethernet PHY.
.Pp
These devices will operate with both USB 1.x and USB 2.0 controllers, and the
-AX88179 will operate with USB 3.0 controllers.
+AX88179/AX88179A will operate with USB 3.0 controllers.
Packets are received and transmitted over separate USB bulk transfer endpoints.
.Pp
The
diff --git a/share/man/man4/bce.4 b/share/man/man4/bce.4
index 9d7fc9dd19c0..ab979f371b66 100644
--- a/share/man/man4/bce.4
+++ b/share/man/man4/bce.4
@@ -22,8 +22,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 4, 2012
.Dt BCE 4
.Os
diff --git a/share/man/man4/bcm5974.4 b/share/man/man4/bcm5974.4
index b5f875c8d934..378a2c939f9e 100644
--- a/share/man/man4/bcm5974.4
+++ b/share/man/man4/bcm5974.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 27, 2022
.Dt BCM5974 4
.Os
@@ -56,7 +54,7 @@ driver provides support for the Wellspring touchpads found in many Apple
laptops.
.Pp
To get multi-touch device working in
-.Xr X 7 ,
+.Xr X 7 Pq Pa ports/x11/xorg-docs ,
install
.Pa ports/x11-drivers/xf86-input-libinput .
.Sh FILES
diff --git a/share/man/man4/bcma.4 b/share/man/man4/bcma.4
index fe416c63a218..de1a25bff0d8 100644
--- a/share/man/man4/bcma.4
+++ b/share/man/man4/bcma.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 3, 2016
.Dt BCMA 4
.Os
diff --git a/share/man/man4/bfe.4 b/share/man/man4/bfe.4
index 307813b7ab4f..c961683a2091 100644
--- a/share/man/man4/bfe.4
+++ b/share/man/man4/bfe.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 16, 2005
.Dt BFE 4
.Os
@@ -46,6 +44,13 @@ module at boot time, place the following line in
.Bd -literal -offset indent
if_bfe_load="YES"
.Ed
+.Sh DEPRECATION NOTICE
+The
+.Nm
+driver is unmaintained and may be removed from
+.Fx
+in a future release.
+.Fx .
.Sh DESCRIPTION
The
.Nm
diff --git a/share/man/man4/bge.4 b/share/man/man4/bge.4
index 50c0cf9c9b8c..de559c16df3c 100644
--- a/share/man/man4/bge.4
+++ b/share/man/man4/bge.4
@@ -29,8 +29,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 18, 2017
.Dt BGE 4
.Os
diff --git a/share/man/man4/bhnd.4 b/share/man/man4/bhnd.4
index f008794d9c75..1bf1039868a9 100644
--- a/share/man/man4/bhnd.4
+++ b/share/man/man4/bhnd.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 3, 2016
.Dt BHND 4
.Os
diff --git a/share/man/man4/bhnd_chipc.4 b/share/man/man4/bhnd_chipc.4
index ea87b4bf5930..b4fbeea9d278 100644
--- a/share/man/man4/bhnd_chipc.4
+++ b/share/man/man4/bhnd_chipc.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 16, 2017
.Dt BHND_CHIPC 4
.Os
diff --git a/share/man/man4/bhnd_pmu.4 b/share/man/man4/bhnd_pmu.4
index 8894f4f22856..6ad913e40527 100644
--- a/share/man/man4/bhnd_pmu.4
+++ b/share/man/man4/bhnd_pmu.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 16, 2017
.Dt BHND_PMU 4
.Os
diff --git a/share/man/man4/bhndb.4 b/share/man/man4/bhndb.4
index a55082039fdf..683ae4678d47 100644
--- a/share/man/man4/bhndb.4
+++ b/share/man/man4/bhndb.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 16, 2017
.Dt BHNDB 4
.Os
diff --git a/share/man/man4/bhndb_pci.4 b/share/man/man4/bhndb_pci.4
index 1713c5f3d41f..53b2d42fa1b3 100644
--- a/share/man/man4/bhndb_pci.4
+++ b/share/man/man4/bhndb_pci.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 16, 2017
.Dt BHNDB_PCI 4
.Os
diff --git a/share/man/man4/bhyve.4 b/share/man/man4/bhyve.4
index f65485592651..a87acaf20fab 100644
--- a/share/man/man4/bhyve.4
+++ b/share/man/man4/bhyve.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 5, 2013
.Dt BHYVE 4
.Os
diff --git a/share/man/man4/blackhole.4 b/share/man/man4/blackhole.4
index 17d1286525e4..00c8e3d7a2b6 100644
--- a/share/man/man4/blackhole.4
+++ b/share/man/man4/blackhole.4
@@ -10,8 +10,6 @@
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\"
-.\"
-.\" $FreeBSD$
.Dd November 3, 2021
.Dt BLACKHOLE 4
.Os
diff --git a/share/man/man4/bnxt.4 b/share/man/man4/bnxt.4
index a7b3615437fb..f07c66fd4dda 100644
--- a/share/man/man4/bnxt.4
+++ b/share/man/man4/bnxt.4
@@ -23,8 +23,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 18, 2020
.Dt BNXT 4
.Os
diff --git a/share/man/man4/boottrace.4 b/share/man/man4/boottrace.4
index 2a6c9764eb04..01cce4c4e84a 100644
--- a/share/man/man4/boottrace.4
+++ b/share/man/man4/boottrace.4
@@ -1,4 +1,4 @@
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2022 NetApp, Inc.
.\"
diff --git a/share/man/man4/bpf.4 b/share/man/man4/bpf.4
index f07279566ee4..4a40f4947dfd 100644
--- a/share/man/man4/bpf.4
+++ b/share/man/man4/bpf.4
@@ -47,8 +47,6 @@
.\" This document is derived in part from the enet man page (enet.4)
.\" distributed with 4.3BSD Unix.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 13, 2021
.Dt BPF 4
.Os
diff --git a/share/man/man4/bridge.4 b/share/man/man4/bridge.4
index e193724928ca..31a0ce43a263 100644
--- a/share/man/man4/bridge.4
+++ b/share/man/man4/bridge.4
@@ -33,9 +33,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 17, 2021
+.Dd April 10, 2023
.Dt IF_BRIDGE 4
.Os
.Sh NAME
@@ -118,6 +116,15 @@ interfaces that are part of the bridge.
For unicast traffic, the bridge learns which MAC addresses are associated
with which interfaces and will forward the traffic selectively.
.Pp
+By default the bridge logs MAC address port flapping to
+.Xr syslog 3 .
+This behavior can be disabled by setting the
+.Xr sysctl 8
+variable
+.Va net.link.bridge.log_mac_flap
+to
+.Li 0 .
+.Pp
All the bridged member interfaces need to be up in order to pass network traffic.
These can be enabled using
.Xr ifconfig 8
@@ -127,7 +134,9 @@ in
.Xr rc.conf 5 .
.Pp
The MTU of the first member interface to be added is used as the bridge MTU.
-All additional members are required to have exactly the same MTU value.
+All additional members will have their MTU changed to match.
+If the MTU of a bridge is changed after its creation, the MTU of all member
+interfaces is also changed to match.
.Pp
The TOE, TSO, TXCSUM and TXCSUM6 capabilities on all interfaces added to the
bridge are disabled if any of the interfaces do not support/enable them.
@@ -410,6 +419,29 @@ interface and not to the bridge members.
Enabling
.Va net.link.bridge.pfil_local_phys
will let you do the additional filtering on the physical interface.
+.Sh NETMAP
+.Xr netmap 4
+applications may open a bridge interface in emulated mode.
+The netmap application will receive all packets which arrive from member
+interfaces.
+In particular, packets which would otherwise be forwarded to another
+member interface will be received by the netmap application.
+.Pp
+When the
+.Xr netmap 4
+application transmits a packet to the host stack via the bridge interface,
+.Nm
+receive it and attempts to determine its
+.Ql source
+interface by looking up the source MAC address in the interface's learning
+tables.
+Packets for which no matching source interface is found are dropped and the
+input error counter is incremented.
+If a matching source interface is found,
+.Nm
+treats the packet as though it was received from the corresponding interface
+and handles it normally without passing the packet back to
+.Xr netmap 4 .
.Sh EXAMPLES
The following when placed in the file
.Pa /etc/rc.conf
@@ -484,6 +516,7 @@ ifconfig bridge0 addm fxp0 addm gif0 up
.Xr gif 4 ,
.Xr ipf 4 ,
.Xr ipfw 4 ,
+.Xr netmap 4 ,
.Xr pf 4 ,
.Xr ifconfig 8
.Sh HISTORY
@@ -511,4 +544,5 @@ Rapid Spanning Tree Protocol (RSTP) support was added by
The
.Nm
driver currently supports only Ethernet and Ethernet-like (e.g., 802.11)
-network devices, with exactly the same interface MTU size as the bridge device.
+network devices, which can be configured with the same MTU size as the bridge
+device.
diff --git a/share/man/man4/bwi.4 b/share/man/man4/bwi.4
index eeccca16c1dd..81e8ef12b023 100644
--- a/share/man/man4/bwi.4
+++ b/share/man/man4/bwi.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 7, 2015
.Dt BWI 4
.Os
diff --git a/share/man/man4/bwn.4 b/share/man/man4/bwn.4
index 6301b7aba46f..a602dea5bdec 100644
--- a/share/man/man4/bwn.4
+++ b/share/man/man4/bwn.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 16, 2017
.Dt BWN 4
.Os
diff --git a/share/man/man4/bxe.4 b/share/man/man4/bxe.4
index 98d3040ef454..c82565e19583 100644
--- a/share/man/man4/bxe.4
+++ b/share/man/man4/bxe.4
@@ -22,8 +22,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 29, 2012
.Dt BXE 4
.Os
@@ -144,7 +142,7 @@ scheduled taskqueue.
.It Va hw.bxe.max_aggregation_size
DEFAULT = 32768
.br
-Sets the maximum LRO aggregration byte size.
+Sets the maximum LRO aggregation byte size.
The higher the value the more
packets the hardware will aggregate.
Maximum is 65K.
diff --git a/share/man/man4/bytgpio.4 b/share/man/man4/bytgpio.4
index e6a7fac54977..7050191436f0 100644
--- a/share/man/man4/bytgpio.4
+++ b/share/man/man4/bytgpio.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 9, 2017
.Dt BYTGPIO 4
.Os
diff --git a/share/man/man4/capsicum.4 b/share/man/man4/capsicum.4
index d9ff9c489fd0..3c3eab5d798b 100644
--- a/share/man/man4/capsicum.4
+++ b/share/man/man4/capsicum.4
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 19, 2022
+.Dd January 3, 2024
.Dt CAPSICUM 4
.Os
.Sh NAME
@@ -119,6 +117,7 @@ Processes can only act upon their own process ID with syscalls such as
.Xr shm_open 2 ,
.Xr write 2 ,
.Xr cap_rights_get 3 ,
+.Xr capsicum_helpers 3 ,
.Xr libcasper 3 ,
.Xr procdesc 4
.Sh HISTORY
diff --git a/share/man/man4/cardbus.4 b/share/man/man4/cardbus.4
index ddd886dde9bb..3b422b44c464 100644
--- a/share/man/man4/cardbus.4
+++ b/share/man/man4/cardbus.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 9, 2002
.Dt CARDBUS 4
.Os
diff --git a/share/man/man4/carp.4 b/share/man/man4/carp.4
index 2785b97e76ac..19079a2cc97e 100644
--- a/share/man/man4/carp.4
+++ b/share/man/man4/carp.4
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 1, 2018
+.Dd March 6, 2023
.Dt CARP 4
.Os
.Sh NAME
@@ -78,6 +76,23 @@ or through the
.Dv SIOCSVH
.Xr ioctl 2 .
.Pp
+CARP defaults to using multicast messages, but can be configured to unicast
+announcements to peers using the
+.Cm peer
+and
+.Cm peer6
+parameters. Default addresses can be restored using
+.Cm mcast
+and
+.Cm mcast6 .
+Note that TTL verification is disabled if the peer address is not a multicast
+address.
+These values can be configured using
+.Xr ifconfig 8 ,
+or through the
+.Dv SIOCSPEER
+.Xr ioctl 2 .
+.Pp
CARP virtual hosts can be configured on multicast-capable interfaces: Ethernet,
layer 2 VLAN, FDDI and Token Ring.
An arbitrary number of virtual host IDs can be configured on an interface.
diff --git a/share/man/man4/cas.4 b/share/man/man4/cas.4
index fa19cc33c2ab..3032dae585d7 100644
--- a/share/man/man4/cas.4
+++ b/share/man/man4/cas.4
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 26, 2020
+.Dd April 18, 2023
.Dt CAS 4
.Os
.Sh NAME
@@ -50,8 +48,7 @@ if_cas_load="YES"
The
.Nm
driver provides support for the Sun Cassini/Cassini+ and National
-Semiconductor DP83065 Saturn Gigabit Ethernet controllers found
-on-board in Sun UltraSPARC machines and as add-on cards.
+Semiconductor DP83065 Saturn Gigabit Ethernet controllers.
.Pp
All controllers supported by the
.Nm
diff --git a/share/man/man4/cc_cdg.4 b/share/man/man4/cc_cdg.4
index 1b14e094ff84..b75cc76626aa 100644
--- a/share/man/man4/cc_cdg.4
+++ b/share/man/man4/cc_cdg.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 13, 2021
.Dt CC_CDG 4
.Os
diff --git a/share/man/man4/cc_chd.4 b/share/man/man4/cc_chd.4
index f4f042952847..82a44dd2169d 100644
--- a/share/man/man4/cc_chd.4
+++ b/share/man/man4/cc_chd.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 13, 2021
.Dt CC_CHD 4
.Os
diff --git a/share/man/man4/cc_cubic.4 b/share/man/man4/cc_cubic.4
index 806d6aec2441..9a145ce3a1bc 100644
--- a/share/man/man4/cc_cubic.4
+++ b/share/man/man4/cc_cubic.4
@@ -28,9 +28,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 13, 2021
+.Dd February 4, 2023
.Dt CC_CUBIC 4
.Os
.Sh NAME
@@ -39,6 +37,7 @@
.Sh DESCRIPTION
The CUBIC congestion control algorithm was designed to provide increased
throughput in fast and long-distance networks.
+The CUBIC congestion control algorithm is the default for TCP.
It attempts to maintain fairness when competing with legacy NewReno TCP in lower
speed scenarios where NewReno is able to operate adequately.
.Pp
@@ -100,6 +99,11 @@ The
congestion control module first appeared in
.Fx 9.0 .
.Pp
+This became the default congestion algorithm for FreeBSD in version
+.Fx 14.0 ,
+replacing
+.Xr cc_newreno 4 .
+.Pp
The module was first released in 2009 by Lawrence Stewart whilst studying at
Swinburne University of Technology's Centre for Advanced Internet Architectures,
Melbourne, Australia.
diff --git a/share/man/man4/cc_dctcp.4 b/share/man/man4/cc_dctcp.4
index 8c23f2eaa134..4095cd1eccd5 100644
--- a/share/man/man4/cc_dctcp.4
+++ b/share/man/man4/cc_dctcp.4
@@ -26,9 +26,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 13, 2021
+.Dd November 8, 2022
.Dt CC_DCTCP 4
.Os
.Sh NAME
@@ -91,6 +89,11 @@ gain of 1 / ( 2 ^
.It Va slowstart
A flag if the congestion window should be reduced by one half after slow start.
Valid settings 0 and 1, default 0.
+.It Va ect1
+Controls if a DCTCP session should use IP ECT(0) marking when sending out
+segments (default), or ECT(1) marking making use of L4S infrastructure.
+Changes to this setting will only affect new sessions, existing sessions will
+retain their previous marking value.
.El
.Sh SEE ALSO
.Xr cc_cdg 4 ,
diff --git a/share/man/man4/cc_hd.4 b/share/man/man4/cc_hd.4
index 9f14ee301538..f401e150315d 100644
--- a/share/man/man4/cc_hd.4
+++ b/share/man/man4/cc_hd.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 13, 2021
.Dt CC_HD 4
.Os
diff --git a/share/man/man4/cc_htcp.4 b/share/man/man4/cc_htcp.4
index fd223ca8b2d3..2441925df8ea 100644
--- a/share/man/man4/cc_htcp.4
+++ b/share/man/man4/cc_htcp.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 13, 2021
.Dt CC_HTCP 4
.Os
diff --git a/share/man/man4/cc_newreno.4 b/share/man/man4/cc_newreno.4
index 76dd3b2559bb..0730024aaff8 100644
--- a/share/man/man4/cc_newreno.4
+++ b/share/man/man4/cc_newreno.4
@@ -28,9 +28,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 13, 2021
+.Dd February 4, 2023
.Dt CC_NEWRENO 4
.Os
.Sh NAME
@@ -39,7 +37,6 @@
.Sh SYNOPSIS
.In netinet/cc/cc_newreno.h
.Sh DESCRIPTION
-The NewReno congestion control algorithm is the default for TCP.
Details about the algorithm can be found in RFC5681.
.Sh Socket Options
The
@@ -145,6 +142,13 @@ The
congestion control algorithm first appeared in its modular form in
.Fx 9.0 .
.Pp
+This was the default congestion control algorithm in FreeBSD before
+version
+.Fx 14.0 ,
+after which
+.Xr cc_cubic 4
+replaced it.
+.Pp
The module was first released in 2007 by James Healy and Lawrence Stewart whilst
working on the NewTCP research project at Swinburne University of Technology's
Centre for Advanced Internet Architectures, Melbourne, Australia, which was made
diff --git a/share/man/man4/cc_vegas.4 b/share/man/man4/cc_vegas.4
index e1e1aff5ecdf..ba755dbc62bb 100644
--- a/share/man/man4/cc_vegas.4
+++ b/share/man/man4/cc_vegas.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 13, 2021
.Dt CC_VEGAS 4
.Os
diff --git a/share/man/man4/ccd.4 b/share/man/man4/ccd.4
index 4c95fb8ec890..c44013dab11f 100644
--- a/share/man/man4/ccd.4
+++ b/share/man/man4/ccd.4
@@ -32,8 +32,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 9, 1995
.Dt CCD 4
.Os
diff --git a/share/man/man4/ccr.4 b/share/man/man4/ccr.4
index c4fe301c7222..11b3a37f384d 100644
--- a/share/man/man4/ccr.4
+++ b/share/man/man4/ccr.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 3, 2019
.Dt CCR 4
.Os
diff --git a/share/man/man4/cd.4 b/share/man/man4/cd.4
index fe9072bc5ec8..7c3fa6ed9850 100644
--- a/share/man/man4/cd.4
+++ b/share/man/man4/cd.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 8, 2022
.Dt CD 4
.Os
diff --git a/share/man/man4/cdce.4 b/share/man/man4/cdce.4
index b27d89bc1639..6768c7bbf517 100644
--- a/share/man/man4/cdce.4
+++ b/share/man/man4/cdce.4
@@ -26,9 +26,8 @@
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.\" $NetBSD: cdce.4,v 1.4 2004/12/08 18:35:56 peter Exp $
-.\" $FreeBSD$
.\"
-.Dd July 10, 2019
+.Dd February 10, 2023
.Dt CDCE 4
.Os
.Sh NAME
@@ -47,6 +46,13 @@ kernel configuration file:
.Cd "device cdce"
.Ed
.Pp
+Mobile Devices (eg. Huawei E3372, E5573 and others)
+may need additionally the u3g command port:
+.Bd -ragged -offset indent
+.Cd "device ucom"
+.Cd "device u3g"
+.Ed
+.Pp
Alternatively, to load the driver as a
module at boot time, place the following line in
.Xr loader.conf 5 :
@@ -77,6 +83,17 @@ received and transmitted over separate USB bulk transfer endpoints.
The
.Nm
driver does not support different media types or options.
+.Pp
+Mobile
+.Nm
+Network Devices may need a connect command sequence via u3g
+serial command port before they activate the NCM/ECM/ACM network
+interface.
+For example:
+.Dl echo 'AT^NDISUP=1,1,"internet"' > /dev/cuaU[0].0
+where
+.Dq internet
+is your providers apn name.
.Sh HARDWARE
The following devices are supported by the
.Nm
@@ -93,6 +110,8 @@ Terayon TJ-715 DOCSIS Cable Modem
Realtek RTL8156 USB GBE/2.5G Ethernet Family Controller
.It
Planex USB-LAN2500R
+.It
+Huawei 3G/4G LTE (eg. E3372, E5573) and other mobile network devices
.El
.Sh DIAGNOSTICS
.Bl -diag
@@ -127,6 +146,8 @@ is running low on mbufs.
.Xr netintro 4 ,
.Xr urndis 4 ,
.Xr usb 4 ,
+.Xr ucom 4 ,
+.Xr u3g 4 ,
.Xr ifconfig 8
.Rs
.%T "Universal Serial Bus Class Definitions for Communication Devices"
diff --git a/share/man/man4/cdceem.4 b/share/man/man4/cdceem.4
index ad936543b33f..6d8caf53cc02 100644
--- a/share/man/man4/cdceem.4
+++ b/share/man/man4/cdceem.4
@@ -20,8 +20,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd November 7, 2019
.Dt CDCEEM 4
.Os
diff --git a/share/man/man4/cfi.4 b/share/man/man4/cfi.4
index 7dee561d7c81..3527047e12d5 100644
--- a/share/man/man4/cfi.4
+++ b/share/man/man4/cfi.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 20, 2016
.Dt CFI 4
.Os
diff --git a/share/man/man4/cfiscsi.4 b/share/man/man4/cfiscsi.4
index 5880c03540a1..dbf8ed5f5efe 100644
--- a/share/man/man4/cfiscsi.4
+++ b/share/man/man4/cfiscsi.4
@@ -22,8 +22,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd May 28, 2017
.Dt CFISCSI 4
.Os
diff --git a/share/man/man4/cfumass.4 b/share/man/man4/cfumass.4
index 7870ab197484..bde9b2d6a598 100644
--- a/share/man/man4/cfumass.4
+++ b/share/man/man4/cfumass.4
@@ -23,8 +23,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd April 21, 2018
.Dt CFUMASS 4
.Os
@@ -59,7 +57,7 @@ To use
.Nm :
.Bl -bullet
.It
-.Xr cfumass 4
+.Nm cfumass
must be loaded as a module or compiled into the kernel.
.It
The USB Mass Storage template must be chosen by setting the
diff --git a/share/man/man4/cgem.4 b/share/man/man4/cgem.4
index f9f525dc4554..1ca4f8fae9e8 100644
--- a/share/man/man4/cgem.4
+++ b/share/man/man4/cgem.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 10, 2021
.Dt CGEM 4
.Os
@@ -201,7 +199,7 @@ Counter of broadcast frames receive without error excluding pause frames.
.It Va dev.cgem.%d.stats.rx_frames_multi
Counter of multicast frames receive without error excluding pause frames.
.It Va dev.cgem.%d.stats.rx_frames_pause
-Counter of pause frames recevied without error.
+Counter of pause frames received without error.
.It Va dev.cgem.%d.stats.rx_frames_64b
Counter of 64-byte frames received without error.
.It Va dev.cgem.%d.stats.rx_frames_65to127b
diff --git a/share/man/man4/ch.4 b/share/man/man4/ch.4
index 312a0f1f59fa..a0a5f97b5201 100644
--- a/share/man/man4/ch.4
+++ b/share/man/man4/ch.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" Copyright (c) 1996
.\" Julian Elischer <julian@FreeBSD.org>. All rights reserved.
.\"
diff --git a/share/man/man4/chromebook_platform.4 b/share/man/man4/chromebook_platform.4
index e4cd8fc799b9..932986ef2fd5 100644
--- a/share/man/man4/chromebook_platform.4
+++ b/share/man/man4/chromebook_platform.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 13, 2016
.Dt CHROMEBOOK_PLATFORM 4
.Os
diff --git a/share/man/man4/chvgpio.4 b/share/man/man4/chvgpio.4
index b6265cf3787c..976ca49dc8d9 100644
--- a/share/man/man4/chvgpio.4
+++ b/share/man/man4/chvgpio.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 17, 2017
.Dt CHVGPIO 4
.Os
diff --git a/share/man/man4/ciss.4 b/share/man/man4/ciss.4
index f79efe89a22a..28d6556ecd85 100644
--- a/share/man/man4/ciss.4
+++ b/share/man/man4/ciss.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" Written by Tom Rhodes
.\" This file is in the public domain.
.\"
diff --git a/share/man/man4/coretemp.4 b/share/man/man4/coretemp.4
index 91a975861a0a..210b9d0fae62 100644
--- a/share/man/man4/coretemp.4
+++ b/share/man/man4/coretemp.4
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2007 Dag-Erling Coïdan Smørgrav
+.\" Copyright (c) 2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 23, 2007
.Dt CORETEMP 4
.Os
@@ -57,6 +55,7 @@ driver reports each core's temperature through a sysctl node in the
corresponding CPU device's sysctl tree, named
.Va dev.cpu.%d.temperature .
.Sh SEE ALSO
+.Xr amdtemp 4 ,
.Xr sysctl 8
.Sh HISTORY
The
diff --git a/share/man/man4/cp2112.4 b/share/man/man4/cp2112.4
index 39ac8dba114e..040aad4c1f16 100644
--- a/share/man/man4/cp2112.4
+++ b/share/man/man4/cp2112.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2020 Andriy Gapon <avg@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 12, 2020
.Dt CP2112 4
.Os
diff --git a/share/man/man4/cpuctl.4 b/share/man/man4/cpuctl.4
index c3f6271c5d7f..fc42cf14f254 100644
--- a/share/man/man4/cpuctl.4
+++ b/share/man/man4/cpuctl.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 20, 2014
.Dt CPUCTL 4
.Os
diff --git a/share/man/man4/cpufreq.4 b/share/man/man4/cpufreq.4
index b1bf05fbe74e..beeef3fe4912 100644
--- a/share/man/man4/cpufreq.4
+++ b/share/man/man4/cpufreq.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 2022
.Dt CPUFREQ 4
.Os
diff --git a/share/man/man4/crypto.4 b/share/man/man4/crypto.4
index 5617bacd904a..b1423752718e 100644
--- a/share/man/man4/crypto.4
+++ b/share/man/man4/crypto.4
@@ -61,8 +61,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 6, 2021
.Dt CRYPTO 4
.Os
@@ -130,7 +128,7 @@ Close the
.Pa /dev/crypto
device.
This will automatically close any remaining sessions associated with the
-file desriptor.
+file descriptor.
.El
.Sh SYMMETRIC-KEY OPERATION
.Nm cryptodev
diff --git a/share/man/man4/ctl.4 b/share/man/man4/ctl.4
index e150d70665d2..cac9e616f9db 100644
--- a/share/man/man4/ctl.4
+++ b/share/man/man4/ctl.4
@@ -22,8 +22,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd March 29, 2017
.Dt CTL 4
.Os
@@ -201,7 +199,7 @@ Specifies the maximum number of LUNs we support, must be a power of 2.
The default value is 1024.
.It Va kern.cam.ctl.max_ports
Specifies the maximum number of ports we support, must be a power of 2.
-The default value is 256.
+The default value is 1024.
.El
.Sh SEE ALSO
.Xr cfiscsi 4 ,
diff --git a/share/man/man4/cue.4 b/share/man/man4/cue.4
index 72bea982a931..2d960e2e9927 100644
--- a/share/man/man4/cue.4
+++ b/share/man/man4/cue.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 2019
.Dt CUE 4
.Os
diff --git a/share/man/man4/cxgb.4 b/share/man/man4/cxgb.4
index 5df049fc14d6..6eb2132275d2 100644
--- a/share/man/man4/cxgb.4
+++ b/share/man/man4/cxgb.4
@@ -29,8 +29,6 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 14, 2007
.Dt CXGB 4
.Os
diff --git a/share/man/man4/cxgbe.4 b/share/man/man4/cxgbe.4
index 5f959299d2ad..bfba202d1fec 100644
--- a/share/man/man4/cxgbe.4
+++ b/share/man/man4/cxgbe.4
@@ -29,9 +29,7 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 10, 2021
+.Dd November 10, 2022
.Dt CXGBE 4
.Os
.Sh NAME
@@ -263,7 +261,7 @@ The default is 1.
Number of padding bytes inserted before the beginning of an Ethernet
frame in the receive buffer.
The default value is 0.
-A value of of 2 would ensure that the Ethernet payload (usually the IP header)
+A value of 2 would ensure that the Ethernet payload (usually the IP header)
is at a 4 byte aligned address.
0-7 are all valid values.
.It Va hw.cxgbe.fl_pad
@@ -277,6 +275,7 @@ Controls the hardware response to congestion.
0 instructs the hardware to backpressure its pipeline on congestion.
This usually results in the port emitting PAUSE frames.
1 instructs the hardware to drop frames destined for congested queues.
+2 instructs the hardware to both backpressure the pipeline and drop frames.
.It Va hw.cxgbe.pause_settings
PAUSE frame settings.
Bit 0 is rx_pause, bit 1 is tx_pause, bit 2 is pause_autoneg.
@@ -397,7 +396,6 @@ If an issue is identified with this driver with a supported adapter,
email all the specific information related to the issue to
.Aq Mt support@chelsio.com .
.Sh SEE ALSO
-.Xr altq 4 ,
.Xr arp 4 ,
.Xr ccr 4 ,
.Xr cxgb 4 ,
diff --git a/share/man/man4/cxgbev.4 b/share/man/man4/cxgbev.4
index b2fcac6c632b..4ce67aeda0c3 100644
--- a/share/man/man4/cxgbev.4
+++ b/share/man/man4/cxgbev.4
@@ -29,9 +29,7 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 9, 2017
+.Dd November 10, 2022
.Dt CXGBEV 4
.Os
.Sh NAME
@@ -290,7 +288,6 @@ If an issue is identified with this driver with a supported adapter,
email all the specific information related to the issue to
.Aq Mt support@chelsio.com .
.Sh SEE ALSO
-.Xr altq 4 ,
.Xr arp 4 ,
.Xr cxgbe 4 ,
.Xr netintro 4 ,
diff --git a/share/man/man4/cyapa.4 b/share/man/man4/cyapa.4
index fa4527336f3e..d79878427df7 100644
--- a/share/man/man4/cyapa.4
+++ b/share/man/man4/cyapa.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 18, 2018
.Dt CYAPA 4
.Os
diff --git a/share/man/man4/da.4 b/share/man/man4/da.4
index ed820c637750..b5a66f9c86bc 100644
--- a/share/man/man4/da.4
+++ b/share/man/man4/da.4
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 20, 2017
+.Dd September 10, 2022
.Dt DA 4
.Os
.Sh NAME
@@ -133,6 +131,29 @@ variables and
.Xr loader 8
tunables:
.Bl -tag -width 12
+.It Va kern.cam.da.default_timeout
+This variable determines how long the
+.Nm
+driver will wait before timing out an outstanding command.
+The units for this value are seconds, and the default is currently 60
+seconds.
+.It Va kern.cam.da.disable_wp_protection
+Disable detection of write-protected disks.
+Default is disabled.
+.Po
+detection of write-protected disks is enabled
+.Pc .
+.It Va kern.cam.da.enable_biospeedup
+Enable
+.Dv BIO_SPEEDUP
+processing.
+Default is enabled.
+.It Va kern.cam.da.enable_uma_ccbs
+Use UMA for CCBs.
+Default is enabled.
+.It Va kern.cam.da.poll_period
+Media polling period in seconds.
+Default is 3 seconds.
.It Va kern.cam.da.retry_count
This variable determines how many times the
.Nm
@@ -142,19 +163,20 @@ the
.Nm
driver dump routine.
This value currently defaults to 4.
-.It Va kern.cam.da.default_timeout
-This variable determines how long the
+.It Va kern.cam.da.send_ordered
+Send Ordered Tags.
+On shutdown, step through all the
.Nm
-driver will wait before timing out an outstanding command.
-The units for this value are seconds, and the default is currently 60
-seconds.
+peripheral drivers, and if the device is still open,
+sync the disk to physical media.
+Default is enabled.
.It Va kern.cam.sort_io_queue
-.It Va kern.cam.da. Ns Ar X Ns Va .sort_io_queue
+.It Va kern.cam.da . Ns Ar X Ns Va .sort_io_queue
These variables determine whether request queue should be sorted trying
to optimize head seeks.
Set to 1 to enable sorting, 0 to disable, -1 to leave it as-is.
The default is sorting enabled for HDDs and disabled for SSDs.
-.It Va kern.cam.da. Ns Ar X Ns Va .delete_method
+.It Va kern.cam.da . Ns Ar X Ns Va .delete_method
This variable specifies method to handle BIO_DELETE requests:
.Bl -tag -width "ATA_TRIM"
.It ATA_TRIM
@@ -170,7 +192,7 @@ WRITE SAME(10) command without UNMAP flag,
.It DISABLE
disable BIO_DELETE support.
.El
-.It Va kern.cam.da. Ns Ar X Ns Va .minimum_cmd_size
+.It Va kern.cam.da . Ns Ar X Ns Va .minimum_cmd_size
This variable determines what the minimum READ/WRITE CDB size is for a
given
.Nm
diff --git a/share/man/man4/dc.4 b/share/man/man4/dc.4
index 57ff604b3cf8..d8a7d7db8b20 100644
--- a/share/man/man4/dc.4
+++ b/share/man/man4/dc.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2020
.Dt DC 4
.Os
diff --git a/share/man/man4/dcons.4 b/share/man/man4/dcons.4
index d228ad5c16b9..6ef58ea00757 100644
--- a/share/man/man4/dcons.4
+++ b/share/man/man4/dcons.4
@@ -22,8 +22,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 26, 2008
.Dt DCONS 4
.Os
@@ -84,7 +82,7 @@ signal to
using
.Xr kill 1 .
.Bd -literal -offset indent
-dcons "/usr/libexec/getty std.9600" vt100 on secure
+dcons "/usr/libexec/getty std.115200" vt100 on secure
.Ed
.Pp
Once the
@@ -102,7 +100,7 @@ for more details.
If you want to use
.Nm
as a
-.Xr gdb 1
+.Xr gdb 1 Pq Pa ports/devel/gdb
port, add the following line into
.Xr loader.conf 5 :
.Bd -literal -offset indent
diff --git a/share/man/man4/dcons_crom.4 b/share/man/man4/dcons_crom.4
index eca479d5f99f..4eff05b6928f 100644
--- a/share/man/man4/dcons_crom.4
+++ b/share/man/man4/dcons_crom.4
@@ -22,8 +22,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 2003
.Dt DCONS_CROM 4
.Os
diff --git a/share/man/man4/ddb.4 b/share/man/man4/ddb.4
index 6dec3924ef79..f3443cbac127 100644
--- a/share/man/man4/ddb.4
+++ b/share/man/man4/ddb.4
@@ -24,9 +24,7 @@
.\" any improvements or extensions that they make and grant Carnegie Mellon
.\" the rights to redistribute these changes.
.\"
-.\" $FreeBSD$
-.\"
-.Dd March 14, 2021
+.Dd November 10, 2022
.Dt DDB 4
.Os
.Sh NAME
@@ -58,9 +56,9 @@ representation, define:
.Ed
.Pp
To enable the
-.Xr gdb 1
+.Xr gdb 4
backend, so that remote debugging with
-.Xr kgdb 1
+.Xr kgdb 1 Pq Pa ports/devel/gdb
is possible, include:
.Bd -ragged -offset indent
.Cd options GDB
@@ -69,7 +67,7 @@ is possible, include:
The
.Nm
kernel debugger is an interactive debugger with a syntax inspired by
-.Xr gdb 1 .
+.Xr gdb 1 Pq Pa ports/devel/gdb .
If linked into the running kernel,
it can be invoked locally with the
.Ql debug
@@ -182,11 +180,8 @@ command line editing capabilities.
In addition to
the
.Nm emacs
-control keys, the usual
-.Tn ANSI
-arrow keys may be used to
-browse through the history buffer, and move the cursor within the
-current line.
+control keys, the usual ANSI arrow keys may be used to browse through the
+history buffer, and move the cursor within the current line.
.Sh COMMANDS
.Ss COMMON DEBUGGER COMMANDS
.Bl -tag -width indent -compact
@@ -246,8 +241,8 @@ The location is also displayed in hex at the beginning of each line.
.It Cm i
display as a disassembled instruction
.It Cm I
-display as an disassembled instruction with possible alternate formats depending on the
-machine.
+display as a disassembled instruction with possible alternate formats
+depending on the machine.
On i386, this selects the alternate format for the instruction decoding
(16 bits in a 32-bit code segment and vice versa).
.It Cm S
@@ -294,6 +289,32 @@ eax = xxxxxx
ecx = yyyyyy
.Ed
.Pp
+.It Ic pprint Ns Oo Li / Ns Cm d depth Oc Oo Ar name Oc
+Pretty-print symbol specified by
+.Ar name
+using CTF debugging data. Works for all symbols exported by the kernel and loaded kernel modules.
+.Pp
+If the
+.Cm d
+modifier has been specified, contents of structs nested up to
+.Ar depth
+levels deep will also be included in the output.
+.Ed
+.Pp
+.It Ic pprint struct Ns Oo Li / Ns Cm d depth Ic Oc Oo Ar name Oc Ns Op Ns Ar addr
+Print memory at
+.Ar addr
+as struct
+.Ar name Ns .
+Works for all structs defined by the kernel and loaded kernel modules.
+.Pp
+If the
+.Cm d
+modifier has been specified, contents of structs nested up to
+.Ar depth
+levels deep will also be included in the output.
+.Ed
+.Pp
.It Xo
.Ic write Ns Op Li / Ns Cm bhl
.Ar addr expr1 Op Ar expr2 ...
@@ -527,13 +548,23 @@ The optional
argument limits the search.
.\"
.Pp
-.It Ic reboot Op Ar seconds
-.It Ic reset Op Ar seconds
+.It Xo
+.Ic Ic reboot Ns Op Li / Ns Cm s
+.Op Ar seconds
+.Xc
+.It Xo
+.Ic Ic reset Ns Op Li / Ns Cm s
+.Op Ar seconds
+.Xc
Hard reset the system.
If the optional argument
.Ar seconds
is given, the debugger will wait for this long, at most a week,
before rebooting.
+When the
+.Cm s
+modifier is given, the command will skip running any registered shutdown
+handlers and attempt the most basic reset.
.Pp
.It Ic thread Ar addr | tid
Switch the debugger to the thread with ID
@@ -541,6 +572,14 @@ Switch the debugger to the thread with ID
if the argument is a decimal number, or address
.Ar addr ,
otherwise.
+.Pp
+.It Ic watchdog Op Ar exp
+Program the
+.Xr watchdog 4
+timer to fire in
+.Pf 2^ Ar exp
+seconds.
+If no argument is provided, the watchdog timer is disabled.
.El
.Ss SPECIALIZED HELPER COMMANDS
.Bl -tag -width indent -compact
@@ -548,11 +587,13 @@ otherwise.
.Ic findstack
.Ar addr
.Xc
-Prints the thread address for a thread kernel-mode stack of which contains the
-specified address.
-If the thread is not found, search the thread stack cache and prints the
-cached stack address.
-Otherwise, prints nothing.
+Prints the address of the thread whose kernel-mode stack contains
+.Ar addr ,
+if any.
+.Pp
+.It Ic show Cm active trace
+.It acttrace
+Show a stack trace for every thread running on a CPU.
.Pp
.It Ic show Cm all procs Ns Op Li / Ns Cm a
.It Ic ps Ns Op Li / Ns Cm a
@@ -607,6 +648,15 @@ addresses, and Resource IDs.
Dump data about APIC IDT vector mappings.
.\"
.Pp
+.It Ic show Cm badstacks
+Walk the
+.Xr witness 4
+graph and print any lock-order violations.
+This command is only available if
+.Xr witness 4
+is included in the kernel.
+.\"
+.Pp
.It Ic show Cm breaks
Show breakpoints set with the "break" command.
.\"
@@ -640,19 +690,18 @@ present at
.Ar addr .
.\"
.Pp
-.It Ic show Cm cbstat
-Show brief information about the TTY subsystem.
-.\"
-.Pp
-.It Ic show Cm cdev
-Without argument, show the list of all created cdev's, consisting of devfs
-node name and struct cdev address.
-When address of cdev is supplied, show some internal devfs state of the cdev.
+.It Ic show Cm cdev Op Ar addr
+Show the internal devfs state of the cdev structure located at
+.Ar addr .
+If no argument is provided, show the list of all created cdevs, consisting of
+the devfs node name and the
+.Vt struct cdev
+address.
.\"
.Pp
.It Ic show Cm conifhk
Lists hooks currently waiting for completion in
-run_interrupt_driven_config_hooks().
+.Fn run_interrupt_driven_config_hooks .
.\"
.Pp
.It Ic show Cm cpusets
@@ -729,6 +778,13 @@ present at
.Ar addr .
.\"
.Pp
+.It Ic show Cm iosched Ar addr
+Show information about the I/O scheduler
+.Vt struct cam_iosched_softc
+located at
+.Ar addr .
+.\"
+.Pp
.It Ic show Cm inodedeps Op Ar addr
Show brief information about each inodedep structure.
If
@@ -756,13 +812,20 @@ Dump the interrupt statistics.
Show interrupt lines and their respective kernel threads.
.\"
.Pp
-.It Ic show Cm jails
-Show the list of
-.Xr jail 8
-instances.
-In addition to what
-.Xr jls 8
-shows, also list kernel internal details.
+.It Ic show Cm ktr Ns Op Li / Ns Cm a Ns Cm v Ns Cm V
+Print the contents of the
+.Xr ktr 4
+trace buffer.
+The
+.Cm v
+modifier will request fully verbose output, causing the file, line number, and
+timestamp to be printed for each trace entry.
+The
+.Cm V
+modifier will request only the timestamps to be printed.
+The
+.Cm a
+modifier will request that the output be unpaginated.
.\"
.Pp
.It Ic show Cm lapic
@@ -773,24 +836,24 @@ Show information from the local APIC registers for this CPU.
Show lock structure.
The output format is as follows:
.Bl -tag -width "flags"
-.It Ic class:
+.It Ic class :
Class of the lock.
Possible types include
.Xr mutex 9 ,
.Xr rmlock 9 ,
.Xr rwlock 9 ,
.Xr sx 9 .
-.It Ic name:
+.It Ic name :
Name of the lock.
-.It Ic flags:
+.It Ic flags :
Flags passed to the lock initialization function.
.Em flags
values are lock class specific.
-.It Ic state:
+.It Ic state :
Current state of a lock.
.Em state
values are lock class specific.
-.It Ic owner:
+.It Ic owner :
Lock owner.
.El
.\"
@@ -870,11 +933,14 @@ It is useful if you got a kernel panic, attached a serial cable
to the machine and want to get the boot messages from before the
system hang.
.\"
-.It Ic show Cm mount
-Displays short info about all currently mounted file systems.
.Pp
-.It Ic show Cm mount Ar addr
-Displays details about the given mount point.
+.It Ic show Cm mount Op Ar addr
+Displays details about the mount point located at
+.Ar addr .
+If no
+.Ar addr
+is specified,
+displays short info about all currently mounted file systems.
.\"
.Pp
.It Ic show Cm object Ns Oo Li / Ns Cm f Oc Ar addr
@@ -932,16 +998,24 @@ Names of spin locks held.
Dump process groups present within the system.
.\"
.Pp
-.It Ic show Cm proc Op Ar addr
-If no
-.Op Ar addr
-is specified, print information about the current process.
-Otherwise, show information about the process at address
+.It Ic show Cm prison Op Ar addr
+Show the prison structure located at
.Ar addr .
+If no
+.Ar addr
+argument is specified, show information about all prisons in the system.
+.\"
+.Pp
+.It Ic show Cm proc Op Ar addr
+Show information about the process structure located at address
+.Ar addr ,
+or the current process if no argument is specified.
.\"
.Pp
-.It Ic show Cm procvm
-Show process virtual memory layout.
+.It Ic show Cm procvm Op Ar addr
+Show process virtual memory layout for the process located at
+.Ar addr ,
+or the current process if no argument is specified.
.\"
.Pp
.It Ic show Cm protosw Ar addr
@@ -994,36 +1068,26 @@ Now an alias for
.Ic show Cm lockchain .
.\"
.Pp
-.It Ic show Cm sleepq
-.It Ic show Cm sleepqueue
-Both commands provide the same functionality.
-They show sleepqueue
-.Vt struct sleepqueue
-structure.
-Sleepqueues are used within the
-.Fx
-kernel to implement sleepable
-synchronization primitives (thread holding a lock might sleep or
-be context switched), which at the time of writing are:
-.Xr condvar 9 ,
-.Xr sx 9
-and standard
-.Xr msleep 9
-interface.
+.It Ic show Cm sleepq Ar addr
+.It Ic show Cm sleepqueue Ar addr
+Show the
+.Xr sleepqueue 9
+structure located at
+.Ar addr .
.\"
.Pp
.It Ic show Cm sockbuf Ar addr
+Show the socket buffer
+.Va struct sockbuf
+located at
+.Ar addr .
+.\"
+.Pp
.It Ic show Cm socket Ar addr
-Those commands print
-.Vt struct sockbuf
-and
+Show the socket object
.Vt struct socket
-objects placed at
+located at
.Ar addr .
-Output consists of all values present in structures mentioned.
-For exact interpretation and more details, visit
-.Pa sys/socket.h
-header file.
.\"
.Pp
.It Ic show Cm sysregs
@@ -1141,11 +1205,8 @@ and none have zero ref counts.
.\"
.Pp
.It Ic show Cm vmopag
-This is supposed to show physical addresses consumed by a
-VM object.
-Currently, it is not possible to use this command when
-.Xr witness 4
-is compiled in the kernel.
+Walk the list of VM objects in the system, printing the indices and physical
+addresses of the VM pages belonging to each object.
.\"
.Pp
.It Ic show Cm vnet Ar addr
@@ -1155,11 +1216,11 @@ structure present at the address
.Ar addr .
.\"
.Pp
-.It Ic show Cm vnode Op Ar addr
+.It Ic show Cm vnode Ar addr
Prints vnode
.Vt struct vnode
structure lying at
-.Op Ar addr .
+.Ar addr .
For the exact interpretation of the output, look at the
.Pa sys/vnode.h
header file.
@@ -1187,10 +1248,14 @@ subsystem.
.El
.Ss OFFLINE DEBUGGING COMMANDS
.Bl -tag -width indent -compact
+.It Ic dump
+Initiate a kernel core dump to the device(s) configured by
+.Xr dumpon 8 .
+.Pp
.It Ic gdb
Switches to remote GDB mode.
In remote GDB mode, another machine is required that runs
-.Xr gdb 1
+.Xr gdb 1 Pq Pa ports/devel/gdb
using the remote debug feature, with a connection to the serial
console port on the target machine.
.Pp
@@ -1265,7 +1330,7 @@ facilities, allowing scripted debugging output to be captured and
committed to disk as part of a textdump for later analysis.
The contents of the capture buffer may also be inspected in a kernel core dump
using
-.Xr kgdb 1 .
+.Xr kgdb 1 Pq Pa ports/devel/gdb .
.Pp
.It Ic run
.It Ic script
@@ -1552,8 +1617,8 @@ CR TILDE CTRL-R causes an immediate reboot.
In all these sequences, CR represents Carriage Return and is usually
sent by pressing the Enter or Return key.
TILDE is the ASCII tilde character (~).
-CTRL-x is Control x, send by pressing the Control key, then x, then releasing both.
-and then releasing both.
+CTRL-x is Control x, sent by pressing the Control key, then x, then releasing
+both.
.Pp
The break-to-debugger behavior can be enabled by setting
.Xr sysctl 8
@@ -1598,10 +1663,11 @@ directory.
.Pa sys/vnode.h
.El
.Sh SEE ALSO
-.Xr gdb 1 ,
-.Xr kgdb 1 ,
+.Xr gdb 1 Pq Pa ports/devel/gdb ,
+.Xr kgdb 1 Pq Pa ports/devel/gdb ,
.Xr acpi 4 ,
.Xr CAM 4 ,
+.Xr gdb 4 ,
.Xr mac_ddb 4 ,
.Xr mac_test 4 ,
.Xr netgraph 4 ,
diff --git a/share/man/man4/devctl.4 b/share/man/man4/devctl.4
index 4403cb4fdd71..bf1e5fe20c9b 100644
--- a/share/man/man4/devctl.4
+++ b/share/man/man4/devctl.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 21, 2020
.Dt DEVCTL 4
.Os
diff --git a/share/man/man4/disc.4 b/share/man/man4/disc.4
index 1a4eae190ff4..b767c24fc4fe 100644
--- a/share/man/man4/disc.4
+++ b/share/man/man4/disc.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" From: @(#)lo.4 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd May 25, 2002
.Dt DISC 4
.Os
diff --git a/share/man/man4/disk.4 b/share/man/man4/disk.4
index 69796059fc1e..6451ff0e7370 100644
--- a/share/man/man4/disk.4
+++ b/share/man/man4/disk.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 20, 2020
.Dt disk 4
.Os
diff --git a/share/man/man4/divert.4 b/share/man/man4/divert.4
index d8296995ca97..5732099bd447 100644
--- a/share/man/man4/divert.4
+++ b/share/man/man4/divert.4
@@ -1,6 +1,5 @@
-.\" $FreeBSD$
.\"
-.Dd December 17, 2004
+.Dd August 30, 2022
.Dt DIVERT 4
.Os
.Sh NAME
@@ -11,7 +10,7 @@
.In sys/socket.h
.In netinet/in.h
.Ft int
-.Fn socket PF_INET SOCK_RAW IPPROTO_DIVERT
+.Fn socket PF_DIVERT SOCK_RAW 0
.Pp
To enable support for divert sockets, place the following lines in the
kernel configuration file:
@@ -30,24 +29,30 @@ ipfw_load="YES"
ipdivert_load="YES"
.Ed
.Sh DESCRIPTION
-Divert sockets are similar to raw IP sockets, except that they
-can be bound to a specific
+Divert sockets allow to intercept and re-inject packets flowing through
+the
+.Xr ipfw 4
+firewall.
+A divert socket can be bound to a specific
.Nm
port via the
.Xr bind 2
system call.
-The IP address in the bind is ignored; only the port
-number is significant.
+The sockaddr argument shall be sockaddr_in with sin_port set to the
+desired value.
+Note that the
+.Nm
+port has nothing to do with TCP/UDP ports.
+It is just a cookie number, that allows to differentiate between different
+divert points in the
+.Xr ipfw 4
+ruleset.
A divert socket bound to a divert port will receive all packets diverted
-to that port by some (here unspecified) kernel mechanism(s).
-Packets may also be written to a divert port, in which case they
-re-enter kernel IP packet processing.
+to that port by
+.Xr ipfw 4 .
+Packets may also be written to a divert port, in which case they re-enter
+firewall processing at the next rule.
.Pp
-Divert sockets are normally used in conjunction with
-.Fx Ns 's
-packet filtering implementation and the
-.Xr ipfw 8
-program.
By reading from and writing to a divert socket, matching packets
can be passed through an arbitrary ``filter'' as they travel through
the host machine, special routing tricks can be done, etc.
@@ -153,8 +158,9 @@ with the correct value.
Packets written as incoming and having incorrect checksums will be dropped.
Otherwise, all header fields are unchanged (and therefore in network order).
.Pp
-Binding to port numbers less than 1024 requires super-user access, as does
-creating a socket of type SOCK_RAW.
+Creating a
+.Nm
+socket requires super-user access.
.Sh ERRORS
Writing to a divert socket can return these errors, along with
the usual errors possible when writing raw packets:
diff --git a/share/man/man4/dpms.4 b/share/man/man4/dpms.4
index 7f7af3ed5f33..ebc99c7c96ad 100644
--- a/share/man/man4/dpms.4
+++ b/share/man/man4/dpms.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 23, 2008
.Dt DPMS 4
.Os
diff --git a/share/man/man4/ds1307.4 b/share/man/man4/ds1307.4
index 7f03116cbd7b..ae8884934f09 100644
--- a/share/man/man4/ds1307.4
+++ b/share/man/man4/ds1307.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 7, 2015
.Dt DS1307 4
.Os
diff --git a/share/man/man4/ds3231.4 b/share/man/man4/ds3231.4
index 4059a88ca815..8734e82b4e69 100644
--- a/share/man/man4/ds3231.4
+++ b/share/man/man4/ds3231.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 12, 2016
.Dt DS3231 4
.Os
diff --git a/share/man/man4/dtrace_audit.4 b/share/man/man4/dtrace_audit.4
index 5869eb97f99a..e12d1d932357 100644
--- a/share/man/man4/dtrace_audit.4
+++ b/share/man/man4/dtrace_audit.4
@@ -29,8 +29,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 28, 2019
.Dt DTRACE_AUDIT 4
.Os
diff --git a/share/man/man4/dtrace_io.4 b/share/man/man4/dtrace_io.4
index ed5c56f316c5..30ec44768fbf 100644
--- a/share/man/man4/dtrace_io.4
+++ b/share/man/man4/dtrace_io.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 18, 2015
.Dt DTRACE_IO 4
.Os
diff --git a/share/man/man4/dtrace_ip.4 b/share/man/man4/dtrace_ip.4
index 56958b6bfe34..e9fbdfa3cf43 100644
--- a/share/man/man4/dtrace_ip.4
+++ b/share/man/man4/dtrace_ip.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 14, 2015
.Dt DTRACE_IP 4
.Os
diff --git a/share/man/man4/dtrace_kinst.4 b/share/man/man4/dtrace_kinst.4
new file mode 100644
index 000000000000..9debbc1bd106
--- /dev/null
+++ b/share/man/man4/dtrace_kinst.4
@@ -0,0 +1,91 @@
+.\" Copyright (c) 2022 Christos Margiolis <christos@FreeBSD.org>
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 February 27, 2023
+.Dt DTRACE_KINST 4
+.Os
+.Sh NAME
+.Nm dtrace_kinst
+.Nd a DTrace provider for tracing arbitrary instructions in a given kernel function
+.Sh SYNOPSIS
+kinst::<function>:<instruction>
+.Sh DESCRIPTION
+The DTrace
+.Nm kinst
+provider allows the user to trace any instruction in a given kernel function.
+<function> corresponds to the function to be traced, and <instruction> is the
+offset to the specific instruction, and can be obtained from the function's
+disassembly using kgdb from the gdb package.
+.Pp
+.Nm kinst
+creates probes on-demand, meaning it searches for and parses the function's
+instructions each time
+.Xr dtrace 1
+is run, and not at module load time.
+This is in contrast to FBT's load-time parsing, since
+.Nm kinst
+can potentially create thousands of probes for just a single function, instead
+of up to two (entry and return) in the case of FBT.
+A result of this is that
+.Cm dtrace -l -P kinst
+will not match any probes.
+.Sh IMPLEMENTATION NOTES
+The provider is currently implemented only for amd64.
+.Sh EXAMPLES
+Find the offset corresponding to the third instruction in
+.Fn vm_fault
+and trace it, printing the contents of the RSI register:
+.Bd -literal -offset indent
+# kgdb
+(kgdb) disas /r vm_fault
+Dump of assembler code for function vm_fault:
+ 0xffffffff80876df0 <+0>: 55 push %rbp
+ 0xffffffff80876df1 <+1>: 48 89 e5 mov %rsp,%rbp
+ 0xffffffff80876df4 <+4>: 41 57 push %r15
+
+# dtrace -n 'kinst::vm_fault:4 {printf("%#x", regs[R_RSI]);}'
+ 2 81500 vm_fault:4 0x827c56000
+ 2 81500 vm_fault:4 0x827878000
+ 2 81500 vm_fault:4 0x1fab9bef0000
+ 2 81500 vm_fault:4 0xe16cf749000
+ 0 81500 vm_fault:4 0x13587c366000
+ ...
+.Ed
+.Pp
+Trace all instructions in
+.Fn amd64_syscall :
+.Bd -literal -offset indent
+# dtrace -n 'kinst::amd64_syscall:'
+.Ed
+.Sh SEE ALSO
+.Xr dtrace 1
+.Sh HISTORY
+The
+.Nm kinst
+provider first appeared in
+.Fx
+14.0.
+.Sh AUTHORS
+This manual page was written by
+.An Christos Margiolis Aq Mt christos@FreeBSD.org .
diff --git a/share/man/man4/dtrace_lockstat.4 b/share/man/man4/dtrace_lockstat.4
index 8ed2af14f811..e308ca6c22ce 100644
--- a/share/man/man4/dtrace_lockstat.4
+++ b/share/man/man4/dtrace_lockstat.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 20, 2019
.Dt DTRACE_LOCKSTAT 4
.Os
diff --git a/share/man/man4/dtrace_proc.4 b/share/man/man4/dtrace_proc.4
index 9e2c784e7845..5e217eb0e205 100644
--- a/share/man/man4/dtrace_proc.4
+++ b/share/man/man4/dtrace_proc.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 17, 2016
+.Dd March 3, 2023
.Dt DTRACE_PROC 4
.Os
.Sh NAME
@@ -188,7 +186,7 @@ Real scheduling priority of the thread.
Currently always 0.
.It Vt char pr_sname
Currently always
-.Ql ? .
+.Ql \&? .
.It Vt short pr_syscall
Currently always 0.
.It Vt uintptr_t pr_addr
diff --git a/share/man/man4/dtrace_sched.4 b/share/man/man4/dtrace_sched.4
index 5c45f401d052..b085ffe43e3c 100644
--- a/share/man/man4/dtrace_sched.4
+++ b/share/man/man4/dtrace_sched.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 18, 2015
.Dt DTRACE_SCHED 4
.Os
diff --git a/share/man/man4/dtrace_sctp.4 b/share/man/man4/dtrace_sctp.4
index 7da53ca1f383..6e2f1ed31969 100644
--- a/share/man/man4/dtrace_sctp.4
+++ b/share/man/man4/dtrace_sctp.4
@@ -21,9 +21,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 22, 2018
+.Dd June 29, 2023
.Dt DTRACE_SCTP 4
.Os
.Sh NAME
@@ -150,20 +148,20 @@ A script that logs SCTP packets in real time:
dtrace:::BEGIN
{
- printf(" %3s %15s:%-5s %15s:%-5s\n", "CPU",
+ printf(" %3s %15s:%-5s %15s:%-5s\\n", "CPU",
"LADDR", "LPORT", "RADDR", "RPORT");
}
sctp:::send
{
- printf(" %3d %16s:%-5d -> %16s:%-5d\n", cpu,
+ printf(" %3d %16s:%-5d -> %16s:%-5d\\n", cpu,
args[2]->ip_saddr, args[4]->sctp_sport,
args[2]->ip_daddr, args[4]->sctp_dport);
}
sctp:::receive
{
- printf(" %3d %16s:%-5d <- %16s:%-5d\n", cpu,
+ printf(" %3d %16s:%-5d <- %16s:%-5d\\n", cpu,
args[2]->ip_daddr, args[4]->sctp_dport,
args[2]->ip_saddr, args[4]->sctp_sport);
}
@@ -177,7 +175,7 @@ int last[int];
dtrace:::BEGIN
{
- printf(" %3s %12s %-25s %-25s\n",
+ printf(" %3s %12s %-25s %-25s\\n",
"CPU", "DELTA(us)", "OLD", "NEW");
}
@@ -185,7 +183,7 @@ sctp:::state-change
/ last[args[1]->cs_cid] /
{
this->elapsed = (timestamp - last[args[1]->cs_cid]) / 1000;
- printf(" %3d %12d %-25s -> %-25s\n", cpu, this->elapsed,
+ printf(" %3d %12d %-25s -> %-25s\\n", cpu, this->elapsed,
sctp_state_string[args[5]->sctps_state],
sctp_state_string[args[3]->sctps_state]);
last[args[1]->cs_cid] = timestamp;
@@ -194,7 +192,7 @@ sctp:::state-change
sctp:::state-change
/ last[args[1]->cs_cid] == 0 /
{
- printf(" %3d %12s %-25s -> %-25s\n", cpu, "-",
+ printf(" %3d %12s %-25s -> %-25s\\n", cpu, "-",
sctp_state_string[args[5]->sctps_state],
sctp_state_string[args[3]->sctps_state]);
last[args[1]->cs_cid] = timestamp;
diff --git a/share/man/man4/dtrace_tcp.4 b/share/man/man4/dtrace_tcp.4
index dbe3dd7ac099..af57f6e94a63 100644
--- a/share/man/man4/dtrace_tcp.4
+++ b/share/man/man4/dtrace_tcp.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 1, 2018
+.Dd July 2, 2023
.Dt DTRACE_TCP 4
.Os
.Sh NAME
@@ -49,6 +47,7 @@ protocol
"tcpinfo_t *"
.Fn tcp:::state-change "void *" "csinfo_t *" "void *" "tcpsinfo_t *" "void *" \
"tcplsinfo_t *"
+.Fn tcp:::siftr "siftrinfo_t *"
.Sh DESCRIPTION
The DTrace
.Nm tcp
@@ -65,6 +64,8 @@ All
.Nm tcp
probes except for
.Fn tcp:::state-change
+and
+.Fn tcp:::siftr
have the same number and type of arguments.
The last three arguments are used to describe a TCP segment: the
.Vt ipinfo_t
@@ -136,6 +137,15 @@ Its first, third and fifth arguments are currently always
Its last argument describes the from-state in the transition, and the to-state
can be obtained from
.Dv args[3]->tcps_state .
+.Pp
+The
+.Fn tcp:::siftr
+probe fires when a TCP segment is sent or received by the host.
+For a detailed description see
+.Xr siftr 4 .
+The
+.Vt siftrinfo_t
+argument provides the information about the TCP connection.
.Sh ARGUMENTS
The
.Vt pktinfo_t
@@ -285,10 +295,107 @@ The valid TCP state values are given by the constants prefixed with
in
.Pa /usr/lib/dtrace/tcp.d .
.El
+.Pp
+The
+.Vt siftrinfo_t
+type is used by the
+.Fn tcp:::siftr
+probe to provide the state of the TCP connection.
+Its fields are:
+.Bl -tag -width "u_int sent_inflight_bytes" -offset indent
+.It Vt uint8_t direction
+Direction of packet that triggered the log message.
+Either
+.Qq 0
+for in, or
+.Qq 1
+for out.
+.It Vt uint8_t ipver
+The version of the IP protocol being used.
+Either
+.Qq 1
+for IPv4, or
+.Qq 2
+for IPv6.
+.It Vt uint16_t lport
+The TCP port that the local host is communicating via.
+.It Vt uint16_t rport
+The TCP port that the remote host is communicating via.
+.It Vt string laddr
+The IPv4 or IPv6 address of the local host.
+.It Vt string raddr
+The IPv4 or IPv6 address of the remote host.
+.It Vt uint32_t snd_cwnd
+The current congestion window (CWND) for the flow, in bytes.
+.It Vt uint32_t snd_wnd
+The current sending window for the flow, in bytes.
+The post scaled value is reported, except during the initial handshake (first
+few packets), during which time the unscaled value is reported.
+.It Vt uint32_t rcv_wnd
+The current receive window for the flow, in bytes.
+The post scaled value is always reported.
+.It Vt uint32_t t_flags2
+The current value of the t_flags2 for the flow.
+.It Vt uint32_t snd_ssthresh
+The slow start threshold (SSTHRESH) for the flow, in bytes.
+.It Vt int conn_state
+A TCP state.
+The valid TCP state values are given by the constants prefixed with
+.Ql TCPS_
+in
+.Pa /usr/lib/dtrace/tcp.d .
+.It Vt uint32_t mss
+The maximum segment size (MSS) for the flow, in bytes.
+.It Vt uint32_t srtt
+The current smoothed RTT (SRTT) for the flow in microseconds.
+.It Vt u_char sack_enabled
+SACK enabled indicator. 1 if SACK enabled, 0 otherwise.
+.It Vt u_char snd_scale
+The current window scaling factor for the sending window.
+.It Vt u_char rcv_scale
+The current window scaling factor for the receiving window.
+.It Vt u_int t_flags
+The current value of the t_flags for the flow.
+.It Vt uint32_t rto
+The current retransmission timeout (RTO) for the flow in microseconds.
+Divide by HZ to get the timeout length in seconds.
+.It Vt u_int snd_buf_hiwater
+The current size of the socket send buffer in bytes.
+.It Vt u_int snd_buf_cc
+The current number of bytes in the socket send buffer.
+.It Vt u_int rcv_buf_hiwater
+The current size of the socket receive buffer in bytes.
+.It Vt u_int rcv_buf_cc
+The current number of bytes in the socket receive buffer.
+.It Vt u_int sent_inflight_bytes
+The current number of unacknowledged bytes in-flight.
+Bytes acknowledged via SACK are not excluded from this count.
+.It Vt int t_segqlen
+The current number of segments in the reassembly queue.
+.It Vt u_int flowid
+Flowid for the connection.
+A caveat: Zero '0' either represents a valid flowid or a default value when
+the flowid is not being set.
+.It Vt u_int flowtype
+Flow type for the connection.
+Flowtype defines which protocol fields are hashed to produce the flowid.
+A complete listing is available in
+.Pa /usr/include/sys/mbuf.h
+under
+.Dv M_HASHTYPE_* .
+.El
.Sh FILES
-.Bl -tag -width "/usr/lib/dtrace/tcp.d" -compact
+.Bl -tag -width "/usr/lib/dtrace/siftr.d" -compact
.It Pa /usr/lib/dtrace/tcp.d
+DTrace type and translator definitions for all the probes of the
+.Nm tcp
+provider except the
+.Nm siftr
+probe.
+.It Pa /usr/lib/dtrace/siftr.d
DTrace type and translator definitions for the
+.Nm siftr
+probe of the
.Nm tcp
provider.
.El
@@ -317,7 +424,7 @@ tcp:::send
printf("%s", args[4]->tcp_flags & TH_ACK ? "ACK|" : "");
printf("%s", args[4]->tcp_flags & TH_URG ? "URG|" : "");
printf("%s", args[4]->tcp_flags == 0 ? "null " : "");
- printf("\b)\\n");
+ printf("\\b)\\n");
}
tcp:::receive
@@ -333,7 +440,7 @@ tcp:::receive
printf("%s", args[4]->tcp_flags & TH_ACK ? "ACK|" : "");
printf("%s", args[4]->tcp_flags & TH_URG ? "URG|" : "");
printf("%s", args[4]->tcp_flags == 0 ? "null " : "");
- printf("\b)\\n");
+ printf("\\b)\\n");
}
.Ed
The following script logs TCP connection state changes as they occur:
@@ -367,6 +474,26 @@ tcp:::state-change
last[args[1]->cs_cid] = timestamp;
}
.Ed
+The following script uses the siftr probe to show the current value of CWND
+and SSTHRESH when a packet is sent or received:
+.Bd -literal -offset indent
+#pragma D option quiet
+#pragma D option switchrate=10hz
+
+dtrace:::BEGIN
+{
+ printf(" %3s %16s:%-5s %16s:%-5s %10s %10s\\n",
+ "DIR", "LADDR", "LPORT", "RADDR", "RPORT", "CWND", "SSTHRESH");
+}
+
+tcp:::siftr
+{
+ printf(" %3s %16s:%-5d %16s:%-5d %10u %10u\\n",
+ siftr_dir_string[args[0]->direction],
+ args[0]->laddr, args[0]->lport, args[0]->raddr, args[0]->rport,
+ args[0]->snd_cwnd, args[0]->snd_ssthresh);
+}
+.Ed
.Sh COMPATIBILITY
This provider is compatible with the
.Nm tcp
@@ -377,6 +504,7 @@ provider in Solaris.
.Xr dtrace_sctp 4 ,
.Xr dtrace_udp 4 ,
.Xr dtrace_udplite 4 ,
+.Xr siftr 4 ,
.Xr tcp 4 ,
.Xr SDT 9
.Sh HISTORY
diff --git a/share/man/man4/dtrace_udp.4 b/share/man/man4/dtrace_udp.4
index ee5b7acffe6b..2e5c40cc1e7f 100644
--- a/share/man/man4/dtrace_udp.4
+++ b/share/man/man4/dtrace_udp.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 1, 2018
.Dt DTRACE_UDP 4
.Os
diff --git a/share/man/man4/dtrace_udplite.4 b/share/man/man4/dtrace_udplite.4
index 05a514d01f32..768de0951d25 100644
--- a/share/man/man4/dtrace_udplite.4
+++ b/share/man/man4/dtrace_udplite.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 1, 2018
.Dt DTRACE_UDPLITE 4
.Os
diff --git a/share/man/man4/dummynet.4 b/share/man/man4/dummynet.4
index ca5d33c51b73..81b1b33efb6e 100644
--- a/share/man/man4/dummynet.4
+++ b/share/man/man4/dummynet.4
@@ -1,6 +1,4 @@
.\"
-.\" $FreeBSD$
-.\"
.Dd September 10, 2021
.Dt DUMMYNET 4
.Os
diff --git a/share/man/man4/e6060sw.4 b/share/man/man4/e6060sw.4
index c5394106f5b9..407138abe378 100644
--- a/share/man/man4/e6060sw.4
+++ b/share/man/man4/e6060sw.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 5, 2017
.Dt E6060SW 4
.Os
diff --git a/share/man/man4/edsc.4 b/share/man/man4/edsc.4
index a25cee3a4143..f7ee4ca5c204 100644
--- a/share/man/man4/edsc.4
+++ b/share/man/man4/edsc.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" From: @(#)lo.4 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd March 25, 2007
.Dt EDSC 4
.Os
diff --git a/share/man/man4/efidev.4 b/share/man/man4/efidev.4
index 2cadada51e9c..684a93340d7f 100644
--- a/share/man/man4/efidev.4
+++ b/share/man/man4/efidev.4
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2018 Kyle Evans <kevans@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 18, 2021
.Dt EFIDEV 4
.Os
diff --git a/share/man/man4/ehci.4 b/share/man/man4/ehci.4
index 17186a797ddf..eb7029f30f51 100644
--- a/share/man/man4/ehci.4
+++ b/share/man/man4/ehci.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 24, 2018
.Dt EHCI 4
.Os
diff --git a/share/man/man4/em.4 b/share/man/man4/em.4
index a1fa22c2d0d3..0e9c08560545 100644
--- a/share/man/man4/em.4
+++ b/share/man/man4/em.4
@@ -1,3 +1,6 @@
+.\"-
+.\" SPDX-License-Identifier: BSD-3-Clause
+.\"
.\" Copyright (c) 2001-2003, Intel Corporation
.\" All rights reserved.
.\"
@@ -29,13 +32,13 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 30, 2019
+.Dd March 20, 2024
.Dt EM 4
.Os
.Sh NAME
-.Nm em
+.Nm em ,
+.Nm lem ,
+.Nm igb
.Nd "Intel(R) PRO/1000 Gigabit Ethernet adapter driver"
.Sh SYNOPSIS
To compile this driver into the kernel,
@@ -55,21 +58,35 @@ if_em_load="YES"
.Sh DESCRIPTION
The
.Nm
-driver provides support for PCI Gigabit Ethernet adapters based on
+driver provides support for PCI/PCI-X Gigabit Ethernet adapters based on
the Intel 82540, 82541ER, 82541PI, 82542, 82543, 82544, 82545, 82546,
-82546EB, 82546GB, 82547, 82571, 81572, 82573, and 82574 Ethernet
+82546EB, 82546GB, and 82547 controller chips.
+.Pp
+The
+.Nm
+driver provides support for PCI Express Gigabit Ethernet adapters
+based on the Intel 82571, 82572, 82573, 82574, and 82583 Ethernet
controller chips.
.Pp
The
.Nm
-driver also provides support for PCI Express Gigabit Ethernet adapters
-based on the Intel 82575, 82576, 82580, i21x and i35x.
+driver provides support for Gigabit Ethernet adapters connected to I/O
+Controller Hub (ICH) and Platform Controller Hub (PCH) including Intel
+80003ES2LAN, 82562, 82566, 82567, 82577, 82578, 82579, i217, i218, and i219.
+.Pp
+The
+.Nm
+driver provides support for PCI Express Gigabit Ethernet adapters
+based on the Intel 82575, 82576, 82580, i210, i211, and i35x.
+These appear as
+.Nm igb
+interfaces to maintain compatibility with existing infrastructure.
.Pp
The driver supports Transmit/Receive checksum offload and Jumbo Frames
on all but 82542-based adapters.
.Pp
Furthermore it supports TCP segmentation offload (TSO) on all adapters but
-those based on the 82543, 82544 and 82547 controller chips.
+those based on the 82542, 82543, 82544 and 82547 controller chips.
The identification LEDs of the adapters supported by the
.Nm
driver can be controlled via the
@@ -215,6 +232,9 @@ Tunables can be set at the
.Xr loader 8
prompt before booting the kernel or stored in
.Xr loader.conf 5 .
+See
+.Xr iflib 4
+for per-instance variables.
.Bl -tag -width indent
.It Va hw.em.disable_crc_stripping
Disable or enable hardware stripping of CRC field.
@@ -224,27 +244,12 @@ Default 0 (enabled).
.It Va hw.em.eee_setting
Disable or enable Energy Efficient Ethernet.
Default 1 (disabled).
-.It Va hw.em.msix
-Enable or disable MSI-X style interrupts.
-Default 1 (enabled).
.It Va hw.em.smart_pwr_down
Enable or disable smart power down features on newer adapters.
Default 0 (disabled).
.It Va hw.em.sbp
Show bad packets when in promiscuous mode.
Default 0 (off).
-.It Va hw.em.rxd
-Number of receive descriptors allocated by the driver.
-The default value is 1024 for adapters newer than 82547,
-and 256 for older ones.
-The 82542 and 82543-based adapters can handle up to 256 descriptors,
-while others can have up to 4096.
-.It Va hw.em.txd
-Number of transmit descriptors allocated by the driver.
-The default value is 1024 for adapters newer than 82547,
-and 256 for older ones.
-The 82542 and 82543-based adapters can handle up to 256 descriptors,
-while others can have up to 4096.
.It Va hw.em.rx_int_delay
This value delays the generation of receive interrupts in units of
1.024 microseconds.
@@ -264,6 +269,12 @@ If
.Va hw.em.tx_int_delay
is non-zero, this tunable limits the maximum delay in which a transmit
interrupt is generated.
+.It Va hw.em.max_interrupt_rate
+Maximum interrupts per second.
+The default value is 8000.
+.It Va hw.em.rx_process_limit
+Maximum number of received packets to process at a time, -1 means unlimited.
+The default value is 100.
.El
.Sh FILES
.Bl -tag -width /dev/led/em*
@@ -313,7 +324,13 @@ The
device driver first appeared in
.Fx 4.4 .
.Nm
-was merged with the igb device driver and converted to the iflib framework in
+was merged with the
+.Nm lem
+and
+.Nm igb
+device drivers and converted to the
+.Xr iflib 4
+framework in
.Fx 12.0 .
.Sh AUTHORS
.An -nosplit
@@ -321,7 +338,11 @@ The
.Nm
driver was originally written by
.An Intel Corporation Aq Mt freebsd@intel.com .
-It was merged with igb driver and converted to the iflib framework by
+It was merged with the
+.Nm igb
+driver and converted to the
+.Xr iflib 4
+framework by
.An Matthew Macy Aq Mt mmacy@mattmacy.io
and
.An Sean Bruno Aq Mt sbruno@FreeBSD.org .
diff --git a/share/man/man4/ena.4 b/share/man/man4/ena.4
index ba9654c8c19a..50a180871627 100644
--- a/share/man/man4/ena.4
+++ b/share/man/man4/ena.4
@@ -1,6 +1,6 @@
.\" SPDX-License-Identifier: BSD-2-Clause
.\"
-.\" Copyright (c) 2015-2020 Amazon.com, Inc. or its affiliates.
+.\" Copyright (c) 2015-2023 Amazon.com, Inc. or its affiliates.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -27,8 +27,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
.\" OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 4, 2021
.Dt ENA 4
.Os
@@ -516,10 +514,10 @@ for more details.
.Sh SUPPORT
If an issue is identified with the released source code with a supported
adapter, please email the specific information related to the issue to
-.Aq Mt mk@semihalf.com ,
-.Aq Mt dgr@semihalf.com
+.Aq Mt akiyano@amazon.com ,
+.Aq Mt osamaabb@amazon.com
and
-.Aq Mt mw@semihalf.com .
+.Aq Mt darinzon@amazon.com .
.Sh SEE ALSO
.Xr netmap 4 ,
.Xr vlan 4 ,
@@ -532,5 +530,5 @@ driver first appeared in
.Sh AUTHORS
The
.Nm
-driver was written by
+driver was developed by Amazon and originally written by
.An Semihalf .
diff --git a/share/man/man4/enc.4 b/share/man/man4/enc.4
index 42e014304b25..87ff46878266 100644
--- a/share/man/man4/enc.4
+++ b/share/man/man4/enc.4
@@ -29,8 +29,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 9, 2017
.Dt ENC 4
.Os
diff --git a/share/man/man4/enic.4 b/share/man/man4/enic.4
new file mode 100644
index 000000000000..257a95fa9d32
--- /dev/null
+++ b/share/man/man4/enic.4
@@ -0,0 +1,88 @@
+.\" Copyright 2008-2017 Cisco Systems, Inc.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS `AS IS' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 Sept 7, 2022
+.Dt ENIC 4
+.Os
+.Sh NAME
+.Nm enic
+.Nd "VIC Ethernet NIC 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 iflib"
+.Cd "device enic"
+.Ed
+.Pp
+To load the driver as a module at run-time,
+run the following command as root:
+.Bd -literal -offset indent
+kldload if_enic
+.Ed
+.Pp
+To load the driver as a
+module at boot time, place the following lines in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+if_enic_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for Cisco Virtual Interface Card.
+Support is limited to basic network connectivity.
+Media is controlled by the NIC itself since there can be multiple
+virtual PCI NIC devices exposed to the PCI bus.
+.Sh HARDWARE
+The
+.Nm
+driver should supports all known Cisco VIC cards.
+.Sh CONFIGURATION
+The
+.Nm
+network interface is configured using
+.Xr ifconfig 8
+and the
+.Xr sysctl 8
+tree at
+.Dv dev.enic.<N> .
+All configurable entries are also tunables, and can be put directly into the
+.Xr loader.conf 5
+for persistent configuration.
+.Sh SEE ALSO
+.Xr ifconfig 8
+.Sh HISTORY
+The
+.Nm
+device driver first appeared in
+.Fx 14.0 .
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+driver was written by
+.An Cisco UCS team
+based of the DPDK driver.
diff --git a/share/man/man4/epair.4 b/share/man/man4/epair.4
index e1018e4b177f..4bcb54c936cb 100644
--- a/share/man/man4/epair.4
+++ b/share/man/man4/epair.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 18, 2015
.Dt EPAIR 4
.Os
diff --git a/share/man/man4/est.4 b/share/man/man4/est.4
index 0470721fca61..6452f1d40f11 100644
--- a/share/man/man4/est.4
+++ b/share/man/man4/est.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 21, 2020
.Dt EST 4
.Os
diff --git a/share/man/man4/et.4 b/share/man/man4/et.4
index 7a0a92e7d534..6f9e37e0a56d 100644
--- a/share/man/man4/et.4
+++ b/share/man/man4/et.4
@@ -28,8 +28,6 @@
.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 9, 2011
.Dt ET 4
.Os
diff --git a/share/man/man4/etherswitch.4 b/share/man/man4/etherswitch.4
index ea7ef49e6f4c..aeb5e484e7cf 100644
--- a/share/man/man4/etherswitch.4
+++ b/share/man/man4/etherswitch.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 5, 2017
.Dt ETHERSWITCH 4
.Os
diff --git a/share/man/man4/eventtimers.4 b/share/man/man4/eventtimers.4
index 656c8e011d29..fee3a3264f5b 100644
--- a/share/man/man4/eventtimers.4
+++ b/share/man/man4/eventtimers.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 13, 2012
.Dt EVENTTIMERS 4
.Os
diff --git a/share/man/man4/exca.4 b/share/man/man4/exca.4
index d659593b577d..555e459b7db4 100644
--- a/share/man/man4/exca.4
+++ b/share/man/man4/exca.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 23, 2003
.Dt EXCA 4
.Os
diff --git a/share/man/man4/fd.4 b/share/man/man4/fd.4
index 0becf5140308..f91c0e0501fb 100644
--- a/share/man/man4/fd.4
+++ b/share/man/man4/fd.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)fd.4 8.1 (Berkeley) 6/9/93
-.\" $FreeBSD$
-.\"
.Dd June 9, 1993
.Dt FD 4
.Os
diff --git a/share/man/man4/fdc.4 b/share/man/man4/fdc.4
index 1580fc067771..929baf3a234b 100644
--- a/share/man/man4/fdc.4
+++ b/share/man/man4/fdc.4
@@ -25,9 +25,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 7, 2017
+.Dd October 10, 2023
.Dt FDC 4
.Os
.Sh NAME
@@ -313,6 +311,61 @@ Third argument is a pointer to
This type is the same as being used in the per-drive configuration
flags, or in the CMOS configuration data or ACPI namespace on IA32 systems.
.El
+.Sh SYSCTL VARIABLES
+.Bl -tag -width "debug.fdc.debugflags"
+.It Dv debug.fdc.debugflags
+Selectively enable debugging by setting one or more flags.
+.Bl -tag -width "0x40"
+.It Dv 0x01
+Dump device registers on reset.
+.It Dv 0x02
+When an IO operation completes, print the number of retries
+when that number is greater than zero.
+.It Dv 0x04
+Print when the number of retries exceeds
+.Dv debug.fdc.retries
+.Pq Dv EIO .
+Print when the option
+.Dv FDOPT_NOERROR
+is set and an error would have returned from a write operation.
+.It Dv 0x08
+Print detailed IO command information.
+.It Dv 0x10
+Print status registers.
+.It Dv 0x20
+Print detailed status registers when interrupts complete.
+Print the source code line number close to the source of a
+non-zero return from a thread worker operation.
+.It Dv 0x40
+Print when the disk appears to be lost.
+Print cylinder, head, sector, and sector shift information
+after a request to read an ID field.
+Notify whether a disk probe resulted in finding a disk.
+When detecting the density of media present, indicate whether
+the autosensing was successful, and if so, the size of the
+medium in kilobytes.
+Print detailed type information when setting the drive type.
+.It Dv 0x80
+Print when an unknown IOCTL is used.
+.El
+.It Dv debug.fdc.fifo
+For enhanced controllers, allows a non-default FIFO
+threshold setting. The default is 8 bytes.
+.It Dv debug.fdc.retries
+Maximum number of retries to attempt. The default is 10.
+.It Dv debug.fdc.spec1
+Specification byte one (step-rate + head unload).
+The default step rate is 6 ms. The default head unload
+time is 240 ms.
+.It Dv debug.fdc.spec2
+Specification byte two (head load time + no-dma).
+The default head load time is 16 ms, and no-dma is 0
+.Pq disabled .
+.It Dv debug.fdc.settle
+Head settling time in
+.Sy settle
+/ hz seconds. The default value is set during device attach.
+.El
.Sh FILES
.Bl -tag -width ".Pa /dev/fd*" -compact
.It Pa /dev/fd*
diff --git a/share/man/man4/fdt.4 b/share/man/man4/fdt.4
index 8501ec03e56e..2ac570a5223c 100644
--- a/share/man/man4/fdt.4
+++ b/share/man/man4/fdt.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 28, 2019
.Dt FDT 4
.Os
diff --git a/share/man/man4/fdt_pinctrl.4 b/share/man/man4/fdt_pinctrl.4
index 7c387ded9069..0eab8f82209d 100644
--- a/share/man/man4/fdt_pinctrl.4
+++ b/share/man/man4/fdt_pinctrl.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 3, 2018
.Dt "FDT_PINCTRL" 4
.Os
diff --git a/share/man/man4/fdtbus.4 b/share/man/man4/fdtbus.4
index e5943c44f9e6..7fb13b01b3b9 100644
--- a/share/man/man4/fdtbus.4
+++ b/share/man/man4/fdtbus.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 12, 2010
.Dt FDTBUS 4
.Os
diff --git a/share/man/man4/ffclock.4 b/share/man/man4/ffclock.4
index d2ca5756e197..150d0efb9a40 100644
--- a/share/man/man4/ffclock.4
+++ b/share/man/man4/ffclock.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2011
.Dt FFCLOCK 4
.Os
diff --git a/share/man/man4/filemon.4 b/share/man/man4/filemon.4
index 9fb2fe10a2ec..2561e1e89bf5 100644
--- a/share/man/man4/filemon.4
+++ b/share/man/man4/filemon.4
@@ -29,9 +29,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd February 1, 2022
+.Dd August 1, 2023
.Dt FILEMON 4
.Os
.Sh NAME
@@ -193,12 +191,13 @@ no log entry for the system call.
#include <dev/filemon/filemon.h>
#include <fcntl.h>
#include <err.h>
+#include <errno.h>
#include <unistd.h>
static void
open_filemon(void)
{
- pid_t child;
+ pid_t child, wait_rv;
int fm_fd, fm_log;
if ((fm_fd = open("/dev/filemon", O_RDWR | O_CLOEXEC)) == -1)
@@ -215,8 +214,14 @@ open_filemon(void)
if (ioctl(fm_fd, FILEMON_SET_PID, &child) == -1)
err(1, "Cannot set filemon PID");
/* Do something here. */
- } else {
- wait(&child);
+ } else if (child == -1)
+ err(1, "Cannot fork child");
+ else {
+ while ((wait_rv = wait(&child)) == -1 &&
+ errno == EINTR)
+ ;
+ if (wait_rv == -1)
+ err(1, "cannot wait for child");
close(fm_fd);
}
}
diff --git a/share/man/man4/firewire.4 b/share/man/man4/firewire.4
index 147af36b145d..8c4b65eb25bb 100644
--- a/share/man/man4/firewire.4
+++ b/share/man/man4/firewire.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.
.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the acknowledgement as bellow:
+.\" must display the acknowledgement as below:
.\"
.\" This product includes software developed by K. Kobayashi and H. Shimokawa
.\"
@@ -29,8 +29,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 6, 2022
.Dt FIREWIRE 4
.Os
diff --git a/share/man/man4/rtw88fw.4 b/share/man/man4/ftgpio.4
index 1bf756d67e57..e31457673fa5 100644
--- a/share/man/man4/rtw88fw.4
+++ b/share/man/man4/ftgpio.4
@@ -1,5 +1,5 @@
-.\"-
-.\" Copyright (c) 2022 Bjoern A. Zeeb
+.\" Copyright (c) 2022, Stormshield
+.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -22,35 +22,33 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd March 31, 2022
-.Dt rtw88fw 4
+.Dd December 28, 2022
+.Dt FTGPIO 4
.Os
.Sh NAME
-.Nm rtw88fw
-.Nd Firmware modules for Realtek rtw88 wireless network driver
+.Nm ftgpio
+.Nd GPIO Controller on Fintek Super I/O",
.Sh SYNOPSIS
-The
-.Xr rtw88 4
-driver should auto-load any firmware needed.
-It is discouraged to load the driver or firmware manually from
-.Xr loader 8 .
+.Cd "device ftgpio"
+.Cd "device gpio"
+.Cd "device gpioled"
.Sh DESCRIPTION
-Multiple modules provide access to firmware for the various chipset
-models supported by the
-.Xr rtw88 4
-driver.
-.Sh FILES
-A copy of the
-.Xr rtw88 4
-firmware license is installed at
-.Em /usr/share/doc/legal/realtek_rtw88_firmware.LICENCE .
+The
+.Nm
+is a driver for the GPIO controller found on Fintek Super I/O chips.
.Sh SEE ALSO
-.Xr rtw88 4 ,
-.Xr firmware 9
+.Xr gpio 3 ,
+.Xr gpio 4 ,
+.Xr gpioled 4 ,
+.Xr gpioctl 8
+.Xr superio 4 ,
.Sh HISTORY
The
.Nm
-firmware modules first appeared in
+manual page first appeared in
.Fx 14.0 .
+.Sh AUTHORS
+The
+.Nm
+driver was partially written by
+.An Stéphane Rochoy Aq Mt stéphane.rochoy@stormshield.eu .
diff --git a/share/man/man4/ftwd.4 b/share/man/man4/ftwd.4
index 6acef6698ac1..4d157b689e27 100644
--- a/share/man/man4/ftwd.4
+++ b/share/man/man4/ftwd.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2012 Bjoern A. Zeeb <bz@FreeBSD.org>
.\" Copyright (c) 2019 Andriy Gapon <avg@FreeBSD.org>
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 26, 2020
.Dt FTWD 4
.Os
diff --git a/share/man/man4/full.4 b/share/man/man4/full.4
index 6f1b3606258d..75b0da22ea8e 100644
--- a/share/man/man4/full.4
+++ b/share/man/man4/full.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 9, 2021
.Dt FULL 4
.Os
diff --git a/share/man/man4/fwe.4 b/share/man/man4/fwe.4
index 76fc1ac4f667..68d92595f851 100644
--- a/share/man/man4/fwe.4
+++ b/share/man/man4/fwe.4
@@ -22,8 +22,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.\"
.Dd July 16, 2005
.Dt FWE 4
diff --git a/share/man/man4/fwip.4 b/share/man/man4/fwip.4
index c2c9f05bb7eb..fdd01f1ba9d9 100644
--- a/share/man/man4/fwip.4
+++ b/share/man/man4/fwip.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 16, 2005
.Dt FWIP 4
.Os
diff --git a/share/man/man4/fwohci.4 b/share/man/man4/fwohci.4
index a4f7d42be5b2..ec14ddfdec85 100644
--- a/share/man/man4/fwohci.4
+++ b/share/man/man4/fwohci.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.
.\" 3. All advertising materials mentioning features or use of this software
-.\" must display the acknowledgement as bellow:
+.\" must display the acknowledgement as below:
.\"
.\" This product includes software developed by K. Kobayashi and H. Shimokawa
.\"
@@ -29,8 +29,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.\"
.Dd December 24, 2020
.Dt FWOHCI 4
diff --git a/share/man/man4/fxp.4 b/share/man/man4/fxp.4
index 26367a51a984..6eae399684ad 100644
--- a/share/man/man4/fxp.4
+++ b/share/man/man4/fxp.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 26, 2010
.Dt FXP 4
.Os
diff --git a/share/man/man4/gbde.4 b/share/man/man4/gbde.4
index ada799729ca7..79acfbe81444 100644
--- a/share/man/man4/gbde.4
+++ b/share/man/man4/gbde.4
@@ -29,8 +29,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 19, 2002
.Dt GBDE 4
.Os
diff --git a/share/man/man4/gdb.4 b/share/man/man4/gdb.4
index de2f4d108048..2b18be2d14c4 100644
--- a/share/man/man4/gdb.4
+++ b/share/man/man4/gdb.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 17, 2016
.Dt GDB 4
.Os
@@ -37,7 +35,7 @@
The
.Nm
kernel debugger is a variation of
-.Xr gdb 1
+.Xr gdb 1 Pq Pa ports/devel/gdb
which understands some aspects of the
.Fx
kernel environment.
@@ -90,7 +88,7 @@ on,
In this mode, you need the
.Fl k
flag to indicate to
-.Xr gdb 1
+.Xr gdb 1 Pq Pa ports/devel/gdb
that the
.Dq "dump file"
.Pa /dev/mem
@@ -336,9 +334,9 @@ The remote system continues to run.
The user interface to
.Nm
is via
-.Xr gdb 1 ,
+.Xr gdb 1 Pq Pa ports/devel/gdb ,
so
-.Xr gdb 1
+.Xr gdb 1 Pq Pa ports/devel/gdb
commands also work.
This section discusses only the extensions for kernel debugging that get
installed in the kernel build directory.
@@ -387,7 +385,7 @@ are convenience commands which invoke
.Ss "The current process environment"
The following macros are convenience functions intended to make things easier
than the standard
-.Xr gdb 1
+.Xr gdb 1 Pq Pa ports/devel/gdb
commands.
.Bl -tag -width indent
.It Ic f0
@@ -467,7 +465,7 @@ Show some PCB contents of the process
.El
.Ss "Examining data structures"
You can use standard
-.Xr gdb 1
+.Xr gdb 1 Pq Pa ports/devel/gdb
commands to look at most data structures.
The macros in this section are
convenience functions which typically display the data in a more readable
@@ -568,7 +566,7 @@ It does nothing else except to print a warning
message to remind you to remove it again.
.El
.Sh SEE ALSO
-.Xr gdb 1 ,
+.Xr gdb 1 Pq Pa ports/devel/gdb ,
.Xr ps 1 ,
.Xr ddb 4 ,
.Xr firewire 4 ,
@@ -581,7 +579,7 @@ This man page was written by
.An Greg Lehey Aq Mt grog@FreeBSD.org .
.Sh BUGS
The
-.Xr gdb 1
+.Xr gdb 1 Pq Pa ports/devel/gdb
debugger
was never designed to debug kernels, and it is not a very good match.
Many problems exist.
diff --git a/share/man/man4/gem.4 b/share/man/man4/gem.4
index 9224920c07dc..62a8c7b18bf9 100644
--- a/share/man/man4/gem.4
+++ b/share/man/man4/gem.4
@@ -24,14 +24,12 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 26, 2020
+.Dd April 18, 2023
.Dt GEM 4
.Os
.Sh NAME
.Nm gem
-.Nd ERI/GEM/GMAC Ethernet device driver
+.Nd GEM/GMAC Ethernet device driver
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following lines in your
@@ -51,8 +49,7 @@ if_gem_load="YES"
The
.Nm
driver provides support for the GMAC Ethernet hardware found mostly in
-the last Apple PowerBooks G3s and most G4-based Apple hardware, as
-well as Sun UltraSPARC machines.
+the last Apple PowerBooks G3s and most G4-based Apple hardware.
.Pp
All controllers supported by the
.Nm
@@ -69,8 +66,6 @@ driver include:
.It
Apple GMAC
.It
-Sun ERI 10/100 Mbps Ethernet
-.It
Sun GEM Gigabit Ethernet
.El
.Pp
diff --git a/share/man/man4/genet.4 b/share/man/man4/genet.4
index bd6e2589d3f5..665aaff49507 100644
--- a/share/man/man4/genet.4
+++ b/share/man/man4/genet.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 8, 2021
.Dt GENET 4
.Os
diff --git a/share/man/man4/genetlink.4 b/share/man/man4/genetlink.4
new file mode 100644
index 000000000000..9cc5f3b9cbc1
--- /dev/null
+++ b/share/man/man4/genetlink.4
@@ -0,0 +1,145 @@
+.\"
+.\" Copyright (C) 2022 Alexander Chernikov <melifaro@FreeBSD.org>.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 1, 2022
+.Dt GENETLINK 4
+.Os
+.Sh NAME
+.Nm genetlink
+.Nd Generic Netlink
+.Sh SYNOPSIS
+.In netlink/netlink.h
+.In netlink/netlink_generic.h
+.Ft int
+.Fn socket AF_NETLINK SOCK_DGRAM NETLINK_GENERIC
+.Sh DESCRIPTION
+The
+.Dv NETLINK_GENERIC
+is a "container" family, used for dynamic registration of other families
+belonging to the various subsystems.
+These subsystems provide a string family name during registration and
+receive a dynamically-allocated family id.
+Allocated family identifiers are then used by applications to get access to
+functions provided by that subsystem via netlink.
+There are standard methods for resolving string family names to family
+identifiers.
+A similar mechanism works for the notification groups provided by those
+families.
+.Pp
+All generic netlink families share a common header:
+.Bd -literal
+struct genlmsghdr {
+ uint8_t cmd; /* command within the family */
+ uint8_t version; /* ABI version for the cmd */
+ uint16_t reserved; /* reserved: set to 0 */
+};
+.Ed
+The family id is encoded in the
+.Dv nlmsg_type
+of the base netlink header.
+The
+.Va cmd
+field is the command identifier within the family.
+The
+.Va version
+field is the command version.
+.Sh METHODS
+The generic Netlink framework provides the base family,
+.Dv GENL_ID_CTRL
+("nlctrl") with a fixed family id.
+This family is used to list the details of all registered families.
+.Pp
+The following messages are supported by the framework:
+.Ss CTRL_CMD_GETFAMILY
+Fetches a single family or all registered families, depending on the
+.Dv NLM_F_DUMP
+flag.
+Each family is reported as
+.Dv CTRL_CMD_NEWFAMILY
+message.
+The following filters are recognised by the kernel:
+.Pp
+.Bd -literal -offset indent -compact
+CTRL_ATTR_FAMILY_ID (uint16_t) current family id assigned by kernel
+CTRL_ATTR_FAMILY_NAME (string) family name
+.Ed
+.Ss TLVs
+.Bl -tag -width indent
+.It Dv CTRL_ATTR_FAMILY_ID
+(uint16_t) Dynamically-assigned family identifier.
+.It Dv CTRL_ATTR_FAMILY_NAME
+(string) Family name.
+.It Dv CTRL_ATTR_HDRSIZE
+(uint32_t) Family mandatory header size (typically 0).
+.It Dv CTRL_ATTR_MAXATTR
+(uint32_t) Maximum attribute number valid for the family.
+.It Dv CTRL_ATTR_OPS
+(nested) List of the operations supported by the family.
+The attribute consists of a list of nested TLVs, with attribute values
+monotonically incremented, starting from 0.
+The following attributes are present in each TLV:
+.Bl -tag -width indent
+.It Dv CTRL_ATTR_OP_ID
+Operation (message) number.
+.It Dv CTRL_ATTR_OP_FLAGS
+Operation flags.
+The following flags are supported:
+.Bd -literal -offset indent -compact
+GENL_ADMIN_PERM requires elevated permissions
+GENL_CMD_CAP_DO operation is a modification request
+GENL_CMD_CAP_DUMP operation is a get/dump request
+.Ed
+.El
+.It Dv CTRL_ATTR_MCAST_GROUPS
+(nested) List of the notification groups supported by the family.
+The attribute consists of a list of nested TLVs, with attribute values
+monotonically incremented, starting from 0.
+The following attributes are present in each TLV:
+.Bl -tag -width indent
+.It Dv CTRL_ATTR_MCAST_GRP_ID
+Group id that can be used in
+.Dv NETLINK_ADD_MEMBERSHIP
+.Xr setsockopt 2 .
+.It Dv CTRL_ATTR_MCAST_GRP_NAME
+(string) Human-readable name of the group.
+.El
+.El
+.Ss Groups
+The following groups are defined:
+.Bd -literal -offset indent -compact
+"notify" Notifies on family registrations/removal.
+.Ed
+.Sh SEE ALSO
+.Xr netlink 4
+.Sh HISTORY
+The
+.Dv NETLINK_GENERIC
+protocol family appeared in
+.Fx 13.2 .
+.Sh AUTHORS
+The netlink was implemented by
+.An -nosplit
+.An Alexander Chernikov Aq Mt melifaro@FreeBSD.org .
+It was derived from the Google Summer of Code 2021 project by
+.An Ng Peng Nam Sean .
diff --git a/share/man/man4/geom.4 b/share/man/man4/geom.4
index f6988c663f54..c0f3bb23499d 100644
--- a/share/man/man4/geom.4
+++ b/share/man/man4/geom.4
@@ -32,9 +32,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 13, 2019
+.Dd October 6, 2023
.Dt GEOM 4
.Os
.Sh NAME
@@ -62,7 +60,6 @@
.Cd options GEOM_PART_GPT
.Cd options GEOM_PART_LDM
.Cd options GEOM_PART_MBR
-.Cd options GEOM_PART_VTOC8
.Cd options GEOM_RAID
.Cd options GEOM_RAID3
.Cd options GEOM_SHSEC
@@ -229,6 +226,12 @@ Examine the rank number of the provider's geom.
.It
Examine the method name of the provider's geom.
.El
+.Pp
+Tasting is controlled by the
+.Va kern.geom.notaste
+sysctl.
+To disable tasting, set the sysctl to 1, to
+re-enable tasting, set the sysctl to 0.
.It Em ORPHANIZATION
is the process by which a provider is removed while
it potentially is still being used.
@@ -445,6 +448,7 @@ Dump contents of gctl requests.
.El
.Sh SEE ALSO
.Xr libgeom 3 ,
+.Xr geom 8 ,
.Xr DECLARE_GEOM_CLASS 9 ,
.Xr disk 9 ,
.Xr g_access 9 ,
@@ -493,8 +497,6 @@ Use
.Cd GEOM_MULTIPATH ,
.It
.Cd GEOM_PART_MBR ,
-.It
-.Cd GEOM_PART_VTOC8 ,
and
.It
.Cd GEOM_LABEL
diff --git a/share/man/man4/geom_linux_lvm.4 b/share/man/man4/geom_linux_lvm.4
index 2e1c8aa07ad1..0066a199ac1e 100644
--- a/share/man/man4/geom_linux_lvm.4
+++ b/share/man/man4/geom_linux_lvm.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 1, 2013
.Dt GEOM_LINUX_LVM 4
.Os
diff --git a/share/man/man4/geom_map.4 b/share/man/man4/geom_map.4
deleted file mode 100644
index b84f90a71722..000000000000
--- a/share/man/man4/geom_map.4
+++ /dev/null
@@ -1,211 +0,0 @@
-.\"
-.\" Copyright (c) 2011 Aleksandr Rybalko
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd June 8, 2015
-.Dt GEOM_MAP 4
-.Os
-.Sh NAME
-.Nm geom_map
-.Nd "GEOM module that maps defined items as separate partitions"
-.Sh SYNOPSIS
-To compile this driver into the kernel,
-place the following line in your
-kernel configuration file:
-.Bd -ragged -offset indent
-.Cd "options geom_map"
-.Ed
-.Sh DESCRIPTION
-The
-.Nm
-framework provides support for mapping defined parts of the media.
-Basically it is helpful for embedded devices where in the one continuous
-flash are loader, kernel and rootfs parts.
-.Nm
-allows making them available as separate parts and protects the loader from
-being overwritten.
-.Pp
-At boot time
-.Nm
-partitions are listed (only with bootverbose) as:
-.Bd -literal -offset indent
-MAP: 0x30000, data=0x30000 "/dev/map/bootloader"
-MAP: 30000x10000, data=0x10000 "/dev/map/factory"
-MAP: 40000x7a0000, data=0x7a0000 "/dev/map/upgrade"
-MAP: search key ".!/bin/sh" from 0x100000, step 0x10000
-MAP: 40000x110000, data=0x110000 "/dev/map/kernel"
-MAP: search key ".!/bin/sh" from 0x100000, step 0x10000
-MAP: 150000x690000, data=0x690000 "/dev/map/rootfs"
-MAP: 7e0000x20000, data=0x20000 "/dev/map/config"
-.Ed
-.Pp
-The current
-.Nm
-configuration can be accessed with the following
-.Xr sysctl 8
-nodes:
-.Va kern.geom.conftxt , kern.geom.confxml ,
-and
-.Va kern.geom.confdot
-or by using
-.Dq Li "geom map list" .
-.Bd -literal -offset indent
-# sysctl -n kern.geom.conftxt
-0 MD md0 10485760 512 u 0 s 512 f 0 fs 0 l 10485760 t malloc
-0 DISK cfid0 8388608 4 hd 0 sc 0
-1 MAP map/config 131072 4 i 5 o 8257536 entry 0 dsize 131072
-1 MAP map/rootfs 6881280 4 i 4 o 1376256 entry 0 dsize 6881280
-2 UZIP map/rootfs.uzip 18677760 512
-1 MAP map/kernel 1114112 4 i 3 o 262144 entry 0 dsize 1114112
-1 MAP map/upgrade 7995392 4 i 2 o 262144 entry 0 dsize 7995392
-1 MAP map/factory 65536 4 i 1 o 196608 entry 0 dsize 65536
-1 MAP map/bootloader 196608 4 i 0 o 0 entry 0 dsize 196608
-.Ed
-.Pp
-Driver configuration can be done in
-.Xr device.hints 5 .
-List of used parameters:
-.Bl -tag -width indent
-.It Va at
-select media to attach
-.It Va name
-name of partition (will create device
-.Pa /dev/map/ Ns Ar that_name )
-.It Va start
-offset from the beginning of the parent media to start of the mapped partition.
-This field can also have a special value
-.Qq Li search: Ns Ar searchstart Ns Li : Ns Ar searchstep Ns Li : Ns Ar searchkey ,
-where:
-.Bl -tag -width indent
-.It Ar searchstart
-offset from the beginning of the parent media where search will be started
-.It Ar searchstep
-value of the increment used while searching for the partition boundary markers
-.It Ar searchkey
-key which will be used to find partition boundary markers.
-The wildcard
-.Ql .\&
-can be used to match any character on that position
-.El
-.It Va end
-offset from the beginning of the parent media to the end of the mapped partition.
-This field can also have the special value
-.Qq Li search: Ns Ar searchstart Ns Li : Ns Ar searchstep Ns Li : Ns Ar searchkey ,
-as described above.
-.It Va offset
-offset where the data of the mapped partition begins
-.El
-.Pp
-Each record contains the start address (in bytes) from the media begin, size
-(in bytes), offset where the data of mapped partition begins, and the name of
-new device.
-.Bd -literal -offset indent
-MAP: 150000x690000, data=0x690000 "/dev/map/rootfs"
-.Ed
-.Bd -literal
-00150000 - start address
-00690000 - size
-00000000 - data begin from zero offset
-00690000 - data size
-"map/rootfs" - new media will be accessible via /dev/map/rootfs dev.
-.Ed
-.Sh EXAMPLES
-If we need to implement layout shown above, we need to define the following
-hints:
-.Bd -literal -offset indent
-hint.map.0.at="cfid0"
-hint.map.0.start=0x00000000
-hint.map.0.end=0x00030000
-hint.map.0.name="bootloader"
-hint.map.0.readonly=1
-.Ed
-.Pp
-This defines
-.Pa /dev/map/bootloader
-at disk
-.Pa cfid0
-starting at
-.Li 0x00000000
-and ending at
-.Li 0x00030000 ,
-it is also marked as readonly.
-.Bd -literal -offset indent
-hint.map.1.at="cfid0"
-hint.map.1.start=0x00030000
-hint.map.1.end=0x00040000
-hint.map.1.name="factory"
-
-hint.map.2.at="cfid0"
-hint.map.2.start=0x00040000
-hint.map.2.end=0x007e0000
-hint.map.2.name="upgrade"
-
-hint.map.3.at="cfid0"
-hint.map.3.name="kernel"
-hint.map.3.start=0x00040000
-hint.map.3.end="search:0x00100000:0x10000:.!/bin/sh"
-.Ed
-.Pp
-This defines
-.Pa /dev/map/kernel
-at disk
-.Pa cfid0
-starting at
-.Li 0x00040000 ,
-but the end position must be searched by finding the key
-.Dq Li ".!/bin/sh" ,
-from offset
-.Li 0x00100000
-to the end of media with step
-.Li 0x10000 .
-The real marker in this case is
-.Dq Li "#!/bin/sh" ,
-but
-.Ql #
-terminates the line when the hints file is parsed, so we need to use wildcard
-.Ql .\&
-instead of
-.Ql # .
-.Bd -literal -offset indent
-hint.map.4.at="cfid0"
-hint.map.4.name="rootfs"
-hint.map.4.start="search:0x00100000:0x10000:.!/bin/sh"
-hint.map.4.end=0x007e0000
-
-hint.map.5.at="cfid0"
-hint.map.5.start=0x007e0000
-hint.map.5.end=0x00800000
-hint.map.5.name="config"
-.Ed
-.Sh SEE ALSO
-.Xr geom 4 ,
-.Xr geom 8 ,
-.Xr sysctl 8
-.Sh AUTHORS
-The
-.Nm
-driver was written by
-.An Aleksandr Rybalko Aq Mt ray@ddteam.net .
diff --git a/share/man/man4/geom_uzip.4 b/share/man/man4/geom_uzip.4
index 4b8e8d355c81..bb6f20000344 100644
--- a/share/man/man4/geom_uzip.4
+++ b/share/man/man4/geom_uzip.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 28, 2021
.Dt GEOM_UZIP 4
.Os
diff --git a/share/man/man4/gif.4 b/share/man/man4/gif.4
index 436e6f121e5a..959510451011 100644
--- a/share/man/man4/gif.4
+++ b/share/man/man4/gif.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 21, 2018
.Dt GIF 4
.Os
diff --git a/share/man/man4/gpio.4 b/share/man/man4/gpio.4
index 276d6855b49b..9a629ff402fd 100644
--- a/share/man/man4/gpio.4
+++ b/share/man/man4/gpio.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 27, 2019
.Dt GPIO 4
.Os
diff --git a/share/man/man4/gpioiic.4 b/share/man/man4/gpioiic.4
index f5cea830ead0..f5a8fba937e0 100644
--- a/share/man/man4/gpioiic.4
+++ b/share/man/man4/gpioiic.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2019
.Dt GPIOIIC 4
.Os
diff --git a/share/man/man4/gpiokeys.4 b/share/man/man4/gpiokeys.4
index 5af11cedb7e0..6d35c571697b 100644
--- a/share/man/man4/gpiokeys.4
+++ b/share/man/man4/gpiokeys.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2020 Andriy Gapon <avg@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 5, 2020
.Dt GPIOKEYS 4
.Os
diff --git a/share/man/man4/gpioled.4 b/share/man/man4/gpioled.4
index ca4bb591d0b2..646e2ff2a8f0 100644
--- a/share/man/man4/gpioled.4
+++ b/share/man/man4/gpioled.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 23, 2019
.Dt GPIOLED 4
.Os
diff --git a/share/man/man4/gpioths.4 b/share/man/man4/gpioths.4
index 2712d6c570e2..8b9c799238fc 100644
--- a/share/man/man4/gpioths.4
+++ b/share/man/man4/gpioths.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 8, 2019
.Dt GPIOTHS 4
.Os
diff --git a/share/man/man4/gre.4 b/share/man/man4/gre.4
index c44588cb9736..7f46e54e1207 100644
--- a/share/man/man4/gre.4
+++ b/share/man/man4/gre.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 21, 2020
.Dt GRE 4
.Os
diff --git a/share/man/man4/gve.4 b/share/man/man4/gve.4
new file mode 100644
index 000000000000..54e59b86108b
--- /dev/null
+++ b/share/man/man4/gve.4
@@ -0,0 +1,215 @@
+.\" SPDX-License-Identifier: BSD-3-Clause
+.\"
+.\" Copyright (c) 2023 Google LLC
+.\"
+.\" Redistribution and use in source and binary forms, with or without modification,
+.\" are permitted provided that the following conditions are met:
+.\"
+.\" 1. Redistributions of source code must retain the above copyright notice, this
+.\" list of conditions and the following disclaimer.
+.\"
+.\" 2. Redistributions in binary form must reproduce the above copyright notice,
+.\" this list of conditions and the following disclaimer in the documentation
+.\" and/or other materials provided with the distribution.
+.\"
+.\" 3. Neither the name of the copyright holder nor the names of its contributors
+.\" may be used to endorse or promote products derived from this software without
+.\" specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+.\" DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+.\" ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+.\" ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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 April 26, 2023
+.Dt GVE 4
+.Os
+.Sh NAME
+.Nm gve
+.Nd "Ethernet driver for Google Virtual NIC (gVNIC)"
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device gve"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+if_gve_load="YES"
+.Ed
+.Sh DESCRIPTION
+gVNIC is a virtual network interface designed specifically for Google Compute Engine (GCE).
+It is required to support per-VM Tier-1 networking performance, and for using certain VM shapes on GCE.
+.Pp
+.Nm
+is the driver for gVNIC.
+It supports the following features:
+.Pp
+.Bl -bullet -compact
+.It
+RX checksum offload
+.It
+TX chesksum offload
+.It
+TCP Segmentation Offload (TSO)
+.It
+Large Receive Offload (LRO) in software
+.It
+Jumbo frames
+.It
+Receive Side Scaling (RSS)
+.El
+.Pp
+For more information on configuring this device, see
+.Xr ifconfig 8 .
+.Sh HARDWARE
+.Nm
+binds to a single PCI device ID presented by gVNIC:
+.Pp
+.Bl -bullet -compact
+.It
+0x1AE0:0x0042
+.El
+.Sh DIAGNOSTICS
+The following messages are recorded during driver initialization:
+.Bl -diag
+.It "Enabled MSIX with %d vectors"
+.It "Configured device resources"
+.It "Successfully attached %s"
+.It "Deconfigured device resources"
+.El
+.Pp
+These messages are seen if driver initialization fails.
+Global (across-queues) allocation failures:
+.Bl -diag
+.It "Failed to configure device resources: err=%d"
+.It "No compatible queue formats"
+.It "Failed to allocate ifnet struct"
+.It "Failed to allocate admin queue mem"
+.It "Failed to alloc DMA mem for DescribeDevice"
+.It "Failed to allocate QPL page"
+.El
+.Pp
+irq and BAR allocation failures:
+.Bl -diag
+.It "Failed to acquire any msix vectors"
+.It "Tried to acquire %d msix vectors, got only %d"
+.It "Failed to setup irq %d for Tx queue %d "
+.It "Failed to setup irq %d for Rx queue %d "
+.It "Failed to allocate irq %d for mgmnt queue"
+.It "Failed to setup irq %d for mgmnt queue, err: %d"
+.It "Failed to allocate BAR0"
+.It "Failed to allocate BAR2"
+.It "Failed to allocate msix table"
+.El
+.Pp
+Rx queue-specific allocation failures:
+.Bl -diag
+.It "No QPL left for rx ring %d"
+.It "Failed to alloc queue resources for rx ring %d"
+.It "Failed to alloc desc ring for rx ring %d"
+.It "Failed to alloc data ring for rx ring %d"
+.El
+.Pp
+Tx queue-specific allocation failures:
+.Bl -diag
+.It "No QPL left for tx ring %d"
+.It "Failed to alloc queue resources for tx ring %d"
+.It "Failed to alloc desc ring for tx ring %d"
+.It "Failed to vmap fifo, qpl_id = %d"
+.El
+.El
+.Pp
+The following messages are recorded when the interface detach fails:
+.Bl -diag
+.It "Failed to deconfigure device resources: err=%d"
+.El
+.Pp
+If bootverbose is on, the following messages are recorded when the interface is being brought up:
+.Bl -diag
+.It "Created %d rx queues"
+.It "Created %d tx queues"
+.It "MTU set to %d"
+.El
+.Pp
+The following messages are recorded when the interface is being brought down:
+.Bl -diag
+.It "Destroyed %d rx queues"
+.It "Destroyed %d tx queues"
+.El
+.Pp
+These messages are seen if errors are encountered when bringing the interface up or down:
+.Bl -diag
+.It "Failed to destroy rxq %d, err: %d"
+.It "Failed to destroy txq %d, err: %d"
+.It "Failed to create rxq %d, err: %d"
+.It "Failed to create txq %d, err: %d"
+.It "Failed to set MTU to %d"
+.It "Invalid new MTU setting. new mtu: %d max mtu: %d min mtu: %d"
+.It "Cannot bring the iface up when detached"
+.It "Reached max number of registered pages %lu > %lu"
+.It "Failed to init lro for rx ring %d"
+.El
+.Pp
+These messages are seen if any admin queue command fails:
+.Bl -diag
+.It "AQ command(%u): failed with status %d"
+.It "AQ command(%u): unknown status code %d"
+.It "AQ commands timed out, need to reset AQ"
+.It "Unknown AQ command opcode %d"
+.El
+.Pp
+These messages are recorded when the device is being reset due to an error:
+.Bl -diag
+.It "Scheduling reset task!"
+.It "Waiting until admin queue is released."
+.It "Admin queue released"
+.El
+.Pp
+If it was the NIC that requested the reset, this message is recorded:
+.Bl -diag
+.It "Device requested reset"
+.El
+.Pp
+If the reset fails during the reinitialization phase, this message is recorded:
+.Bl -diag
+.It "Restore failed!"
+.El
+.Pp
+These two messages correspond to the NIC alerting the driver to link state changes:
+.Bl -diag
+.It "Device link is up."
+.It "Device link is down."
+.El
+.Pp
+Apart from these messages, the driver exposes per-queue packet and error counters as sysctl nodes.
+Global (across queues) counters can be read using
+.Xr netstat 8 .
+.Sh LIMITATIONS
+.Nm
+does not support the transmission of VLAN-tagged packets.
+All VLAN-tagged traffic is dropped.
+.Sh SUPPORT
+Please email gvnic-drivers@google.com with the specifics of the issue encountered.
+.El
+.Sh SEE ALSO
+.Xr ifconfig 8 ,
+.Xr netstat 8
+.Sh HISTORY
+The
+.Nm
+device driver first appeared in
+.Fx 14.0 .
+.Sh AUTHORS
+The
+.Nm
+driver was written by Google.
diff --git a/share/man/man4/h_ertt.4 b/share/man/man4/h_ertt.4
index d2673b4b8169..86ff2285c214 100644
--- a/share/man/man4/h_ertt.4
+++ b/share/man/man4/h_ertt.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 18, 2012
.Dt H_ERTT 4
.Os
diff --git a/share/man/man4/hconf.4 b/share/man/man4/hconf.4
index 944f3376b187..179d95a29832 100644
--- a/share/man/man4/hconf.4
+++ b/share/man/man4/hconf.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 18, 2021
.Dt HCONF 4
.Os
@@ -79,7 +77,7 @@ Default is 0.
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/hcons.4 b/share/man/man4/hcons.4
index 68a920fba9d8..6cdf0a7dc170 100644
--- a/share/man/man4/hcons.4
+++ b/share/man/man4/hcons.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 23, 2021
.Dt HCONS 4
.Os
@@ -89,7 +87,7 @@ input event device node.
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/hgame.4 b/share/man/man4/hgame.4
index addf14d9f5c5..3309833c1720 100644
--- a/share/man/man4/hgame.4
+++ b/share/man/man4/hgame.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 14, 2020
.Dt HGAME 4
.Os
@@ -93,13 +91,13 @@ input event device node.
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
.Nm
driver was written by
-.An Greg V Aq Mt greg@unrelenting.technology .
+.An Val Packett Aq Mt val@packett.cool .
.Pp
This manual page was written by
.An Vladimir Kondratyev Aq Mt wulf@FreeBSD.org .
diff --git a/share/man/man4/hidbus.4 b/share/man/man4/hidbus.4
index 1ce17d449002..f8ebaca8d659 100644
--- a/share/man/man4/hidbus.4
+++ b/share/man/man4/hidbus.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 14, 2020
.Dt HIDBUS 4
.Os
@@ -93,7 +91,7 @@ Default is 0.
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/hidquirk.4 b/share/man/man4/hidquirk.4
index aa78e189765c..6474f2a99661 100644
--- a/share/man/man4/hidquirk.4
+++ b/share/man/man4/hidquirk.4
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 16, 2020
.Dt HIDQUIRK 4
.Os
@@ -53,6 +51,8 @@ doesn't identify properly
mouse sends an unknown leading byte
.It HQ_MS_REVZ
mouse has Z-axis reversed
+.It HQ_MS_VENDOR_BTN
+mouse has buttons in vendor usage page
.It HQ_SPUR_BUT_UP
spurious mouse button up events
.It HQ_MT_TIMESTAMP
diff --git a/share/man/man4/hidraw.4 b/share/man/man4/hidraw.4
index c01b961e738d..4631e253c1ef 100644
--- a/share/man/man4/hidraw.4
+++ b/share/man/man4/hidraw.4
@@ -27,9 +27,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 1, 2018
+.Dd August 6, 2023
.Dt HIDRAW 4
.Os
.Sh NAME
@@ -65,9 +63,9 @@ calls:
.Xr uhid 4
\-compatible calls:
.Bl -tag -width indent
-.It Dv HID_GET_REPORT_ID Pq Vt int
+.It Dv HIDRAW_GET_REPORT_ID Pq Vt int
Get the report identifier used by this HID report.
-.It Dv HID_GET_REPORT_DESC Pq Vt "struct hidraw_gen_descriptor"
+.It Dv HIDRAW_GET_REPORT_DESC Pq Vt "struct hidraw_gen_descriptor"
Get the HID report descriptor.
Copies a maximum of
.Va hgd_maxlen
@@ -91,7 +89,7 @@ struct hidraw_gen_descriptor {
...
};
.Ed
-.It Dv HID_SET_IMMED Pq Vt int
+.It Dv HIDRAW_SET_IMMED Pq Vt int
Sets the device in a mode where each
.Xr read 2
will return the current value of the input report.
@@ -102,7 +100,7 @@ will only return the data that the device reports on its
interrupt pipe.
This call may fail if the device does not support
this feature.
-.It Dv HID_GET_REPORT Pq Vt "struct hidraw_gen_descriptor"
+.It Dv HIDRAW_GET_REPORT Pq Vt "struct hidraw_gen_descriptor"
Get a report from the device without waiting for data on
the interrupt pipe.
Copies a maximum of
@@ -126,7 +124,7 @@ The report data begins from the second byte.
For devices which do not use numbered reports, the report data begins at the
first byte.
This call may fail if the device does not support this feature.
-.It Dv HID_SET_REPORT Pq Vt "struct hidraw_gen_descriptor"
+.It Dv HIDRAW_SET_REPORT Pq Vt "struct hidraw_gen_descriptor"
Set a report in the device.
The
.Va hgd_report_type
@@ -147,6 +145,9 @@ The report data begins from the second byte.
For devices which do not use numbered reports, the report data begins at the
first byte.
This call may fail if the device does not support this feature.
+.It Dv HIDRAW_GET_DEVICEINFO Pq Vt "struct hidraw_device_info"
+Returns information about the device, like vendor ID and product ID.
+This call will not issue any hardware transfers.
.El
.Pp
Linux
diff --git a/share/man/man4/hifn.4 b/share/man/man4/hifn.4
index a9a06c1fbd91..22494fcb6c6d 100644
--- a/share/man/man4/hifn.4
+++ b/share/man/man4/hifn.4
@@ -24,8 +24,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 29, 2020
.Dt HIFN 4
.Os
diff --git a/share/man/man4/hkbd.4 b/share/man/man4/hkbd.4
index 400bf1d989cd..6e936b198618 100644
--- a/share/man/man4/hkbd.4
+++ b/share/man/man4/hkbd.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 12, 2020
.Dt HKBD 4
.Os
diff --git a/share/man/man4/hms.4 b/share/man/man4/hms.4
index f3e798dc43aa..1f9738db883d 100644
--- a/share/man/man4/hms.4
+++ b/share/man/man4/hms.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 12, 2020
.Dt HMS 4
.Os
diff --git a/share/man/man4/hmt.4 b/share/man/man4/hmt.4
index e5d0100c6b42..b2eb68d8672f 100644
--- a/share/man/man4/hmt.4
+++ b/share/man/man4/hmt.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 11, 2020
.Dt HMT 4
.Os
@@ -54,7 +52,7 @@ driver provides support for the MS Windows 7/8/10 - compatible HID
multi-touch devices found in many laptops.
.Pp
To get multi-touch device working in
-.Xr X 7 ,
+.Xr X 7 Pq Pa ports/x11/xorg-docs ,
install
.Pa ports/x11-drivers/xf86-input-evdev .
.Sh FILES
diff --git a/share/man/man4/hpen.4 b/share/man/man4/hpen.4
index a043169895ec..d3b69ff1b332 100644
--- a/share/man/man4/hpen.4
+++ b/share/man/man4/hpen.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 14, 2020
.Dt HPEN 4
.Os
@@ -100,13 +98,13 @@ Pen battery charge level reporting is not supported.
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
.Nm
driver was written by
-.An Greg V Aq Mt greg@unrelenting.technology .
+.An Val Packett Aq Mt val@packett.cool .
.Pp
This manual page was written by
.An Vladimir Kondratyev Aq Mt wulf@FreeBSD.org .
diff --git a/share/man/man4/hpet.4 b/share/man/man4/hpet.4
index f006cde20f61..684549dfb1fa 100644
--- a/share/man/man4/hpet.4
+++ b/share/man/man4/hpet.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 14, 2010
.Dt HPET 4
.Os
diff --git a/share/man/man4/hpt27xx.4 b/share/man/man4/hpt27xx.4
index 4ad5eaf1cffb..bec0c7110995 100644
--- a/share/man/man4/hpt27xx.4
+++ b/share/man/man4/hpt27xx.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 28, 2011
.Dt HPT27XX 4
.Os
diff --git a/share/man/man4/hptiop.4 b/share/man/man4/hptiop.4
index 6d4a4a45ae7e..7ab8cf983776 100644
--- a/share/man/man4/hptiop.4
+++ b/share/man/man4/hptiop.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 5, 2013
.Dt HPTIOP 4
.Os
diff --git a/share/man/man4/hptmv.4 b/share/man/man4/hptmv.4
index 240a32fb5505..75cf442bc07e 100644
--- a/share/man/man4/hptmv.4
+++ b/share/man/man4/hptmv.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 17, 2005
.Dt HPTMV 4
.Os
diff --git a/share/man/man4/hptnr.4 b/share/man/man4/hptnr.4
index 47b691874896..3e0e4e56450a 100644
--- a/share/man/man4/hptnr.4
+++ b/share/man/man4/hptnr.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 5, 2013
.Dt HPTNR 4
.Os
diff --git a/share/man/man4/hptrr.4 b/share/man/man4/hptrr.4
index 1f488f85c088..6f284ebab487 100644
--- a/share/man/man4/hptrr.4
+++ b/share/man/man4/hptrr.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 6, 2012
.Dt HPTRR 4
.Os
diff --git a/share/man/man4/hsctrl.4 b/share/man/man4/hsctrl.4
index e4a44ce11630..fa8ae897e64c 100644
--- a/share/man/man4/hsctrl.4
+++ b/share/man/man4/hsctrl.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 26, 2021
.Dt HSCTRL 4
.Os
@@ -89,7 +87,7 @@ input event device node.
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/htu21.4 b/share/man/man4/htu21.4
index 17fbfb64b3a0..81af7518b3a7 100644
--- a/share/man/man4/htu21.4
+++ b/share/man/man4/htu21.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 Andriy Gapon <avg@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 19, 2021
.Dt HTU21 4
.Os
diff --git a/share/man/man4/hv_kvp.4 b/share/man/man4/hv_kvp.4
index 9aaf985dcc25..db16b4bc2e66 100644
--- a/share/man/man4/hv_kvp.4
+++ b/share/man/man4/hv_kvp.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2012 Microsoft Corp.
.\" All rights reserved.
diff --git a/share/man/man4/hv_netvsc.4 b/share/man/man4/hv_netvsc.4
index a619332d2937..226fa016f695 100644
--- a/share/man/man4/hv_netvsc.4
+++ b/share/man/man4/hv_netvsc.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2012 Microsoft Corp.
.\" All rights reserved.
diff --git a/share/man/man4/hv_storvsc.4 b/share/man/man4/hv_storvsc.4
index 0941703180c7..dc77a822757f 100644
--- a/share/man/man4/hv_storvsc.4
+++ b/share/man/man4/hv_storvsc.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2012 Microsoft Corp.
.\" All rights reserved.
@@ -63,7 +62,7 @@ driver.
The VSP in the root partition then forwards the storage related requests to
the physical storage device.
.Pp
-This driver functions by presenting a SCSI HBA interface to the Comman Access
+This driver functions by presenting a SCSI HBA interface to the Common Access
Method (CAM) layer.
CAM control blocks (CCBs) are
converted into VSCSI protocol messages which are delivered to the root
diff --git a/share/man/man4/hv_utils.4 b/share/man/man4/hv_utils.4
index e0053788b118..ae0a40aa780f 100644
--- a/share/man/man4/hv_utils.4
+++ b/share/man/man4/hv_utils.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2012 Microsoft Corp.
.\" All rights reserved.
diff --git a/share/man/man4/hv_vmbus.4 b/share/man/man4/hv_vmbus.4
index eb661b8c26e4..f4602c7642a6 100644
--- a/share/man/man4/hv_vmbus.4
+++ b/share/man/man4/hv_vmbus.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2012 Microsoft Corp.
.\" All rights reserved.
diff --git a/share/man/man4/hv_vss.4 b/share/man/man4/hv_vss.4
index 0ed1b1bf9217..33c7c2abb3c1 100644
--- a/share/man/man4/hv_vss.4
+++ b/share/man/man4/hv_vss.4
@@ -21,8 +21,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd October 12, 2016
.Dt HV_VSS 4
.Os
@@ -92,7 +90,7 @@ In addition, there is a default timeout limit before sending response to Hyper-V
If the total response time from application and
.Xr hv_vss_daemon 8
exceeds this value, timeout
-will occurs and VSS unsupported is responsed to Hyper-V host.
+will occur and VSS unsupported is responded to Hyper-V host.
.Pp
After Hyper-V host confirmed the
.Fx
diff --git a/share/man/man4/hwpmc.4 b/share/man/man4/hwpmc.4
index 806c2ee701c5..54a251dcca76 100644
--- a/share/man/man4/hwpmc.4
+++ b/share/man/man4/hwpmc.4
@@ -1,10 +1,12 @@
.\" Copyright (c) 2003-2008 Joseph Koshy
-.\" Copyright (c) 2007 The FreeBSD Foundation
-.\" All rights reserved.
+.\" Copyright (c) 2007,2023 The FreeBSD Foundation
.\"
.\" Portions of this software were developed by A. Joseph Koshy under
.\" sponsorship from the FreeBSD Foundation and Google, Inc.
.\"
+.\" Portions of this documentation were written by Mitchell Horne
+.\" under sponsorship from the FreeBSD Foundation.
+.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
@@ -26,20 +28,43 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 3, 2021
+.Dd July 8, 2023
.Dt HWPMC 4
.Os
.Sh NAME
.Nm hwpmc
.Nd "Hardware Performance Monitoring Counter support"
.Sh SYNOPSIS
+The following option must be present in the kernel configuration file:
+.Bd -ragged -offset indent
.Cd "options HWPMC_HOOKS"
-.Cd "device hwpmc"
+.Ed
.Pp
Additionally, for i386 systems:
+.Bd -ragged -offset indent
.Cd "device apic"
+.Ed
+.Pp
+To load the driver as a module at boot time:
+.Bd -literal -offset indent
+sysrc kld_list+=hwpmc
+.Ed
+.Pp
+Alternatively, to compile the driver into the kernel:
+.Bd -ragged -offset indent
+.Cd "device hwpmc"
+.Ed
+.Pp
+To enable debugging features
+.Po see
+.Sx DEBUGGING
+.Pc :
+.Bd -ragged -offset indent
+.Cd "options KTR"
+.Cd "options KTR_COMPILE=(KTR_SUBSYS)"
+.Cd "options KTR_MASK=(KTR_SUBSYS)"
+.Cd "options HWPMC_DEBUG"
+.Ed
.Sh DESCRIPTION
The
.Nm
@@ -265,14 +290,15 @@ Non-disabled hardware counters in such a row may be used
for satisfying system scope allocation requests.
No process scope PMCs will use hardware counters in this row.
.El
-.Sh PROGRAMMING API
-The recommended way for application programs to use the facilities of
-the
-.Nm
-driver is using the API provided by the
+.Sh COMPATIBILITY
+The API and ABI documented in this manual page may change in the future.
+This interface is intended to be consumed by the
.Xr pmc 3
-library.
-.Pp
+library; other consumers are unsupported.
+Applications targeting PMCs should use the
+.Xr pmc 3
+library API.
+.Sh PROGRAMMING API
The
.Nm
driver operates using a system call number that is dynamically
@@ -473,28 +499,6 @@ PMCs, then the
driver will reject allocation requests for process-private PMCs that
request counting of hardware events that cannot be counted separately
for each logical CPU.
-.Ss Intel Pentium-Pro Handling
-Writing a value to the PMC MSRs found in Intel Pentium-Pro style PMCs
-(found in
-.Tn "Intel Pentium Pro" ,
-.Tn "Pentium II" ,
-.Tn "Pentium III" ,
-.Tn "Pentium M"
-and
-.Tn "Celeron"
-processors) will replicate bit 31 of the
-value being written into the upper 8 bits of the MSR,
-bringing down the usable width of these PMCs to 31 bits.
-For process-virtual PMCs, the
-.Nm
-driver implements a workaround in software and makes the corrected 64
-bit count available via the
-.Dv PMC_OP_RW
-operation.
-Processes that intend to use RDPMC instructions directly or
-that intend to write values larger than 2^31 into these PMCs with
-.Dv PMC_OP_RW
-need to be aware of this hardware limitation.
.Sh DIAGNOSTICS
.Bl -diag
.It "hwpmc: [class/npmc/capabilities]..."
@@ -525,16 +529,126 @@ The value for tunable
.Va kern.hwpmc.nsamples
was negative or greater than 65535.
.El
-.Sh COMPATIBILITY
+.Sh DEBUGGING
The
.Nm
-driver is
-.Ud
-The API and ABI documented in this manual page may change in
-the future.
-The recommended method of accessing this driver is using the
-.Xr pmc 3
-API.
+module can be configured to record trace entries using the
+.Xr ktr 4
+interface.
+This is useful for debugging the driver's functionality, primarily during
+development.
+This debugging functionality is not enabled by default, and requires
+recompiling the kernel and
+.Nm
+module after adding the following to the kernel config:
+.Bd -literal -offset indent
+.Cd options KTR
+.Cd options KTR_COMPILE=(KTR_SUBSYS)
+.Cd options KTR_MASK=(KTR_SUBSYS)
+.Cd options HWPMC_DEBUG
+.Ed
+.Pp
+This alone is not enough to enable tracing; one must also configure the
+.Va kern.hwpmc.debugflags
+.Xr sysctl 8
+variable, which provides fine-grained control over which types of events are
+logged to the trace buffer.
+.Pp
+.Nm
+trace events are grouped by 'major' and 'minor' flag types.
+The major flag names are as follows:
+.Pp
+.Bl -tag -width "sampling" -compact -offset indent
+.It cpu
+CPU events
+.It csw
+Context switch events
+.It logging
+Logging events
+.It md
+Machine-dependent/class-dependent events
+.It module
+Miscellaneous events
+.It owner
+PMC owner events
+.It pmc
+PMC management events
+.It process
+Process events
+.It sampling
+Sampling events
+.El
+.Pp
+The minor flags for each major flag group can vary.
+The individual minor flag names are:
+.Bd -ragged -offset indent
+allocaterow,
+allocate,
+attach,
+bind,
+config,
+exec,
+exit,
+find,
+flush,
+fork,
+getbuf,
+hook,
+init,
+intr,
+linktarget,
+mayberemove,
+ops,
+read,
+register,
+release,
+remove,
+sample,
+scheduleio,
+select,
+signal,
+swi,
+swo,
+start,
+stop,
+syscall,
+unlinktarget,
+write
+.Ed
+.Pp
+The
+.Va kern.hwpmc.debugflags
+variable is a string with a custom format.
+The string should contain a space-separated list of event specifiers.
+Each event specifier consists of the major flag name, followed by an equal sign
+(=), followed by a comma-separated list of minor event types.
+To track all events for a major group, an asterisk (*) can be given instead of
+minor event names.
+.Pp
+For example, to trace all allocation and release events, set
+.Va debugflags
+as follows:
+.Bd -literal -offset indent
+kern.hwpmc.debugflags="pmc=allocate,release md=allocate,release"
+.Ed
+.Pp
+To trace all events in the process and context switch major flag groups:
+.Bd -literal -offset indent
+kern.hwpmc.debugflags="process=* csw=*"
+.Ed
+.Pp
+To disable all trace events, set the variable to an empty string.
+.Bd -literal -offset indent
+kern.hwpmc.debugflags=""
+.Ed
+.Pp
+Trace events are recorded by
+.Xr ktr 4 ,
+and can be inspected at run-time using the
+.Xr ktrdump 8
+utility, or at the
+.Xr ddb 4
+prompt after a panic with the 'show ktr' command.
.Sh ERRORS
A command issued to the
.Nm
@@ -598,6 +712,12 @@ An invalid CPU number was passed in for a
.Dv PMC_OP_GETPMCINFO
operation.
.It Bq Er EINVAL
+The
+.Ar pm_flags
+argument to a
+.Dv PMC_OP_CONFIGURELOG
+request contained unknown flags.
+.It Bq Er EINVAL
A
.Dv PMC_OP_CONFIGURELOG
request to de-configure a log file was issued without a log file
@@ -760,7 +880,10 @@ operation is not being monitored by
.Xr kenv 1 ,
.Xr pmc 3 ,
.Xr pmclog 3 ,
+.Xr ddb 4 ,
+.Xr ktr 4 ,
.Xr kldload 8 ,
+.Xr ktrdump 8 ,
.Xr pmccontrol 8 ,
.Xr pmcstat 8 ,
.Xr sysctl 8 ,
diff --git a/share/man/man4/hwpstate_intel.4 b/share/man/man4/hwpstate_intel.4
index 4664dff8c264..5b9fbede855f 100644
--- a/share/man/man4/hwpstate_intel.4
+++ b/share/man/man4/hwpstate_intel.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 21, 2020
.Dt HWPSTATE_INTEL 4
.Os
diff --git a/share/man/man4/i2ctinyusb.4 b/share/man/man4/i2ctinyusb.4
new file mode 100644
index 000000000000..78169a0506ff
--- /dev/null
+++ b/share/man/man4/i2ctinyusb.4
@@ -0,0 +1,85 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2024 Denis Bodor <dbodor@rollmops.ninja>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 February 18, 2024
+.Dt I2CTINYUSB 4
+.Os
+.Sh NAME
+.Nm i2ctinyusb
+.Nd driver for a USB / I2C bridge device
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device i2ctinyusb"
+.Cd "device usb"
+.Cd "device iicbus"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+i2ctinyusb_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the device designed by Till Harbaum known
+as i2c-tiny-usb. This is initially a very simple circuit built with
+an Atmel AVR ATtiny45, but a Raspberry Pi Pico (RP2040) implementation
+also exists.
+.Pp
+The
+.Nm
+driver creates a
+.Xr iicbus 4
+child bus to expose the iic functions, enabling I2C sensors, converters
+and displays to be connected to any computer with a USB port.
+.Pp
+More information about this device can be found at:
+.Bd -literal -offset indent
+https://github.com/harbaum/I2C-Tiny-USB
+.Ed
+.Pp
+and (for the Raspberry Pi Pico version):
+.Bd -literal -offset indent
+https://github.com/Nicolai-Electronics/rp2040-i2c-interface
+.Ed
+.Pp
+The I2C controller supports read and write transactions with up to 1024
+bytes of data, and a write followed by the repeated start followed by a
+read transactions up to 1024 bytes.
+Zero length transfers are not supported.
+.Sh SEE ALSO
+.Xr iicbus 4 ,
+.Xr usb 4
+.Sh HISTORY
+The
+.Nm
+driver and this manual page was written by
+.An Denis Bodor Aq Mt dbodor@rollmops.ninja .
diff --git a/share/man/man4/iavf.4 b/share/man/man4/iavf.4
index c870284f2836..2e265a5a2fbb 100644
--- a/share/man/man4/iavf.4
+++ b/share/man/man4/iavf.4
@@ -29,8 +29,6 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 30, 2019
.Dt IAVF 4
.Os
diff --git a/share/man/man4/ichsmb.4 b/share/man/man4/ichsmb.4
index 7cb94a84fa47..95b645b1b4ec 100644
--- a/share/man/man4/ichsmb.4
+++ b/share/man/man4/ichsmb.4
@@ -32,8 +32,6 @@
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd July 20, 2016
.Dt ICHSMB 4
.Os
diff --git a/share/man/man4/ichwd.4 b/share/man/man4/ichwd.4
index 35a5f7f1a6e4..cc6924f7f866 100644
--- a/share/man/man4/ichwd.4
+++ b/share/man/man4/ichwd.4
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2007 Dag-Erling Coïdan Smørgrav
+.\" Copyright (c) 2007 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 20, 2008
.Dt ICHWD 4
.Os
diff --git a/share/man/man4/icmp.4 b/share/man/man4/icmp.4
index 6836c614dfaf..7bc844edd3c0 100644
--- a/share/man/man4/icmp.4
+++ b/share/man/man4/icmp.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)icmp.4 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd August 1, 2022
.Dt ICMP 4
.Os
diff --git a/share/man/man4/icmp6.4 b/share/man/man4/icmp6.4
index c2ef91389b0b..8730e3fefacb 100644
--- a/share/man/man4/icmp6.4
+++ b/share/man/man4/icmp6.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 1, 2018
.Dt ICMP6 4
.Os
diff --git a/share/man/man4/ida.4 b/share/man/man4/ida.4
index 9257496aef44..9c18994d1d7c 100644
--- a/share/man/man4/ida.4
+++ b/share/man/man4/ida.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" Written by Tom Rhodes
.\" This file is public domain
.\"
diff --git a/share/man/man4/ietp.4 b/share/man/man4/ietp.4
index f8dc33132609..7c6c9eab4cae 100644
--- a/share/man/man4/ietp.4
+++ b/share/man/man4/ietp.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 27, 2022
.Dt IETP 4
.Os
@@ -56,7 +54,7 @@ driver provides support for the Elantech I2C touchpad multi-touch devices
found in many laptops.
.Pp
To get multi-touch device working in
-.Xr X 7 ,
+.Xr X 7 Pq Pa ports/x11/xorg-docs ,
install
.Pa ports/x11-drivers/xf86-input-libinput .
.Sh FILES
diff --git a/share/man/man4/if_ipsec.4 b/share/man/man4/if_ipsec.4
index 2e978c0cdb94..bd3ef5a29591 100644
--- a/share/man/man4/if_ipsec.4
+++ b/share/man/man4/if_ipsec.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 6, 2017
.Dt if_ipsec 4
.Os
diff --git a/share/man/man4/if_ntb.4 b/share/man/man4/if_ntb.4
index 5629eb4fe4b4..62638d02c59d 100644
--- a/share/man/man4/if_ntb.4
+++ b/share/man/man4/if_ntb.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 2, 2017
.Dt IF_NTB 4
.Os
diff --git a/share/man/man4/iflib.4 b/share/man/man4/iflib.4
index 4fea2676ece6..0114263e6ca2 100644
--- a/share/man/man4/iflib.4
+++ b/share/man/man4/iflib.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.Dd September 27, 2018
.Dt IFLIB 4
.Os
@@ -140,7 +139,7 @@ no available space.
Number of entries which have been enqueued to the MP ring for this queue.
.It Va ring_state
MP (soft) ring state.
-This privides a snapshot of the current MP ring state, including the producer
+This provides a snapshot of the current MP ring state, including the producer
head and tail indexes, the consumer index, and the state.
The state is one of "IDLE", "BUSY",
"STALLED", or "ABDICATED".
diff --git a/share/man/man4/ifmib.4 b/share/man/man4/ifmib.4
index 9ebdc59e461a..20b5613b6873 100644
--- a/share/man/man4/ifmib.4
+++ b/share/man/man4/ifmib.4
@@ -25,8 +25,6 @@
.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2020
.Dt IFMIB 4
.Os
diff --git a/share/man/man4/ig4.4 b/share/man/man4/ig4.4
index 8220c0da0ffb..67bad68dfcc6 100644
--- a/share/man/man4/ig4.4
+++ b/share/man/man4/ig4.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 13, 2018
.Dt IG4 4
.Os
diff --git a/share/man/man4/igc.4 b/share/man/man4/igc.4
index 9c80b3e1c4d3..cf36e584a679 100644
--- a/share/man/man4/igc.4
+++ b/share/man/man4/igc.4
@@ -3,9 +3,7 @@
.\" Copyright 2021 Rubicon Communications, LLC (Netgate)
.\" SPDX-License-Identifier: BSD-3-Clause
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 10, 2021
+.Dd January 9, 2023
.Dt IGC 4
.Os
.Sh NAME
@@ -120,10 +118,6 @@ maximum delay in which a transmit interrupt is generated.
.It Va hw.igc.sbp
Show bad packets when in promiscuous mode.
Default is false.
-.It Va hw.igc.rx_process_limit
-Maximum number of received packets to process at a time.
-Default is 100.
-A value of -1 means unlimited.
.It Va hw.igc.eee_setting
Disable or enable Energy Efficient Ethernet.
Default 1 (disabled).
@@ -153,7 +147,7 @@ address.
The
.Nm
device driver first appeared in
-.Fx 14.0 .
+.Fx 13.1 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/igmp.4 b/share/man/man4/igmp.4
index 2e820483a067..c395be0f2a53 100644
--- a/share/man/man4/igmp.4
+++ b/share/man/man4/igmp.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 9, 2009
.Dt IGMP 4
.Os
diff --git a/share/man/man4/iic.4 b/share/man/man4/iic.4
index 77a8177e5d1b..ddabb073c092 100644
--- a/share/man/man4/iic.4
+++ b/share/man/man4/iic.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 15, 2015
.Dt IIC 4
.Os
diff --git a/share/man/man4/iic_gpiomux.4 b/share/man/man4/iic_gpiomux.4
index fe660b006b72..d6ebb35bbdcd 100644
--- a/share/man/man4/iic_gpiomux.4
+++ b/share/man/man4/iic_gpiomux.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 1, 2020
.Dt IIC_GPIOMUX 4
.Os
diff --git a/share/man/man4/iicbb.4 b/share/man/man4/iicbb.4
index e048c5d9bc75..d446b4d57eb0 100644
--- a/share/man/man4/iicbb.4
+++ b/share/man/man4/iicbb.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 25, 1998
.Dt IICBB 4
.Os
diff --git a/share/man/man4/iicbus.4 b/share/man/man4/iicbus.4
index b96e6eb2ab9b..8f0af2488a07 100644
--- a/share/man/man4/iicbus.4
+++ b/share/man/man4/iicbus.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 7, 2021
.Dt IICBUS 4
.Os
diff --git a/share/man/man4/iichid.4 b/share/man/man4/iichid.4
index 526a6f444440..02a91d7811a2 100644
--- a/share/man/man4/iichid.4
+++ b/share/man/man4/iichid.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 21, 2020
.Dt IICHID 4
.Os
@@ -76,13 +74,13 @@ In that case
.Nm
enables sampling mode with periodic polling of hardware by driver means.
See dev.iichid.*.sampling_*
-.Xr sysctl 4
+.Xr sysctl 8
variables for tuning of sampling parameters.
.Sh HISTORY
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/iicmux.4 b/share/man/man4/iicmux.4
index 981285052547..878d9d640a1e 100644
--- a/share/man/man4/iicmux.4
+++ b/share/man/man4/iicmux.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 1, 2020
.Dt IICMUX 4
.Os
diff --git a/share/man/man4/iicsmb.4 b/share/man/man4/iicsmb.4
index 4fdf6d497b8c..b6f5e39ce5cc 100644
--- a/share/man/man4/iicsmb.4
+++ b/share/man/man4/iicsmb.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 10, 1998
.Dt IICSMB 4
.Os
diff --git a/share/man/man4/imcsmb.4 b/share/man/man4/imcsmb.4
index b1acb8bca00d..4a8f9e503e70 100644
--- a/share/man/man4/imcsmb.4
+++ b/share/man/man4/imcsmb.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2018 Panasas
.\"
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 2, 2018
.Dt IMCSMB 4
.Os
diff --git a/share/man/man4/inet.4 b/share/man/man4/inet.4
index 31c80feecfaa..a12dec49caea 100644
--- a/share/man/man4/inet.4
+++ b/share/man/man4/inet.4
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" From: @(#)inet.4 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
-.Dd August 1, 2022
+.Dd September 8, 2022
.Dt INET 4
.Os
.Sh NAME
@@ -186,6 +183,8 @@ Defaults to off.
.It Va fragpackets
Integer: Current number of IPv4 fragment reassembly queue entries
for the VNET (read-only).
+.It Va fragttl
+Integer: time to live for IPv4 packet fragments in the per-VNET reassemby queue.
.It Va loopback_prefixlen
Integer: prefix length of the address space reserved for loopback purposes.
The default is 8, meaning that 127.0.0.0/8 is reserved for loopback,
@@ -278,6 +277,8 @@ The number must be between 512 and 32768 inclusive.
This is a per-VNET value.
.It Va random_id_total
Integer: count of IP IDs created (read-only, per-VNET).
+.It Va reass_hashsize
+Number of hash slots in the IPv4 reassembly queue (loader tunable).
.It Va redirect
Boolean: enable/disable sending of ICMP redirects in response to
.Tn IP
diff --git a/share/man/man4/inet6.4 b/share/man/man4/inet6.4
index 87c57ea2c3d2..21bae5255d66 100644
--- a/share/man/man4/inet6.4
+++ b/share/man/man4/inet6.4
@@ -27,9 +27,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 12, 2021
+.Dd February 22, 2023
.Dt INET6 4
.Os
.Sh NAME
@@ -185,7 +183,9 @@ The
.Tn ICMPv6
message protocol is accessible from a raw socket.
.Ss MIB Variables
-A number of variables are implemented in the net.inet6 branch of the
+A number of variables are implemented in the
+.Va net.inet6
+branch of the
.Xr sysctl 3
MIB.
In addition to the variables supported by the transport protocols
@@ -341,6 +341,11 @@ mapped address on
.Dv AF_INET6
sockets.
Defaults to on.
+.It Va ip6.log_cannot_forward
+Boolean: log packets that can't be forwarded because of unspecified source
+address or destination address beyond the scope of the source address as
+described in RFC4443.
+Enabled by default.
.It Va ip6.source_address_validation
Boolean: perform source address validation for packets destined for the local
host.
@@ -440,6 +445,15 @@ sockets.
.Xr ip6 4 ,
.Xr tcp 4 ,
.Xr udp 4
+.Rs
+.%A A. Conta
+.%A S. Deering
+.%A M. Gupta
+.%T "Internet Control Message Protocol (ICMPv6) for the Internet" \
+ "Protocol Version 6 (IPv6) Specification"
+.%R RFC 4443
+.%D March 2006
+.Re
.Sh STANDARDS
.Rs
.%A Tatsuya Jinmei
diff --git a/share/man/man4/intpm.4 b/share/man/man4/intpm.4
index 4ece9359c03f..d4b0195621aa 100644
--- a/share/man/man4/intpm.4
+++ b/share/man/man4/intpm.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 22, 2016
.Dt INTPM 4
.Os
diff --git a/share/man/man4/intro.4 b/share/man/man4/intro.4
index dd5f1cada82d..9b22e89ff6c3 100644
--- a/share/man/man4/intro.4
+++ b/share/man/man4/intro.4
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 3, 2019
.Dt INTRO 4
.Os
diff --git a/share/man/man4/io.4 b/share/man/man4/io.4
index fa1c3f1d25c7..fa989f6498b7 100644
--- a/share/man/man4/io.4
+++ b/share/man/man4/io.4
@@ -25,8 +25,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 1, 2010
.Dt IO 4
.Os
diff --git a/share/man/man4/ioat.4 b/share/man/man4/ioat.4
index 3808945532b4..deef466c0ae0 100644
--- a/share/man/man4/ioat.4
+++ b/share/man/man4/ioat.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 3, 2016
.Dt IOAT 4
.Os
diff --git a/share/man/man4/ip.4 b/share/man/man4/ip.4
index d1c3b34b51a6..c52715a43380 100644
--- a/share/man/man4/ip.4
+++ b/share/man/man4/ip.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)ip.4 8.2 (Berkeley) 11/30/93
-.\" $FreeBSD$
-.\"
.Dd August 9, 2021
.Dt IP 4
.Os
@@ -91,7 +88,7 @@ setsockopt(s, IPPROTO_IP, IP_OPTIONS, NULL, 0);
.Pp
.Dv IP_TOS
may be used to set the differential service codepoint (DSCP) and the
-explicit congestion notfication (ECN) codepoint.
+explicit congestion notification (ECN) codepoint.
Setting the ECN codepoint - the two least significant bits - on a
socket using a transport protocol implementing ECN has no effect.
.Pp
@@ -230,7 +227,7 @@ The socket should be either bound to
.Dv INADDR_ANY
and a local port, and the address supplied with
.Dv IP_SENDSRCADDR
-should't be
+shouldn't be
.Dv INADDR_ANY ,
or the socket should be bound to a local address and the address supplied with
.Dv IP_SENDSRCADDR
@@ -453,21 +450,6 @@ In scenarios such as benchmarking, this behavior may be undesirable.
In these cases,
.Va net.inet.ip.portrange.randomized
can be used to toggle randomization off.
-If more than
-.Va net.inet.ip.portrange.randomcps
-ports have been allocated in the last second, then return to sequential
-port allocation.
-Return to random allocation only once the current port allocation rate
-drops below
-.Va net.inet.ip.portrange.randomcps
-for at least
-.Va net.inet.ip.portrange.randomtime
-seconds.
-The default values for
-.Va net.inet.ip.portrange.randomcps
-and
-.Va net.inet.ip.portrange.randomtime
-are 10 port allocations per second and 45 seconds correspondingly.
.Ss "Multicast Options"
.Tn IP
multicasting is supported only on
diff --git a/share/man/man4/ip6.4 b/share/man/man4/ip6.4
index 9dd9007866a2..ce756854a47d 100644
--- a/share/man/man4/ip6.4
+++ b/share/man/man4/ip6.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 2022
.Dt IP6 4
.Os
@@ -229,7 +227,7 @@ Get or set whether a datagram's original destination address and port are
returned as ancillary data along with the payload in subsequent
.Xr recvmsg 2
calls.
-The information is stored in the the ancillary data as a
+The information is stored in the ancillary data as a
.Tn sockaddr_in6
structure.
.It Dv IPV6_PORTRANGE Fa "int *"
diff --git a/share/man/man4/ipfirewall.4 b/share/man/man4/ipfirewall.4
index 981cefda8273..bfc571bcb595 100644
--- a/share/man/man4/ipfirewall.4
+++ b/share/man/man4/ipfirewall.4
@@ -1,6 +1,4 @@
.\"
-.\" $FreeBSD$
-.\"
.Dd August 19, 2020
.Dt IPFW 4
.Os
diff --git a/share/man/man4/ipheth.4 b/share/man/man4/ipheth.4
index cedd60a3469a..85726dd6b30c 100644
--- a/share/man/man4/ipheth.4
+++ b/share/man/man4/ipheth.4
@@ -25,8 +25,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 29, 2022
.Dt IPHETH 4
.Os
diff --git a/share/man/man4/ipmi.4 b/share/man/man4/ipmi.4
index f908911378da..0d2e32c01470 100644
--- a/share/man/man4/ipmi.4
+++ b/share/man/man4/ipmi.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 25, 2017
.Dt IPMI 4
.Os
diff --git a/share/man/man4/ips.4 b/share/man/man4/ips.4
index ece0bc37ba8f..134e87dfef29 100644
--- a/share/man/man4/ips.4
+++ b/share/man/man4/ips.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 7, 2009
.Dt IPS 4
.Os
diff --git a/share/man/man4/ipsec.4 b/share/man/man4/ipsec.4
index 9bee93153a54..c5c9ed863385 100644
--- a/share/man/man4/ipsec.4
+++ b/share/man/man4/ipsec.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 6, 2017
.Dt IPSEC 4
.Os
diff --git a/share/man/man4/ipw.4 b/share/man/man4/ipw.4
index 71ce5752836f..c1010b798290 100644
--- a/share/man/man4/ipw.4
+++ b/share/man/man4/ipw.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 15, 2015
.Dt IPW 4
.Os
diff --git a/share/man/man4/ipwfw.4 b/share/man/man4/ipwfw.4
index 810fe2a32383..df1f1b776861 100644
--- a/share/man/man4/ipwfw.4
+++ b/share/man/man4/ipwfw.4
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 15, 2015
.Dt IPWFW 4
.Os
diff --git a/share/man/man4/irdma.4 b/share/man/man4/irdma.4
index c8da2ad795dd..b7b78a08533c 100644
--- a/share/man/man4/irdma.4
+++ b/share/man/man4/irdma.4
@@ -29,8 +29,6 @@
.\" CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
.\" SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 30, 2022
.Dt IRDMA 4
.Os
@@ -39,8 +37,8 @@
.Nd RDMA FreeBSD driver for Intel(R) Ethernet Controller E810
.Sh SYNOPSIS
This module relies on
-.Xr if_ice 4
-.Bl -tag -nested-width indent
+.Xr ice 4
+.Bl -tag -width indent
.It The following kernel options should be included in the configuration:
.Cd options OFED
.Cd options OFED_DEBUG_INIT
@@ -52,8 +50,9 @@ This module relies on
.Ss Features
The
.Nm
-driver provides RDMA protocol support on RDMA-capable Intel Ethernet 800 Series NICs which are supported by
-.Xr if_ice 4
+driver provides RDMA protocol support on RDMA-capable Intel Ethernet 800 Series
+NICs which are supported by
+.Xr ice 4
.
.Pp
The driver supports both iWARP and RoCEv2 protocols.
@@ -66,48 +65,65 @@ prompt before booting the kernel or stored in
.Bl -tag -width indent
.It Va dev.irdma<interface_number>.roce_enable
enables RoCEv2 protocol usage on <interface_numer> interface.
-.Pp By default RoCEv2 protocol is used.
+.Pp
+By default RoCEv2 protocol is used.
.It Va dev.irdma<interface_number>.dcqcn_cc_cfg_valid
-indicates that all DCQCN parameters are valid and should be updated in registers or QP context.
+indicates that all DCQCN parameters are valid and should be updated in
+registers or QP context.
.Pp
-Setting this parameter to 1 means that settings in
-.Em dcqcn_min_dec_factor, dcqcn_min_rate_MBps, dcqcn_F, dcqcn_T,
-.Em dcqcn_B, dcqcn_rai_factor, dcqcn_hai_factor, dcqcn_rreduce_mperiod
-are taken into account. Otherwise default values are used.
+Setting this parameter to 1 means that settings in
+.Em dcqcn_min_dec_factor , dcqcn_min_rate_MBps , dcqcn_F , dcqcn_T ,
+.Em dcqcn_B, dcqcn_rai_factor, dcqcn_hai_factor, dcqcn_rreduce_mperiod
+are taken into account.
+Otherwise default values are used.
.Pp
Note: "roce_enable" must also be set for this tunable to take effect.
.It Va dev.irdma<interface_number>.dcqcn_min_dec_factor
-The minimum factor by which the current transmit rate can be changed when processing a CNP. Value is given as a percentage (1-100).
+The minimum factor by which the current transmit rate can be changed when
+processing a CNP.
+Value is given as a percentage (1-100).
.Pp
-Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable to take effect.
+Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable
+to take effect.
.It Va dev.irdma<interface_number>.dcqcn_min_rate_MBps
The minimum value, in Mbits per second, for rate to limit.
.Pp
-Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable to take effect.
+Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable
+to take effect.
.It Va dev.irdma<interface_number>.dcqcn_F
The number of times to stay in each stage of bandwidth recovery.
.Pp
-Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable to take effect.
+Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable
+to take effect.
.It Va dev.irdma<interface_number>.dcqcn_T
-The number of microseconds that should elapse before increasing the CWND in DCQCN mode.
+The number of microseconds that should elapse before increasing the CWND
+in DCQCN mode.
.Pp
-Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable to take effect.
+Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable
+to take effect.
.It Va dev.irdma<interface_number>.dcqcn_B
The number of bytes to transmit before updating CWND in DCQCN mode.
.Pp
-Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable to take effect.
+Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable
+to take effect.
.It Va dev.irdma<interface_number>.dcqcn_rai_factor
The number of MSS to add to the congestion window in additive increase mode.
.Pp
-Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable to take effect.
+Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable
+to take effect.
.It Va dev.irdma<interface_number>.dcqcn_hai_factor
The number of MSS to add to the congestion window in hyperactive increase mode.
.Pp
-Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable to take effect.
+Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable
+to take effect.
.It Va dev.irdma<interface_number>.dcqcn_rreduce_mperiod
-The minimum time between 2 consecutive rate reductions for a single flow. Rate reduction will occur only if a CNP is received during the relevant time interval.
+The minimum time between 2 consecutive rate reductions for a single flow.
+Rate reduction will occur only if a CNP is received during the relevant time
+interval.
.Pp
-Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable to take effect.
+Note: "roce_enable" and "dcqcn_cc_cfg_valid" must also be set for this tunable
+to take effect.
+.El
.Ss SYSCTL PROCEDURES
Sysctl controls are available for runtime adjustments.
.Bl -tag -width indent
@@ -120,64 +136,60 @@ enables the DCQCN algorithm for RoCEv2.
.Pp
Note: "roce_enable" must also be set for this sysctl to take effect.
.Pp
-Note: The change may be set at any time, but it will be applied only to newly created QPs.
+Note: The change may be set at any time, but it will be applied only to newly
+created QPs.
+.El
.Ss TESTING
.Bl -enum
.It
To load the irdma driver, run:
-.Bl -tag -width indent
-.It
+.Bd -literal -offset indent
kldload irdma
-.El
-If if_ice is not already loaded, the system will load it on its own. Please check whether the value of sysctl
+.Ed
+If if_ice is not already loaded, the system will load it on its own.
+Please check whether the value of sysctl
.Va hw.ice.irdma
-is 1, if the irdma driver is not loading. To change the value put:
-.Bl -tag -width indent
-.It
+is 1, if the irdma driver is not loading.
+To change the value put:
+.Bd -literal -offset indent
hw.ice.irdma=1
-.El
-to
+.Ed
+in
.Pa /boot/loader.conf
and reboot.
.It
To check that the driver was loaded, run:
-.Bl -tag -width indent
-.It
+.Bd -literal -offset indent
sysctl -a | grep infiniband
-.El
+.Ed
Typically, if everything goes well, around 190 entries per PF will appear.
.It
-Each interface of the card may work in either iWARP or RoCEv2 mode. To enable RoCEv2 compatibility, add:
-.Bl -tag -width indent
-.It
+Each interface of the card may work in either iWARP or RoCEv2 mode.
+To enable RoCEv2 compatibility, add:
+.Bd -literal -offset indent
dev.irdma<interface_number>.roce_enable=1
-.El
+.Ed
where <interface_number> is a desired ice interface number on which
-RoCEv2 protocol needs to be enabled, to:
-.Bl -tag -width indent
-.It
+RoCEv2 protocol needs to be enabled, into:
.Pa /boot/loader.conf
-.El
-for instance:
+, for instance:
.Bl -tag -width indent
-.It
-dev.irdma0.roce_enable=0
-.It
-dev.irdma1.roce_enable=1
+.It dev.irdma0.roce_enable=0
+.It dev.irdma1.roce_enable=1
.El
-will keep iWARP mode on ice0 and enable RoCEv2 mode on interface ice1. The RoCEv2 mode is the default.
-.Dl
+will keep iWARP mode on ice0 and enable RoCEv2 mode on interface ice1.
+The RoCEv2 mode is the default.
+.Pp
To check irdma roce_enable status, run:
-.Bl -tag -width indent
-.It
+.Bd -literal -offset indent
sysctl dev.irdma<interface_number>.roce_enable
-.El
+.Ed
for instance:
-.Bl -tag -width indent
-.It
+.Bd -literal -offset indent
sysctl dev.irdma2.roce_enable
-.El
-with returned value of '0' indicate the iWARP mode, and the value of '1' indicate the RoCEv2 mode.
+.Ed
+with returned value of '0' indicate the iWARP mode, and the value of '1'
+indicate the RoCEv2 mode.
.Pp
Note: An interface configured in one mode will not be able to connect
to a node configured in another mode.
@@ -187,44 +199,42 @@ DCB and Priority Flow Controller (PFC) are not currently supported which
may lead to significant performance loss or connectivity issues.
.It
Enable flow control in the ice driver:
-.Bl -tag -width indent
-.It
+.Bd -literal -offset indent
sysctl dev.ice.<interface_number>.fc=3
-.El
-Enable flow control on the switch your system is connected to. See your
-switch documentation for details.
+.Ed
+Enable flow control on the switch your system is connected to.
+See your switch documentation for details.
.It
The source code for krping software is provided with the kernel in
-/usr/src/sys/contrib/rdma/krping/. To compile the software, change
-directory to /usr/src/sys/modules/rdma/krping/ and invoke the following:
+/usr/src/sys/contrib/rdma/krping/.
+To compile the software, change directory to
+/usr/src/sys/modules/rdma/krping/ and invoke the following:
.Bl -tag -width indent
-.It
-make clean
-.It
-make
-.It
-make install
+.It make clean
+.It make
+.It make install
+.It kldload krping
.El
.It
Start a krping server on one machine:
-.Bl -tag -width indent
-.It
- echo size=64,count=1,port=6601,addr=100.0.0.189,server > /dev/krping
-.El
+.Bd -literal -offset indent
+echo size=64,count=1,port=6601,addr=100.0.0.189,server > /dev/krping
+.Ed
.It
Connect a client from another machine:
-.Bl -tag -width indent
-.It
- echo size=64,count=1,port=6601,addr=100.0.0.189,client > /dev/krping
+.Bd -literal -offset indent
+echo size=64,count=1,port=6601,addr=100.0.0.189,client > /dev/krping
+.Ed
.El
.Sh SUPPORT
For general information and support, go to the Intel support website at:
.Lk http://support.intel.com/ .
.Pp
-If an issue is identified with this driver with a supported adapter, email all the specific information related to the issue to
+If an issue is identified with this driver with a supported adapter, email all
+the specific information related to the issue to
.Mt freebsd@intel.com .
.Sh SEE ALSO
-.Xr if_ice 4
+.Xr ice 4
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/isci.4 b/share/man/man4/isci.4
index 06e249b6dfc2..4d8115f0bbad 100644
--- a/share/man/man4/isci.4
+++ b/share/man/man4/isci.4
@@ -31,8 +31,6 @@
.\"
.\" Author: Jim Harris <jimharris@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd January 23, 2012
.Dt ISCI 4
.Os
diff --git a/share/man/man4/iscsi.4 b/share/man/man4/iscsi.4
index c5f3f786f570..77a5e816294f 100644
--- a/share/man/man4/iscsi.4
+++ b/share/man/man4/iscsi.4
@@ -20,8 +20,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd May 28, 2017
.Dt ISCSI 4
.Os
diff --git a/share/man/man4/iser.4 b/share/man/man4/iser.4
index abaaa92d0762..496e7b4072e6 100644
--- a/share/man/man4/iser.4
+++ b/share/man/man4/iser.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\"
-.\" $FreeBSD$
.Dd June 6, 2016
.Dt ISER 4
.Os
diff --git a/share/man/man4/isl.4 b/share/man/man4/isl.4
index ae081f3df01f..610c6e47a6e8 100644
--- a/share/man/man4/isl.4
+++ b/share/man/man4/isl.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 18, 2018
.Dt ISL 4
.Os
diff --git a/share/man/man4/ismt.4 b/share/man/man4/ismt.4
index c32e04f5dec3..1c3beec5a950 100644
--- a/share/man/man4/ismt.4
+++ b/share/man/man4/ismt.4
@@ -31,8 +31,6 @@
.\"
.\" Author: Jim Harris <jimharris@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd March 4, 2020
.Dt ISMT 4
.Os
diff --git a/share/man/man4/isp.4 b/share/man/man4/isp.4
index 78d20723f015..350a0ea59a64 100644
--- a/share/man/man4/isp.4
+++ b/share/man/man4/isp.4
@@ -24,9 +24,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 19, 2020
+.Dd October 27, 2023
.Dt ISP 4
.Os
.Sh NAME
@@ -82,12 +80,15 @@ FC-Tape is automatically enabled when connecting controller that supports
it to a target that supports it.
It may be disabled using configuration and hint options described below.
.Sh FIRMWARE
-Firmware loading is supported if the
+Firmware loading is supported and handled by
+.Xr firmware 9 .
+The correct firmware is either loaded automatically, if available for this
+type of adapter, or by manually loading the
.Xr ispfw 4
-module is loaded.
+module.
It is strongly recommended that you use the firmware available from
.Xr ispfw 4
-as it is the most likely to have been tested with this driver.
+as it is the one that most likely has been tested with this driver.
.Sh HARDWARE
Cards supported by the
.Nm
@@ -105,6 +106,14 @@ Optical 16Gb FC/FCoE PCIe cards.
Optical 16Gb Fibre Channel PCIe cards.
.It Qlogic 2740/2742/2764 (aka 2722/2714)
Optical 32Gb Fibre Channel PCIe cards.
+.It Qlogic QLE2770/QLE2772 (aka 2812)
+Optical 32Gb Fibre Channel PCIe cards.
+.It Qlogic QLE2774 (aka 2814)
+Optical 32Gb Fibre Channel PCIe cards.
+.It Qlogic QLE2870/QLE2872 (aka 2812)
+Optical 64Gb Fibre Channel PCIe cards.
+.It Qlogic QLE2874 (aka 2814)
+Optical 64Gb Fibre Channel PCIe cards.
.El
.Sh CONFIGURATION OPTIONS
Target mode support for Fibre Channel adapters may be enabled with the
@@ -130,7 +139,7 @@ Limit on number of Message Signaled Interrupts (MSI) to be used.
.It Va hint.isp. Ns Ar N Ns Va .msix
Limit on number of Extended Message Signaled Interrupts (MSI-X) to be used.
.It Va hint.isp. Ns Ar N Ns Va .fwload_disable
-A hint value to disable loading of firmware
+A hint value to disable loading of firmware provided by
.Xr ispfw 4 .
.It Va hint.isp. Ns Ar N Ns Va .ignore_nvram
A hint value to ignore board NVRAM settings for.
@@ -204,6 +213,14 @@ The default is 1 (enabled).
This is the readonly World Wide Node Name value for this port.
.It Va dev.isp. Ns Ar N Ns Va .wwpn
This is the readonly World Wide Port Name value for this port.
+.It Va dev.isp. Ns Ar N Ns Va .fw_version_flash
+The readonly flash firmware version value in the active region of the
+controller.
+.It Va dev.isp. Ns Ar N Ns Va .fw_version_ispfw
+The readonly firmware version value provided by
+.Xr ispfw 4 .
+.It Va dev.isp. Ns Ar N Ns Va .fw_version_run
+The readonly firmware version value currently executed on the controller.
.El
.Sh SEE ALSO
.Xr da 4 ,
diff --git a/share/man/man4/ispfw.4 b/share/man/man4/ispfw.4
index 8353413fe280..b2f952ce4ba1 100644
--- a/share/man/man4/ispfw.4
+++ b/share/man/man4/ispfw.4
@@ -20,9 +20,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 19, 2020
+.Dd October 27, 2023
.Dt ISPFW 4
.Os
.Sh NAME
diff --git a/share/man/man4/itwd.4 b/share/man/man4/itwd.4
index b050e9a43e74..fd53741825fc 100644
--- a/share/man/man4/itwd.4
+++ b/share/man/man4/itwd.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2012 Bjoern A. Zeeb <bz@FreeBSD.org>
.\" Copyright (c) 2019 Andriy Gapon <avg@FreeBSD.org>
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 16, 2019
.Dt ITWD 4
.Os
diff --git a/share/man/man4/iwi.4 b/share/man/man4/iwi.4
index 5d6b8f54247e..9de9b3e6c490 100644
--- a/share/man/man4/iwi.4
+++ b/share/man/man4/iwi.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 15, 2015
.Dt IWI 4
.Os
diff --git a/share/man/man4/iwifw.4 b/share/man/man4/iwifw.4
index 52f90e3ea6f2..d4bad24a51f6 100644
--- a/share/man/man4/iwifw.4
+++ b/share/man/man4/iwifw.4
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 15, 2015
.Dt IWIFW 4
.Os
diff --git a/share/man/man4/iwlwifi.4 b/share/man/man4/iwlwifi.4
index bfb3c00d9217..1cf61c0008b5 100644
--- a/share/man/man4/iwlwifi.4
+++ b/share/man/man4/iwlwifi.4
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2021 The FreeBSD Foundation
+.\" Copyright (c) 2021-2023 The FreeBSD Foundation
.\"
.\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from
.\" the FreeBSD Foundation.
@@ -25,10 +25,8 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 3, 2022
-.Dt iwlwifi 4
+.Dd September 21, 2023
+.Dt IWLWIFI 4
.Os
.Sh NAME
.Nm iwlwifi
@@ -62,10 +60,10 @@ all chipsets supported by the
part of that driver.
.Pp
.Bl -bullet -compact
-.% ---------------------------------------------------------------------
-.% This list is manually generated from a sysctl and post-processing.
-.% Edits will be overwritten on next update.
-.% ---------------------------------------------------------------------
+.\" ---------------------------------------------------------------------
+.\" This list is manually generated from a sysctl and post-processing.
+.\" Edits will be overwritten on next update.
+.\" ---------------------------------------------------------------------
.It
Intel(R) Dual Band Wireless AC 7260
.It
@@ -180,13 +178,15 @@ Intel(R) Wi-Fi 6E AX231 160MHz
Intel(R) TBD Bz device
.It
Intel(R) Wi-Fi 6 AX204 160MHz
-.% ---------------------------------------------------------------------
+.It
+Intel(R) TBD Sc device
+.\" ---------------------------------------------------------------------
.El
.Pp
.Nm
will be a successor to
.Xr iwm 4
-and may superseed that driver in the future.
+and may supersede that driver in the future.
It still complements the
.Xr iwn 4
driver which supports older chipsets.
@@ -197,7 +197,9 @@ The driver uses the
and
.Em linuxkpi
compat framework to bridge between the Linux and
-native FreeBSD driver code as well as to the native
+native
+.Fx
+driver code as well as to the native
.Xr net80211 4
wireless stack.
.Pp
diff --git a/share/man/man4/iwlwififw.4 b/share/man/man4/iwlwififw.4
index d9e13e3cf147..a377f6b51f78 100644
--- a/share/man/man4/iwlwififw.4
+++ b/share/man/man4/iwlwififw.4
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2021 The FreeBSD Foundation
+.\" Copyright (c) 2021-2023 The FreeBSD Foundation
.\"
.\" This documentation was written by Bj\xc3\xb6rn Zeeb under sponsorship from
.\" the FreeBSD Foundation.
@@ -25,9 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 3, 2022
+.Dd September 21, 2023
.Dt iwlwififw 4
.Os
.Sh NAME
@@ -54,1414 +52,1294 @@ driver.
.% ---------------------------------------------------------------------
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4070 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4070 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4072 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4072 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4170 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4170 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c60 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c60 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c70 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4c70 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4060 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4060 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x406a Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x406a Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4160 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4160 Ta iwlwifi-7260
.It ""
.It Intel(R) Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4062 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4062 Ta iwlwifi-7260
.It ""
.It Intel(R) Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4162 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4162 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0x4270 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0x4270 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0x4272 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0x4272 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0x4260 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0x4260 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0x426a Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0x426a Ta iwlwifi-7260
.It ""
.It Intel(R) Wireless N 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0x4262 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0x4262 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4470 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4470 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4472 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4472 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4460 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4460 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x446a Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x446a Ta iwlwifi-7260
.It ""
.It Intel(R) Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4462 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4462 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4870 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4870 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x486e Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x486e Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a70 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a70 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6e Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6e Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6c Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4a6c Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4570 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4570 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4560 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4560 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0x4370 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0x4370 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0x4360 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0x4360 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x5070 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x5070 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x5072 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x5072 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x5170 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x5170 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x5770 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x5770 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4020 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4020 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x402a Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x402a Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0x4220 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0x4220 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0x4420 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0x4420 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc070 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc070 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc072 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc072 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc170 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc170 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc060 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc060 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc06a Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc06a Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc160 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc160 Ta iwlwifi-7260
.It ""
.It Intel(R) Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc062 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc062 Ta iwlwifi-7260
.It ""
.It Intel(R) Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc162 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc162 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc770 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc770 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc760 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc760 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0xc270 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0xc270 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc70 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc70 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc60 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xcc60 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0xc272 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0xc272 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0xc260 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0xc260 Ta iwlwifi-7260
.It ""
.It Intel(R) Wireless N 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0xc26a Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0xc26a Ta iwlwifi-7260
.It ""
.It Intel(R) Wireless N 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0xc262 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0xc262 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc470 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc470 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc472 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc472 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc460 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc460 Ta iwlwifi-7260
.It ""
.It Intel(R) Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc462 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc462 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc570 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc570 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc560 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc560 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0xc370 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0xc370 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc360 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc360 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc020 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc020 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc02a Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc02a Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b2 Ta any Ta 0xc220 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b2 Ta any Ta 0xc220 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless N 7260
-.It 0x8086 Ta 0x08b1 Ta any Ta 0xc420 Ta iwlwifi-7260-
+.It 0x8086 Ta 0x08b1 Ta any Ta 0xc420 Ta iwlwifi-7260
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x0070 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x0070 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x0072 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x0072 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x0170 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x0170 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x0172 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x0172 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless N 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x0060 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x0060 Ta iwlwifi-3160
.It ""
.It Intel(R) Wireless N 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x0062 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x0062 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b4 Ta any Ta 0x0270 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b4 Ta any Ta 0x0270 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b4 Ta any Ta 0x0272 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b4 Ta any Ta 0x0272 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x0470 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x0470 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x0472 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x0472 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b4 Ta any Ta 0x0370 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b4 Ta any Ta 0x0370 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x8070 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x8070 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x8072 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x8072 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x8170 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x8170 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x8172 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x8172 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless N 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x8060 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x8060 Ta iwlwifi-3160
.It ""
.It Intel(R) Wireless N 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x8062 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x8062 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b4 Ta any Ta 0x8270 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b4 Ta any Ta 0x8270 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b4 Ta any Ta 0x8370 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b4 Ta any Ta 0x8370 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b4 Ta any Ta 0x8272 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b4 Ta any Ta 0x8272 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x8470 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x8470 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x8570 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x8570 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x1070 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x1070 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3160
-.It 0x8086 Ta 0x08b3 Ta any Ta 0x1170 Ta iwlwifi-3160-
+.It 0x8086 Ta 0x08b3 Ta any Ta 0x1170 Ta iwlwifi-3160
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3165 Ta any Ta 0x4010 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3165 Ta any Ta 0x4010 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3165 Ta any Ta 0x4012 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3165 Ta any Ta 0x4012 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3166 Ta any Ta 0x4212 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3166 Ta any Ta 0x4212 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3165 Ta any Ta 0x4410 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3165 Ta any Ta 0x4410 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3165 Ta any Ta 0x4510 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3165 Ta any Ta 0x4510 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3165 Ta any Ta 0x4110 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3165 Ta any Ta 0x4110 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3166 Ta any Ta 0x4310 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3166 Ta any Ta 0x4310 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3166 Ta any Ta 0x4210 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3166 Ta any Ta 0x4210 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3165 Ta any Ta 0x8010 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3165 Ta any Ta 0x8010 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3165
-.It 0x8086 Ta 0x3165 Ta any Ta 0x8110 Ta iwlwifi-7265D-
+.It 0x8086 Ta 0x3165 Ta any Ta 0x8110 Ta iwlwifi-7265D
.It ""
.It Intel(R) Dual Band Wireless AC 3168
-.It 0x8086 Ta 0x24fb Ta any Ta 0x2010 Ta iwlwifi-3168-
+.It 0x8086 Ta 0x24fb Ta any Ta 0x2010 Ta iwlwifi-3168
.It ""
.It Intel(R) Dual Band Wireless AC 3168
-.It 0x8086 Ta 0x24fb Ta any Ta 0x2110 Ta iwlwifi-3168-
+.It 0x8086 Ta 0x24fb Ta any Ta 0x2110 Ta iwlwifi-3168
.It ""
.It Intel(R) Dual Band Wireless AC 3168
-.It 0x8086 Ta 0x24fb Ta any Ta 0x2050 Ta iwlwifi-3168-
+.It 0x8086 Ta 0x24fb Ta any Ta 0x2050 Ta iwlwifi-3168
.It ""
.It Intel(R) Dual Band Wireless AC 3168
-.It 0x8086 Ta 0x24fb Ta any Ta 0x2150 Ta iwlwifi-3168-
+.It 0x8086 Ta 0x24fb Ta any Ta 0x2150 Ta iwlwifi-3168
.It ""
.It Intel(R) Dual Band Wireless AC 3168
-.It 0x8086 Ta 0x24fb Ta any Ta 000000 Ta iwlwifi-3168-
+.It 0x8086 Ta 0x24fb Ta any Ta 000000 Ta iwlwifi-3168
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5010 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5010 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5110 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5110 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5100 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5100 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x5310 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x5310 Ta iwlwifi-7265
.It ""
.It Intel(R) Wireless N 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x5302 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x5302 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x5210 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x5210 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5c10 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5c10 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5012 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5012 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5412 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5412 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5410 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5410 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5510 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5510 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5400 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5400 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x1010 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x1010 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless N 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5000 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5000 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless N 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x500a Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x500a Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless N 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x5200 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x5200 Ta iwlwifi-7265
.It ""
.It Intel(R) Wireless N 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5002 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5002 Ta iwlwifi-7265
.It ""
.It Intel(R) Wireless N 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5102 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5102 Ta iwlwifi-7265
.It ""
.It Intel(R) Wireless N 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x5202 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x5202 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x9010 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x9010 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x9012 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x9012 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x900a Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x900a Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x9110 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x9110 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x9112 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x9112 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x9210 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x9210 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x9200 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x9200 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x9510 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x9510 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x9310 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x9310 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x9410 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x9410 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless N 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5020 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5020 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless N 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x502a Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x502a Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless N 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5420 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5420 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5090 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5090 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5190 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5190 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5590 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5590 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x5290 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x5290 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5490 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5490 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x5f10 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x5f10 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x5212 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x5212 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095b Ta any Ta 0x520a Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095b Ta any Ta 0x520a Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x9000 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x9000 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x9400 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x9400 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 7265
-.It 0x8086 Ta 0x095a Ta any Ta 0x9e10 Ta iwlwifi-7265-
+.It 0x8086 Ta 0x095a Ta any Ta 0x9e10 Ta iwlwifi-7265
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0010 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0010 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x1010 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x1010 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x10b0 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x10b0 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0130 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0130 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x1130 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x1130 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0132 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0132 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x1132 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x1132 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0110 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0110 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x01f0 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x01f0 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0012 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0012 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x1012 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x1012 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x1110 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x1110 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0050 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0050 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0250 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0250 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x1050 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x1050 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0150 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0150 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x1150 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x1150 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f4 Ta any Ta 0x0030 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f4 Ta any Ta 0x0030 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f4 Ta any Ta 0x1030 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f4 Ta any Ta 0x1030 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0xc010 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0xc010 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0xc110 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0xc110 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0xd010 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0xd010 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0xc050 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0xc050 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0xd050 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0xd050 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0xd0b0 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0xd0b0 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0xb0b0 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0xb0b0 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x8010 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x8010 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x8110 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x8110 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x9010 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x9010 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x9110 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x9110 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f4 Ta any Ta 0x8030 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f4 Ta any Ta 0x8030 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f4 Ta any Ta 0x9030 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f4 Ta any Ta 0x9030 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f4 Ta any Ta 0xc030 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f4 Ta any Ta 0xc030 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f4 Ta any Ta 0xd030 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f4 Ta any Ta 0xd030 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x8130 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x8130 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x9130 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x9130 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x8132 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x8132 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x9132 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x9132 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x8050 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x8050 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x8150 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x8150 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x9050 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x9050 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x9150 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x9150 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless N 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0004 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0004 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless N 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0044 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0044 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 4165
-.It 0x8086 Ta 0x24f5 Ta any Ta 0x0010 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f5 Ta any Ta 0x0010 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 4165
-.It 0x8086 Ta 0x24f6 Ta any Ta 0x0030 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f6 Ta any Ta 0x0030 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0810 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0810 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0910 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0910 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0850 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0850 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0950 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0950 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x0930 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x0930 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24f3 Ta any Ta 000000 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24f3 Ta any Ta 000000 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8260
-.It 0x8086 Ta 0x24f3 Ta any Ta 0x4010 Ta iwlwifi-8000C-
+.It 0x8086 Ta 0x24f3 Ta any Ta 0x4010 Ta iwlwifi-8000C
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0010 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0010 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0110 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0110 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x1110 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x1110 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x1130 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x1130 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0130 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0130 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x1010 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x1010 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x10d0 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x10d0 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0050 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0050 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0150 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0150 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x9010 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x9010 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x8110 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x8110 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x8050 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x8050 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x8010 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x8010 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0810 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0810 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x9110 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x9110 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x8130 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x8130 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0910 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0910 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0930 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0930 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0950 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0950 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0850 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0850 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x1014 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x1014 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8275
-.It 0x8086 Ta 0x24fd Ta any Ta 0x3e02 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x3e02 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8275
-.It 0x8086 Ta 0x24fd Ta any Ta 0x3e01 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x3e01 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8275
-.It 0x8086 Ta 0x24fd Ta any Ta 0x1012 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x1012 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8275
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0012 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0012 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x0014 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x0014 Ta iwlwifi-8265
.It ""
.It Intel(R) Dual Band Wireless AC 8265
-.It 0x8086 Ta 0x24fd Ta any Ta 0x9074 Ta iwlwifi-8265-
+.It 0x8086 Ta 0x24fd Ta any Ta 0x9074 Ta iwlwifi-8265
.It ""
.It Killer (R) Wireless-AC 1550 Wireless Network Adapter (9260NGW) 160MHz
-.It 0x8086 Ta 0x2526 Ta any Ta 0x1550 Ta iwlwifi-9260-th-b0-jf-b0-
+.It 0x8086 Ta 0x2526 Ta any Ta 0x1550 Ta iwlwifi-9260-th-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta 0x2526 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x2526 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta 0x2526 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x2526 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta 0x30dc Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x30dc Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta 0x30dc Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x30dc Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta 0x31dc Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x31dc Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta 0x31dc Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x31dc Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta 0xa370 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0xa370 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta 0xa370 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0xa370 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz
-.It 0x8086 Ta 0x54f0 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x54f0 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta 0x54f0 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x54f0 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz
-.It 0x8086 Ta 0x51f0 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x51f0 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) 160MHz
-.It 0x8086 Ta 0x51f0 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x51f0 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0
+.It ""
+.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W)
+.It 0x8086 Ta 0x51f0 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0
+.It ""
+.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW)
+.It 0x8086 Ta 0x51f0 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0
+.It ""
+.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW)
+.It 0x8086 Ta 0x51f1 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W)
-.It 0x8086 Ta 0x51f0 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0-
+.It 0x8086 Ta 0x54f0 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW)
-.It 0x8086 Ta 0x51f0 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0-
+.It 0x8086 Ta 0x54f0 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W)
-.It 0x8086 Ta 0x54f0 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW)
-.It 0x8086 Ta 0x54f0 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W)
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW)
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Intel(R) Wireless-AC 9260-1
-.It 0x8086 Ta 0x271c Ta any Ta 0x0214 Ta iwlwifi-9260-th-b0-jf-b0-
+.It 0x8086 Ta 0x271c Ta any Ta 0x0214 Ta iwlwifi-9260-th-b0-jf-b0
.It ""
.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W)
-.It 0x8086 Ta 0x7e40 Ta any Ta 0x1691 Ta iwlwifi-ma-a0-gf4-a0-
+.It 0x8086 Ta 0x7e40 Ta any Ta 0x1691 Ta (null)
.It ""
.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW)
-.It 0x8086 Ta 0x7e40 Ta any Ta 0x1692 Ta iwlwifi-ma-a0-gf4-a0-
+.It 0x8086 Ta 0x7e40 Ta any Ta 0x1692 Ta (null)
.It ""
.It Intel(R) Wi-Fi 6 AX200 160MHz
-.It 0x8086 Ta 0x2723 Ta any Ta any Ta iwlwifi-cc-a0-
+.It 0x8086 Ta 0x2723 Ta any Ta any Ta iwlwifi-cc-a0
.It ""
.It Killer(R) Wi-Fi 6 AX1650w 160MHz Wireless Network Adapter (200D2W)
-.It 0x8086 Ta 0x2723 Ta any Ta 0x1653 Ta iwlwifi-cc-a0-
+.It 0x8086 Ta 0x2723 Ta any Ta 0x1653 Ta iwlwifi-cc-a0
.It ""
.It Killer(R) Wi-Fi 6 AX1650x 160MHz Wireless Network Adapter (200NGW)
-.It 0x8086 Ta 0x2723 Ta any Ta 0x1654 Ta iwlwifi-cc-a0-
+.It 0x8086 Ta 0x2723 Ta any Ta 0x1654 Ta iwlwifi-cc-a0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x43f0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x43f0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x43f0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x43f0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x43f0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x43f0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x43f0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x43f0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W)
-.It 0x8086 Ta 0x43f0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x43f0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW)
-.It 0x8086 Ta 0x43f0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x43f0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x43f0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x43f0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x43f0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x43f0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0a10 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x0a10 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW)
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W)
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0xa0f0 Ta any Ta 0x6074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0xa0f0 Ta any Ta 0x6074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x0070 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x0070 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x0074 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x0074 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x6074 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x6074 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x0078 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x0078 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x007c Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x007c Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x0310 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x0310 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W)
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x1651 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x1651 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW)
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x1652 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x1652 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x2074 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x2074 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x02f0 Ta any Ta 0x4070 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x02f0 Ta any Ta 0x4070 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x06f0 Ta any Ta 0x0070 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x06f0 Ta any Ta 0x0070 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x06f0 Ta any Ta 0x0074 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x06f0 Ta any Ta 0x0074 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x06f0 Ta any Ta 0x0078 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x06f0 Ta any Ta 0x0078 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x06f0 Ta any Ta 0x007c Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x06f0 Ta any Ta 0x007c Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x06f0 Ta any Ta 0x0310 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x06f0 Ta any Ta 0x0310 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W)
-.It 0x8086 Ta 0x06f0 Ta any Ta 0x1651 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x06f0 Ta any Ta 0x1651 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW)
-.It 0x8086 Ta 0x06f0 Ta any Ta 0x1652 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x06f0 Ta any Ta 0x1652 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x06f0 Ta any Ta 0x2074 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x06f0 Ta any Ta 0x2074 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x06f0 Ta any Ta 0x4070 Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta 0x06f0 Ta any Ta 0x4070 Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x34f0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x34f0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x34f0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x34f0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x34f0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x34f0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x34f0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x34f0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x34f0 Ta any Ta 0x0310 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x34f0 Ta any Ta 0x0310 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW)
-.It 0x8086 Ta 0x34f0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x34f0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W)
-.It 0x8086 Ta 0x34f0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x34f0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x34f0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x34f0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x34f0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x34f0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x3df0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x3df0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x3df0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x3df0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x3df0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x3df0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x3df0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x3df0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x3df0 Ta any Ta 0x0310 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x3df0 Ta any Ta 0x0310 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW)
-.It 0x8086 Ta 0x3df0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x3df0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W)
-.It 0x8086 Ta 0x3df0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x3df0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x3df0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x3df0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x3df0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x3df0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x0070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x0074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x0078 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x007c Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x0310 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x0310 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201NGW)
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x1651 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201D2W)
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x1652 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x2074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x4070 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta 0x4df0 Ta any Ta 0x6074 Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta 0x4df0 Ta any Ta 0x6074 Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x0090 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x0090 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x0020 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x0020 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x2020 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x2020 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x0024 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x0024 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x0310 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x0310 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x0510 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x0510 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x0a10 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x0a10 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0xe020 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0xe020 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0xe024 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0xe024 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x4020 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x4020 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x6020 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x6020 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6 AX210 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x6024 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x6024 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675w 160MHz Wireless Network Adapter (210D2W)
-.It 0x8086 Ta 0x2725 Ta any Ta 0x1673 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x1673 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675x 160MHz Wireless Network Adapter (210NGW)
-.It 0x8086 Ta 0x2725 Ta any Ta 0x1674 Ta iwlwifi-ty-a0-gf-a0-
+.It 0x8086 Ta 0x2725 Ta any Ta 0x1674 Ta iwlwifi-ty-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x0090 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x0090 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x0098 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x0098 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX411 160MHz
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x00b0 Ta iwlwifi-so-a0-gf4-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x00b0 Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x0310 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x0310 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x0510 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x0510 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x0a10 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x0a10 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x0090 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x0090 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x0098 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x0098 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX411 160MHz
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x00b0 Ta iwlwifi-so-a0-gf4-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x00b0 Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x0310 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x0310 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x0510 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x0510 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x0a10 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x0a10 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) 160MHz
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer(R) Wireless-AC 1550s Wireless Network Adapter (9560D2W) 160MHz
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x1551 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) 160MHz
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0-
-.It ""
-.It Intel(R) Wi-Fi 6E AX411 160MHz
-.It 0x8086 Ta 0x2725 Ta any Ta 0x00b0 Ta iwlwifi-SoSnj-a0-gf4-a0-
-.It ""
-.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x2726 Ta any Ta 0x0090 Ta iwlwifi-SoSnj-a0-gf-a0-
-.It ""
-.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x2726 Ta any Ta 0x0098 Ta iwlwifi-SoSnj-a0-gf-a0-
-.It ""
-.It Intel(R) Wi-Fi 6E AX411 160MHz
-.It 0x8086 Ta 0x2726 Ta any Ta 0x00b0 Ta iwlwifi-SoSnj-a0-gf4-a0-
-.It ""
-.It Intel(R) Wi-Fi 6E AX411 160MHz
-.It 0x8086 Ta 0x2726 Ta any Ta 0x00b4 Ta iwlwifi-SoSnj-a0-gf4-a0-
-.It ""
-.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta 0x2726 Ta any Ta 0x0510 Ta iwlwifi-SoSnj-a0-gf-a0-
-.It ""
-.It Killer(R) Wi-Fi 6 AX1650s 160MHz Wireless Network Adapter (201D2W)
-.It 0x8086 Ta 0x2726 Ta any Ta 0x1651 Ta iwlwifi-SoSnj-a0-hr-b0-
-.It ""
-.It Killer(R) Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW)
-.It 0x8086 Ta 0x2726 Ta any Ta 0x1652 Ta iwlwifi-SoSnj-a0-hr-b0-
-.It ""
-.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W)
-.It 0x8086 Ta 0x2726 Ta any Ta 0x1691 Ta iwlwifi-SoSnj-a0-gf4-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x1552 Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
-.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW)
-.It 0x8086 Ta 0x2726 Ta any Ta 0x1692 Ta iwlwifi-SoSnj-a0-gf4-a0-
-.It ""
-.It Killer(R) Wi-Fi 6E AX1690s 160MHz Wireless Network Adapter (411D2W)
-.It 0x8086 Ta 0x7f70 Ta any Ta 0x1691 Ta iwlwifi-so-a0-gf4-a0-
+.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW)
+.It 0x8086 Ta 0x2726 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0
.It ""
-.It Killer(R) Wi-Fi 6E AX1690i 160MHz Wireless Network Adapter (411NGW)
-.It 0x8086 Ta 0x7f70 Ta any Ta 0x1692 Ta iwlwifi-so-a0-gf4-a0-
+.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW)
+.It 0x8086 Ta 0x2726 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x2726 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x51f0 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x2726 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x51f0 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x51f0 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x51f1 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x51f0 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x51f1 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x54f0 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x54f0 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x54f0 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x54f0 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x7a70 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7a70 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x7af0 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7af0 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x7f70 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7f70 Ta any Ta 0x1671 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x7f70 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta 0x7f70 Ta any Ta 0x1672 Ta iwlwifi-so-a0-gf-a0
.It ""
.It Killer(R) Wi-Fi 6E AX1675s 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x7e40 Ta any Ta 0x1671 Ta iwlwifi-ma-a0-gf-a0-
+.It 0x8086 Ta 0x7e40 Ta any Ta 0x1671 Ta (null)
.It ""
.It Killer(R) Wi-Fi 6E AX1675i 160MHz Wireless Network Adapter (211NGW)
-.It 0x8086 Ta 0x7e40 Ta any Ta 0x1672 Ta iwlwifi-ma-a0-gf-a0-
+.It 0x8086 Ta 0x7e40 Ta any Ta 0x1672 Ta (null)
.It ""
.It Intel(R) Wireless-AC 9461 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9461
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9560 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9560
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9461 160MHz
-.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9461
-.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9462 160MHz
-.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9462
-.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-9000-pu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9270 160MHz
-.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
+.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9270
-.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
+.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9162 160MHz
-.It 0x8086 Ta 0x271b Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
+.It 0x8086 Ta 0x271b Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9162
-.It 0x8086 Ta 0x271b Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
+.It 0x8086 Ta 0x271b Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9260 160MHz
-.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
+.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9260
-.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9461 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9461
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9462 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9462
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9560 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9560
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0-
-.It ""
-.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-Qu-b0-jf-b0-
-.It ""
-.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-Qu-b0-jf-b0-
+.It 0x8086 Ta 0x2526 Ta any Ta any Ta iwlwifi-9260-th-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9461 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9461
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9560 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9560
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-Qu-c0-jf-b0-
+.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-Qu-b0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-Qu-c0-jf-b0-
+.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-Qu-b0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9461 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9461
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9560 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9560
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-QuZ-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-Qu-c0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-QuZ-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-Qu-c0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9461 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuQnj-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9461
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuQnj-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuQnj-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuQnj-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9560 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuQnj-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9560
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuQnj-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550s Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-QuQnj-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta 0x1551 Ta iwlwifi-QuZ-a0-jf-b0
.It ""
.It Killer (R) Wireless-AC 1550i Wireless Network Adapter (9560NGW)
-.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-QuQnj-b0-jf-b0-
+.It 0x8086 Ta any Ta any Ta 0x1552 Ta iwlwifi-QuZ-a0-jf-b0
.It ""
.It Intel(R) Wi-Fi 6 AX101
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX203
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-b0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX101
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX203
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-Qu-c0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX101
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX203
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuQnj-b0-hr-b0-
-.It ""
-.It Intel(R) Wireless-AC 9461 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9461
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9462 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9462
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9560 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-jf-b0-
-.It ""
-.It Intel(R) Wireless-AC 9560
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-jf-b0-
-.It ""
-.It Intel(R) Wi-Fi 6 AX101
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-hr-b0-
-.It ""
-.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-QuZ-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-ma-a0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta (null)
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-ma-a0-gf-a0-
-.It ""
-.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-ma-a0-gf4-a0-
+.It 0x8086 Ta any Ta any Ta any Ta (null)
.It ""
.It Intel(R) Wi-Fi 6E AX221 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-ma-a0-mr-a0-
+.It 0x8086 Ta any Ta any Ta any Ta (null)
.It ""
.It Intel(R) Wi-Fi 6E AX231 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-ma-a0-fm-a0-
-.It ""
-.It Intel(R) Wi-Fi 6E AX221 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-mr-a0-
+.It 0x8086 Ta any Ta any Ta any Ta (null)
.It ""
.It Intel(R) Wi-Fi 6 AX203
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX101
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6 AX201 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-hr-b0
.It ""
.It Intel(R) Wi-Fi 6E AX211 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-gf-a0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-gf-a0
.It ""
.It Intel(R) Wi-Fi 6E AX411 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-gf4-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-bz-a0-hr-b0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-bz-a0-gf-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-bz-a0-gf4-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-bz-a0-mr-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-bz-a0-fm-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-gl-a0-fm-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-bz-z0-gf-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-BzBnj-a0-fm-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-BzBnj-a0-fm4-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-BzBnj-a0-gf-a0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-gf4-a0
.It ""
.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-BzBnj-a0-gf4-a0-
-.It ""
-.It Intel(R) TBD Bz device
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-BzBnj-a0-hr-b0-
+.It 0x8086 Ta any Ta any Ta any Ta (null)
.It ""
.It Intel(R) Wireless-AC 9560 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9560
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9461 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9461
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0
.It ""
.It Intel(R) Wireless-AC 9462
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-jf-b0
.It ""
.It Intel(R) Wi-Fi 6 AX204 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-mr-a0-
+.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-so-a0-mr-a0
.It ""
.It Intel(R) Wi-Fi 6 AX204 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-ma-a0-mr-a0-
+.It 0x8086 Ta any Ta any Ta any Ta (null)
.It ""
-.It Intel(R) Wi-Fi 6 AX204 160MHz
-.It 0x8086 Ta any Ta any Ta any Ta iwlwifi-SoSnj-a0-mr-a0-
+.It Intel(R) TBD Sc device
+.It 0x8086 Ta any Ta any Ta any Ta (null)
.% ---------------------------------------------------------------------
.El
.Pp
diff --git a/share/man/man4/iwm.4 b/share/man/man4/iwm.4
index 2eddcbc83e2a..b810f7016e54 100644
--- a/share/man/man4/iwm.4
+++ b/share/man/man4/iwm.4
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 28, 2020
+.Dd February 20, 2024
.Dt IWM 4
.Os
.Sh NAME
@@ -49,6 +47,7 @@ Choose one from:
.Cd "device iwm3168fw"
.Cd "device iwm7260fw"
.Cd "device iwm7265fw"
+.Cd "device iwm7265Dfw"
.Cd "device iwm8000Cfw"
.Cd "device iwm8265fw"
.Cd "device iwm9000fw"
@@ -71,6 +70,7 @@ iwm3160fw_load="YES"
iwm3168fw_load="YES"
iwm7260fw_load="YES"
iwm7265fw_load="YES"
+iwm7265Dfw_load="YES"
iwm8000Cfw_load="YES"
iwm8265fw_load="YES"
iwm9000fw_load="YES"
@@ -167,6 +167,7 @@ failed.
This should not happen.
.El
.Sh SEE ALSO
+.Xr iwlwifi 4 ,
.Xr iwmfw 4 ,
.Xr pci 4 ,
.Xr wlan 4 ,
diff --git a/share/man/man4/iwmfw.4 b/share/man/man4/iwmfw.4
index 1704c735f292..7c749f379a8e 100644
--- a/share/man/man4/iwmfw.4
+++ b/share/man/man4/iwmfw.4
@@ -20,9 +20,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 28, 2020
+.Dd February 4, 2023
.Dt IWMFW 4
.Os
.Sh NAME
@@ -46,6 +44,7 @@ of the following:
.Cd "device iwm3168fw"
.Cd "device iwm7260fw"
.Cd "device iwm7265fw"
+.Cd "device iwm7265Dfw"
.Cd "device iwm8000Cfw"
.Cd "device iwm8265fw"
.Cd "device iwm9000fw"
diff --git a/share/man/man4/iwn.4 b/share/man/man4/iwn.4
index 6e9b774bb13d..1d9f50c38fee 100644
--- a/share/man/man4/iwn.4
+++ b/share/man/man4/iwn.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 30, 2021
.Dt IWN 4
.Os
diff --git a/share/man/man4/iwnfw.4 b/share/man/man4/iwnfw.4
index 601ed035c23d..67101f512224 100644
--- a/share/man/man4/iwnfw.4
+++ b/share/man/man4/iwnfw.4
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 30, 2014
.Dt IWNFW 4
.Os
diff --git a/share/man/man4/ixgbe.4 b/share/man/man4/ixgbe.4
index 54c9146d2630..b151d3466392 100644
--- a/share/man/man4/ixgbe.4
+++ b/share/man/man4/ixgbe.4
@@ -29,9 +29,7 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 17, 2019
+.Dd May 17, 2023
.Dt IXGBE 4
.Os
.Sh NAME
@@ -68,7 +66,7 @@ Support for Jumbo Frames is provided via the interface MTU setting.
Selecting an MTU larger than 1500 bytes with the
.Xr ifconfig 8
utility configures the adapter to receive and transmit Jumbo Frames.
-The maximum MTU size for Jumbo Frames is 16114.
+The maximum MTU size for Jumbo Frames is 9710.
.Pp
This driver version supports VLANs.
For information on enabling VLANs, see
diff --git a/share/man/man4/ixl.4 b/share/man/man4/ixl.4
index 320971a74f52..8397bd99a5e7 100644
--- a/share/man/man4/ixl.4
+++ b/share/man/man4/ixl.4
@@ -29,9 +29,7 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 19, 2021
+.Dd August 1, 2023
.Dt IXL 4
.Os
.Sh NAME
@@ -105,7 +103,10 @@ package.
.It
To update the firmware on an adapter, use the Intel Non-Volatile Memory (NVM)
Update Utility; installed by the
-.Em sysutils/intel-nvmupdate
+.Em sysutils/intel-nvmupdate-10g ,
+.Em sysutils/intel-nvmupdate-40g ,
+or
+.Em sysutils/intel-nvmupdate-100g ,
package.
.It
Drivers are provided by Intel outside of the
diff --git a/share/man/man4/jedec_dimm.4 b/share/man/man4/jedec_dimm.4
index ea4183fafc1a..30e89b0afd0c 100644
--- a/share/man/man4/jedec_dimm.4
+++ b/share/man/man4/jedec_dimm.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2016 Andriy Gapon <avg@FreeBSD.org>
.\" Copyright (c) 2018 Ravi Pokala <rpokala@freebsd.org>
@@ -24,9 +24,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 31, 2018
+.Dd April 25, 2023
.Dt JEDEC_DIMM 4
.Os
.Sh NAME
@@ -76,6 +74,10 @@ interface; all values are read-only:
a string description of the DIMM, including TSOD and slotid info if present.
.It Va dev.jedec_dimm.X.capacity
the DIMM's memory capacity, in megabytes
+.It Va dev.jedec_dimm.X.mfg_week
+the week within the year in which the DIMM was manufactured
+.It Va dev.jedec_dimm.X.mfg_year
+the year in which the DIMM was manufactured
.It Va dev.jedec_dimm.X.part
the manufacturer's part number of the DIMM
.It Va dev.jedec_dimm.X.serial
@@ -144,6 +146,8 @@ dev.jedec_dimm.0.%location: addr=0xa0
dev.jedec_dimm.0.%parent: smbus0
dev.jedec_dimm.0.%pnpinfo:
dev.jedec_dimm.0.capacity: 16384
+dev.jedec_dimm.0.mfg_week: 30
+dev.jedec_dimm.0.mfg_year: 17
dev.jedec_dimm.0.part: 36ASF2G72PZ-2G1A2
dev.jedec_dimm.0.serial: 0ea815de
dev.jedec_dimm.0.slotid: A1
@@ -156,6 +160,8 @@ dev.jedec_dimm.6.%location: addr=0xa8
dev.jedec_dimm.6.%parent: smbus1
dev.jedec_dimm.6.%pnpinfo:
dev.jedec_dimm.6.capacity: 8192
+dev.jedec_dimm.6.mfg_week: 13
+dev.jedec_dimm.6.mfg_year: 19
dev.jedec_dimm.6.part: VRA9MR8B2H1603
dev.jedec_dimm.6.serial: 0c4c46ad
dev.jedec_dimm.6.temp: 43.1C
diff --git a/share/man/man4/jme.4 b/share/man/man4/jme.4
index 513c253e15ff..097c827cc97b 100644
--- a/share/man/man4/jme.4
+++ b/share/man/man4/jme.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 4, 2012
.Dt JME 4
.Os
diff --git a/share/man/man4/kbdmux.4 b/share/man/man4/kbdmux.4
index 0815f054c8f5..7088a1583359 100644
--- a/share/man/man4/kbdmux.4
+++ b/share/man/man4/kbdmux.4
@@ -1,5 +1,4 @@
.\" $Id: kbdmux.4,v 1.1 2005/07/14 20:32:10 max Exp $
-.\" $FreeBSD$
.\"
.Dd July 12, 2005
.Dt KBDMUX 4
diff --git a/share/man/man4/kcov.4 b/share/man/man4/kcov.4
index b3f8f42cfbfd..a9e5556835f7 100644
--- a/share/man/man4/kcov.4
+++ b/share/man/man4/kcov.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 18, 2020
.Dt KCOV 4
.Os
diff --git a/share/man/man4/keyboard.4 b/share/man/man4/keyboard.4
index 4a71aa3828f3..8341ac2af3fd 100644
--- a/share/man/man4/keyboard.4
+++ b/share/man/man4/keyboard.4
@@ -1,6 +1,4 @@
.\"
-.\" $FreeBSD$
-.\"
.Dd January 8, 1995
.Dt KEYBOARD 4
.Os
diff --git a/share/man/man4/kld.4 b/share/man/man4/kld.4
index 2d76d5128c1c..bba32f02e677 100644
--- a/share/man/man4/kld.4
+++ b/share/man/man4/kld.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 13, 2014
.Dt KLD 4
.Os
diff --git a/share/man/man4/ksyms.4 b/share/man/man4/ksyms.4
index 4c70daec1e2f..1b905a9c68ad 100644
--- a/share/man/man4/ksyms.4
+++ b/share/man/man4/ksyms.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 2, 2017
.Dt KSYMS 4
.Os
diff --git a/share/man/man4/ksz8995ma.4 b/share/man/man4/ksz8995ma.4
index 758d6697722f..cd1939cb8643 100644
--- a/share/man/man4/ksz8995ma.4
+++ b/share/man/man4/ksz8995ma.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 6, 2017
.Dt KSZ8995MA 4
.Os
diff --git a/share/man/man4/ktls.4 b/share/man/man4/ktls.4
index efb5d7e3cc0a..46a37d5dd636 100644
--- a/share/man/man4/ktls.4
+++ b/share/man/man4/ktls.4
@@ -29,8 +29,6 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 14, 2021
.Dt KTLS 4
.Os
diff --git a/share/man/man4/ktr.4 b/share/man/man4/ktr.4
index 175a7ac7e2af..f1a35c7d9662 100644
--- a/share/man/man4/ktr.4
+++ b/share/man/man4/ktr.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 26, 2021
.Dt KTR 4
.Os
diff --git a/share/man/man4/kue.4 b/share/man/man4/kue.4
index 5b4a5987c919..a92af09f027e 100644
--- a/share/man/man4/kue.4
+++ b/share/man/man4/kue.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 2019
.Dt KUE 4
.Os
diff --git a/share/man/man4/kvmclock.4 b/share/man/man4/kvmclock.4
new file mode 100644
index 000000000000..55ee5fc1cb42
--- /dev/null
+++ b/share/man/man4/kvmclock.4
@@ -0,0 +1,96 @@
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2023 Klara, Inc.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 February 1, 2023
+.Dt KVMCLOCK 4
+.Os
+.Sh NAME
+.Nm kvmclock
+.Nd Para-virtualized clock driver for x86 KVM guests
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following line in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device kvm_clock"
+.Ed
+.Sh DESCRIPTION
+This driver reads time-keeping information from the para-virtualized clock
+device provided by the KVM hypervisor on Linux hosts.
+The
+.Nm
+driver is only implemented on i386 and amd64 platforms.
+It acts as a
+.Xr timecounters 4
+device and is preferred over the Time Stamp Counter (TSC) when available.
+The driver exports timekeeping information via
+.Pa /dev/pvclock ,
+enabling the implementation of
+.Xr clock_gettime 2
+and related functions without entering the kernel.
+.Pp
+The
+.Nm
+driver works by accessing a per-vCPU timekeeping structure maintained by the
+hypervisor.
+It uses a combination of TSC readings and information from the shared structure
+to produce a high-resolution timecounter which is invariant under hypervisor
+events such as vCPU migration and live VM migration.
+.Sh SYSCTL VARIABLES
+The following variables are available as both
+.Xr sysctl 8
+variables and
+.Xr loader 8
+tunables:
+.Bl -tag -width indent
+.It Va dev.kvmclock.0.vdso_enable_without_rdtscp
+By default, timekeeping information is exported to userspace only when the
+(virtual) CPU announces support for the
+.Dq rdtscp
+instruction.
+Setting this sysctl to 1 overrides this behavior, allowing timekeeping
+information to be exported even in the absence of
+.Dq rdtscp
+support.
+However, this breaks compatibility with copies of
+.Pa /lib/libc.so.7
+released prior to
+.Fx 14.0 ,
+and statically linked binaries which embed a copy of the system C library.
+Thus, this sysctl value should not be changed if the system may execute
+binaries older than
+.Fx 14.0 .
+.It Va dev.kvmclock.0.vdso_force_unstable
+Mark the timecounter as unstable for userspace consumers.
+This is mostly useful for debugging the driver and userspace timekeeping code,
+and generally should not be touched.
+.El
+.Sh SEE ALSO
+.Xr timecounters 4
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Fx 13.1 .
diff --git a/share/man/man4/lagg.4 b/share/man/man4/lagg.4
index f7d8e1c5e1f5..4eaed2cf3a88 100644
--- a/share/man/man4/lagg.4
+++ b/share/man/man4/lagg.4
@@ -14,9 +14,7 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd October 21, 2020
+.Dd January 16, 2023
.Dt LAGG 4
.Os
.Sh NAME
@@ -43,6 +41,18 @@ interface allows aggregation of multiple network interfaces as one virtual
.Nm
interface for the purpose of providing fault-tolerance and high-speed links.
.Pp
+Each
+.Nm
+interface is created at runtime using interface cloning.
+This is
+most easily done with the
+.Xr ifconfig 8
+.Cm create
+command or using the
+.Va cloned_interfaces
+variable in
+.Xr rc.conf 5 .
+.Pp
A
.Nm
interface can be created using the
@@ -79,7 +89,7 @@ the next active port is used.
The first interface added is the master port;
any interfaces added after that are used as failover devices.
.Pp
-By default, received traffic is only accepted when they are received
+By default, received traffic is only accepted when it is received
through the active port.
This constraint can be relaxed by setting the
.Va net.link.lagg.failover_rx_all
@@ -123,18 +133,6 @@ disabling the
interface itself.
.El
.Pp
-Each
-.Nm
-interface is created at runtime using interface cloning.
-This is
-most easily done with the
-.Xr ifconfig 8
-.Cm create
-command or using the
-.Va cloned_interfaces
-variable in
-.Xr rc.conf 5 .
-.Pp
The MTU of the first interface to be added is used as the lagg MTU.
All additional interfaces are required to have exactly the same value.
.Pp
@@ -152,6 +150,17 @@ flag.
The default for new interfaces is set via the
.Va net.link.lagg.default_use_flowid
.Xr sysctl 8 .
+.Pp
+When creating a
+.Nm
+interface, the
+.Ic laggtype
+can be specified as either
+.Cm ethernet
+or
+.Cm infiniband .
+If neither is specified then the default is
+.Cm ethernet .
.Sh EXAMPLES
Create a link aggregation using LACP with two
.Xr bge 4
@@ -182,16 +191,18 @@ between wired and wireless networks using two network devices.
Whenever the wired master interface is unplugged, the wireless failover
device will be used:
.Bd -literal -offset indent
-# ifconfig em0 up
-# ifconfig ath0 ether 00:11:22:33:44:55
-# ifconfig create wlan0 wlandev ath0 ssid my_net up
+# ifconfig em0 ether 00:11:22:33:44:55 up
+# ifconfig wlan0 create wlandev ath0 ssid my_net up
# ifconfig lagg0 create
# ifconfig lagg0 laggproto failover laggport em0 laggport wlan0 \e
192.168.1.1 netmask 255.255.255.0
.Ed
.Pp
-(Note the mac address of the wireless device is forced to match the wired
-device as a workaround.)
+(Note the MAC address of the wired device is forced to match that of the
+wireless device,
+.Sq 00:11:22:33:44:55
+in this example, as some common wireless devices will not allow MAC
+addresses to be changed.)
.Pp
The following example shows how to create an infiniband failover interface.
.Bd -literal -offset indent
@@ -201,8 +212,19 @@ The following example shows how to create an infiniband failover interface.
# ifconfig lagg0 laggproto failover laggport ib0 laggport ib1 \e
1.1.1.1 netmask 255.255.255.0
.Ed
+.Pp
+Configure two ethernets for failover with static IP in
+.Pa /etc/rc.conf :
+.Bd -literal -offset indent
+cloned_interfaces="lagg0"
+ifconfig_lagg0="laggproto failover laggport bge0 laggport bge1 \e
+ 10.1.29.21/24"
+ifconfig_bge0="up"
+ifconfig_bge1="up"
+.Ed
.Sh SEE ALSO
.Xr ng_one2many 4 ,
+.Xr rc.conf 5 ,
.Xr ifconfig 8 ,
.Xr sysctl 8
.Sh HISTORY
diff --git a/share/man/man4/le.4 b/share/man/man4/le.4
index 2c7f9cc3e55e..ff39361a1780 100644
--- a/share/man/man4/le.4
+++ b/share/man/man4/le.4
@@ -33,10 +33,8 @@
.\" SUCH DAMAGE.
.\"
.\" from: Header: le.4,v 1.2 92/10/13 05:31:33 leres Exp
-.\" from: @(#)le.4 8.1 (Berkeley) 6/9/93
-.\" $FreeBSD$
.\"
-.Dd December 26, 2020
+.Dd June 21, 2023
.Dt LE 4
.Os
.Sh NAME
@@ -64,6 +62,12 @@ numbers have to be specified in
.Cd hint.le.0.port="0x280"
.Cd hint.le.0.irq="10"
.Cd hint.le.0.drq="0"
+.Sh DEPRECATION NOTICE
+The
+.Nm
+driver may not be present in
+.Fx 15.0
+and later.
.Sh DESCRIPTION
The
.Nm
diff --git a/share/man/man4/led.4 b/share/man/man4/led.4
index 1ae8f91690bb..cf1685f07c40 100644
--- a/share/man/man4/led.4
+++ b/share/man/man4/led.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 24, 2007
.Dt LED 4
.Os
diff --git a/share/man/man4/lge.4 b/share/man/man4/lge.4
index 0e9ecbd421df..6d527b9c6cec 100644
--- a/share/man/man4/lge.4
+++ b/share/man/man4/lge.4
@@ -29,8 +29,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 16, 2005
.Dt LGE 4
.Os
diff --git a/share/man/man4/linux.4 b/share/man/man4/linux.4
index ecf633f39648..0efc469985f9 100644
--- a/share/man/man4/linux.4
+++ b/share/man/man4/linux.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 9, 2022
.Dt LINUX 4
.Os
diff --git a/share/man/man4/liquidio.4 b/share/man/man4/liquidio.4
index 075b361605b9..4713863c398f 100644
--- a/share/man/man4/liquidio.4
+++ b/share/man/man4/liquidio.4
@@ -28,7 +28,6 @@
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\" $FreeBSD$
.\"
.Dd August 17, 2017
.Dt LIQUIDIO 4
diff --git a/share/man/man4/lm75.4 b/share/man/man4/lm75.4
index 75f6907bda76..1eecdfad7a09 100644
--- a/share/man/man4/lm75.4
+++ b/share/man/man4/lm75.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2017
.Dt LM75 4
.Os
diff --git a/share/man/man4/lo.4 b/share/man/man4/lo.4
index 808d93e01333..2f0242b267c2 100644
--- a/share/man/man4/lo.4
+++ b/share/man/man4/lo.4
@@ -27,9 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)lo.4 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd January 25, 2012
.Dt LO 4
.Os
diff --git a/share/man/man4/lp.4 b/share/man/man4/lp.4
index 221b9c97ca58..8ca65696a114 100644
--- a/share/man/man4/lp.4
+++ b/share/man/man4/lp.4
@@ -28,7 +28,6 @@
.\" SUCH DAMAGE.
.\"
.\" Id: man4.i386/lp.4,v 1.9 1999/02/14 12:06:16 nsouch Exp
-.\" $FreeBSD$
.\"
.Dd March 4, 1996
.Dt LP 4
diff --git a/share/man/man4/lpbb.4 b/share/man/man4/lpbb.4
index 89b2a07a2e77..73d9d60128a7 100644
--- a/share/man/man4/lpbb.4
+++ b/share/man/man4/lpbb.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 25, 1998
.Dt LPBB 4
.Os
diff --git a/share/man/man4/lpt.4 b/share/man/man4/lpt.4
index 8b3dd578fa3c..aea1a83275c2 100644
--- a/share/man/man4/lpt.4
+++ b/share/man/man4/lpt.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 14, 1999
.Dt LPT 4
.Os
diff --git a/share/man/man4/ltc430x.4 b/share/man/man4/ltc430x.4
index 0eba67e40fad..91a0fe5d35bc 100644
--- a/share/man/man4/ltc430x.4
+++ b/share/man/man4/ltc430x.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 2, 2020
.Dt LTC430X 4
.Os
diff --git a/share/man/man4/mac.4 b/share/man/man4/mac.4
index 98d685143d88..006922a17f2b 100644
--- a/share/man/man4/mac.4
+++ b/share/man/man4/mac.4
@@ -28,9 +28,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 29, 2022
+.Dd July 25, 2023
.Dt MAC 4
.Os
.Sh NAME
@@ -57,11 +55,13 @@ Currently, the following MAC policy modules are shipped with
.It Xr mac_bsdextended 4 Ta "File system firewall" Ta no Ta any time
.It Xr mac_ddb 4 Ta "ddb(4) interface restrictions" Ta no Ta any time
.It Xr mac_ifoff 4 Ta "Interface silencing" Ta no Ta any time
+.It Xr mac_ipacl 4 Ta "IP Address access control" Ta no Ta any time
.It Xr mac_lomac 4 Ta "Low-Watermark MAC policy" Ta yes Ta boot only
.It Xr mac_mls 4 Ta "Confidentiality policy" Ta yes Ta boot only
-.It Xr mac_none 4 Ta "Sample no-op policy" Ta no Ta any time
+.It Xr mac_ntpd 4 Ta "Non-root NTP Daemon policy" Ta no Ta any time
.It Xr mac_partition 4 Ta "Process partition policy" Ta yes Ta any time
.It Xr mac_portacl 4 Ta "Port bind(2) access control" Ta no Ta any time
+.It Xr mac_priority 4 Ta "Scheduling priority policy" Ta no Ta any time
.It Xr mac_seeotheruids 4 Ta "See-other-UIDs policy" Ta no Ta any time
.It Xr mac_test 4 Ta "MAC testing policy" Ta no Ta any time
.El
@@ -204,12 +204,16 @@ man page.
.Xr mac_bsdextended 4 ,
.Xr mac_ddb 4 ,
.Xr mac_ifoff 4 ,
+.Xr mac_ipacl 4 ,
.Xr mac_lomac 4 ,
.Xr mac_mls 4 ,
.Xr mac_none 4 ,
+.Xr mac_ntpd 4 ,
.Xr mac_partition 4 ,
.Xr mac_portacl 4 ,
+.Xr mac_priority 4 ,
.Xr mac_seeotheruids 4 ,
+.Xr mac_stub 4 ,
.Xr mac_test 4 ,
.Xr login.conf 5 ,
.Xr maclabel 7 ,
diff --git a/share/man/man4/mac_biba.4 b/share/man/man4/mac_biba.4
index 7b7cf6eb0e8f..acab6b3eaac8 100644
--- a/share/man/man4/mac_biba.4
+++ b/share/man/man4/mac_biba.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 18, 2002
.Dt MAC_BIBA 4
.Os
diff --git a/share/man/man4/mac_bsdextended.4 b/share/man/man4/mac_bsdextended.4
index a8f9aa2f786f..c96370a8175b 100644
--- a/share/man/man4/mac_bsdextended.4
+++ b/share/man/man4/mac_bsdextended.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 21, 2005
.Dt MAC_BSDEXTENDED 4
.Os
diff --git a/share/man/man4/mac_ifoff.4 b/share/man/man4/mac_ifoff.4
index 3800eeaf4cb4..05332c8cabd8 100644
--- a/share/man/man4/mac_ifoff.4
+++ b/share/man/man4/mac_ifoff.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 25, 2015
.Dt MAC_IFOFF 4
.Os
diff --git a/share/man/man4/mac_ipacl.4 b/share/man/man4/mac_ipacl.4
new file mode 100644
index 000000000000..5ff5ad3fdf55
--- /dev/null
+++ b/share/man/man4/mac_ipacl.4
@@ -0,0 +1,164 @@
+.\" Copyright (c) 2019, 2023 Shivank Garg <shivank@FreeBSD.org>
+.\"
+.\" This code was developed as a Google Summer of Code 2019 project
+.\" under the guidance of Bjoern A. Zeeb.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 25, 2023
+.Dt MAC_IPACL 4
+.Os
+.Sh NAME
+.Nm mac_ipacl
+.Nd "IP Address access control policy"
+.Sh SYNOPSIS
+Add the following lines in your kernel configuration file to compile the
+IP address access control policy into your kernel:
+.Bd -ragged -offset indent
+.Cd "options MAC"
+.Cd "options MAC_IPACL"
+.Ed
+.Pp
+To load the mac_ipacl policy module at boot time, add the
+following line in your kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "options MAC"
+.Ed
+.Pp
+and in
+.Xr loader.conf 5 add:
+.Pp
+.Dl "mac_ipacl_load=""YES"""
+.Sh DESCRIPTION
+The
+.Nm
+policy allows the root of the host to use the
+.Xr sysctl 8
+interface to limit the
+.Xr VNET 9
+jail's ability to set IPv4 and IPv6 addresses.
+So, the host can
+define rules for jails and their interfaces about IP addresses
+with
+.Xr sysctl 8
+MIBs.
+.Pp
+Its default behavior is to deny all IP addresses for the jail if
+.Nm
+policy is enforced and allow/deny IP (or subnets) according to the
+.Va security.mac.ipacl.rules
+string specified with
+.Xr sysctl 8
+.Ss Runtime Configuration
+The following
+.Xr sysctl 8
+MIBs are used to control enforcement and behavior of this MAC Policy.
+.Bl -tag -width indent
+.It Va security.mac.ipacl.ipv4
+Enforce
+.Nm
+for IPv4 addresses.
+(Default: 1).
+.It Va security.mac.ipacl.ipv6
+Enforce
+.Nm
+for IPv6 addresses.
+(Default: 1).
+.It Va security.mac.ipacl.rules
+The IP address access control list is specified in the following format:
+.Pp
+.Sm off
+.D1 jid , allow , interface , addr_family , IP_addr / prefix Op @ jid , ...
+.Sm on
+.Bl -tag -width "interface"
+.It jid
+Describe the jail id of the jail for which the rule is written.
+.It allow
+1 for allow and 0 for deny.
+Decides action performed for the rule.
+.It interface
+Name of the interface the rule is enforced for.
+If the interface is left empty then it is a wildcard to enforce the
+rule for all interfaces.
+.It addr_family
+Address family of the IP_addr.
+The input to be given as AF_INET or AF_INET6
+string only.
+.It IP_addr
+IP address (or subnet) to be allowed/denied.
+Action depends on the prefix length.
+.It prefix
+Prefix length of the subnet to be enforced by the policy.
+-1 implies the policy is enforced for the individual IP address.
+For a non-negative value, a range of IP addresses (present in subnet)
+which is calculated as subnet = IP_addr & mask.
+.El
+.El
+.Sh EXAMPLES
+Behavior of the
+.Nm
+policy module for different inputs of sysctl variable:
+.Bl -tag -width "1."
+.It 1.
+Assign ipv4=1, ipv6=0 and rules="1,1,,AF_INET,169.254.123.123/-1"
+.Pp
+It allow only 169.254.123.123 IPv4 address for all interfaces (wildcard) of jail 1.
+It allows all IPv6 addresses since the policy is not enforced for IPv6.
+.It 2.
+Assign ipv4=1, ipv6=1 and rules="1,1,epair0b,AF_INET6,fe80::/32@1,0,epair0b,AF_INET6,fe80::abcd/-1"
+.Pp
+It denies all IPv4 addresses as the policy is enforced but no rules are specified
+about it.
+It allows all IPv6 addresses in subnet fe80::/32 except
+fe80::abcd for interface epair0b only.
+.It 3.
+Assign ipv4=1, ipv6=1, rules="2,1,,AF_INET6,fc00::/7@2,0,,AF_INET6,fc00::1111:2200/120@2,1,,AF_INET6,fc00::1111:2299/-1@1,1,,AF_INET,198.51.100.0/24"
+.Pp
+It allows IPv4 in subnet 198.51.100.0/24 for jail 2 and
+all interfaces.
+It allows IPv6 addresses in subnet fc00::/7 but
+denies subnet fc00::1111:2200/120, and allows individual IP
+fc00::1111:2299 from the denied subnet for all interfaces in jail 2.
+.El
+Please refer to mac/ipacl tests-framework for wide variety of examples on using
+the ipacl module.
+.Sh LIMITATIONS/PRECAUTIONS
+In the case where multiple rules are applicable to an IP address or
+a set of IP addresses, the rule that is defined later in the list
+determines the outcome, disregarding any previous rule for that IP
+address.
+.Sh FUTURE WORKS
+Rules are given with sysctl interface which gets very complex to give them
+all in command line.
+It has to be simplified with a better way to input those rules.
+.Sh SEE ALSO
+.Xr mac 4 ,
+.Xr mac 9
+.Sh AUTHORS
+The
+.Nm
+policy module was developed as a Google Summer of Code Project in 2019
+by
+.An -nosplit
+.An "Shivank Garg" Aq Mt shivank@FreeBSD.org
+under the guidance of
+.An "Bjoern A. Zeeb" Aq Mt bz@FreeBSD.org .
diff --git a/share/man/man4/mac_lomac.4 b/share/man/man4/mac_lomac.4
index 2085655ec40c..702646f9c233 100644
--- a/share/man/man4/mac_lomac.4
+++ b/share/man/man4/mac_lomac.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 25, 2012
.Dt MAC_LOMAC 4
.Os
diff --git a/share/man/man4/mac_mls.4 b/share/man/man4/mac_mls.4
index 54502f96ab2c..608c1a7239ab 100644
--- a/share/man/man4/mac_mls.4
+++ b/share/man/man4/mac_mls.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 25, 2015
.Dt MAC_MLS 4
.Os
diff --git a/share/man/man4/mac_none.4 b/share/man/man4/mac_none.4
index 45b4ae6b91e6..ee9309069cc0 100644
--- a/share/man/man4/mac_none.4
+++ b/share/man/man4/mac_none.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 25, 2015
.Dt MAC_NONE 4
.Os
diff --git a/share/man/man4/mac_ntpd.4 b/share/man/man4/mac_ntpd.4
index 85abfd0c97c0..083af4b6e672 100644
--- a/share/man/man4/mac_ntpd.4
+++ b/share/man/man4/mac_ntpd.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 20, 2018
.Dt MAC_NTPD 4
.Os
diff --git a/share/man/man4/mac_partition.4 b/share/man/man4/mac_partition.4
index ecf65ea8d518..f526601eee6c 100644
--- a/share/man/man4/mac_partition.4
+++ b/share/man/man4/mac_partition.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 25, 2015
.Dt MAC_PARTITION 4
.Os
diff --git a/share/man/man4/mac_portacl.4 b/share/man/man4/mac_portacl.4
index fce539376b15..ca7be679aa70 100644
--- a/share/man/man4/mac_portacl.4
+++ b/share/man/man4/mac_portacl.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 9, 2004
.Dt MAC_PORTACL 4
.Os
diff --git a/share/man/man4/mac_priority.4 b/share/man/man4/mac_priority.4
index 868d027d5233..c63197d5fc29 100644
--- a/share/man/man4/mac_priority.4
+++ b/share/man/man4/mac_priority.4
@@ -125,4 +125,4 @@ MAC first appeared in
and
.Nm
first appeared in
-.Fx 14.0 .
+.Fx 13.1 .
diff --git a/share/man/man4/mac_seeotheruids.4 b/share/man/man4/mac_seeotheruids.4
index 1b45d55614aa..5b1718bf83d4 100644
--- a/share/man/man4/mac_seeotheruids.4
+++ b/share/man/man4/mac_seeotheruids.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 25, 2015
.Dt MAC_SEEOTHERUIDS 4
.Os
diff --git a/share/man/man4/mac_stub.4 b/share/man/man4/mac_stub.4
index 66c5b978b2ac..7126898e447d 100644
--- a/share/man/man4/mac_stub.4
+++ b/share/man/man4/mac_stub.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 25, 2015
.Dt MAC_STUB 4
.Os
diff --git a/share/man/man4/mac_test.4 b/share/man/man4/mac_test.4
index 9039c4b46282..6c5c056e2c29 100644
--- a/share/man/man4/mac_test.4
+++ b/share/man/man4/mac_test.4
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 25, 2015
.Dt MAC_TEST 4
.Os
diff --git a/share/man/man4/malo.4 b/share/man/man4/malo.4
index ea1ffb5c2fe9..00b4ce4cd9ba 100644
--- a/share/man/man4/malo.4
+++ b/share/man/man4/malo.4
@@ -28,8 +28,6 @@
.\" IN CONTRACT, STRICT 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 DAMAGES.
-.\"
-.\" $FreeBSD$
.\"/
.Dd June 24, 2015
.Dt MALO 4
diff --git a/share/man/man4/man4.aarch64/Makefile b/share/man/man4/man4.aarch64/Makefile
index d1fbced3b0a8..a0161f8f4900 100644
--- a/share/man/man4/man4.aarch64/Makefile
+++ b/share/man/man4/man4.aarch64/Makefile
@@ -1,4 +1,3 @@
-# $FreeBSD$
.PATH: ${.CURDIR}/../man4.arm # Some manpages are common to arm and aarch64
diff --git a/share/man/man4/man4.aarch64/Makefile.depend b/share/man/man4/man4.aarch64/Makefile.depend
new file mode 100644
index 000000000000..f80275d86ab1
--- /dev/null
+++ b/share/man/man4/man4.aarch64/Makefile.depend
@@ -0,0 +1,11 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+
+
+.include <dirdeps.mk>
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif
diff --git a/share/man/man4/man4.aarch64/armv8crypto.4 b/share/man/man4/man4.aarch64/armv8crypto.4
index 375f3ca1a135..7b8704395daf 100644
--- a/share/man/man4/man4.aarch64/armv8crypto.4
+++ b/share/man/man4/man4.aarch64/armv8crypto.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 29, 2020
.Dt ARMV8CRYPTO 4
.Os
diff --git a/share/man/man4/man4.aarch64/enetc.4 b/share/man/man4/man4.aarch64/enetc.4
index 4680fd478813..33f796347f96 100644
--- a/share/man/man4/man4.aarch64/enetc.4
+++ b/share/man/man4/man4.aarch64/enetc.4
@@ -1,5 +1,5 @@
.\" -
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 Alstom Group.
.\" Copyright (c) 2021 Semihalf.
diff --git a/share/man/man4/man4.aarch64/felix.4 b/share/man/man4/man4.aarch64/felix.4
index 738309a4cc84..15caef6d274f 100644
--- a/share/man/man4/man4.aarch64/felix.4
+++ b/share/man/man4/man4.aarch64/felix.4
@@ -1,5 +1,5 @@
.\" -
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 Alstom Group.
.\" Copyright (c) 2021 Semihalf.
diff --git a/share/man/man4/man4.aarch64/rk_gpio.4 b/share/man/man4/man4.aarch64/rk_gpio.4
index b0c9e50d81cf..69bcb1671f85 100644
--- a/share/man/man4/man4.aarch64/rk_gpio.4
+++ b/share/man/man4/man4.aarch64/rk_gpio.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd Apr 26, 2018
.Dt RK_GPIO 4
.Os
diff --git a/share/man/man4/man4.aarch64/rk_grf.4 b/share/man/man4/man4.aarch64/rk_grf.4
index 792e9ef23ba6..64ed468c1983 100644
--- a/share/man/man4/man4.aarch64/rk_grf.4
+++ b/share/man/man4/man4.aarch64/rk_grf.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd Apr 26, 2018
.Dt RK_GRF 4
.Os
diff --git a/share/man/man4/man4.aarch64/rk_i2c.4 b/share/man/man4/man4.aarch64/rk_i2c.4
index 277c875aff7e..f30b510e7655 100644
--- a/share/man/man4/man4.aarch64/rk_i2c.4
+++ b/share/man/man4/man4.aarch64/rk_i2c.4
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2018 Emmanuel Vadot <manu@freebsd.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 14, 2018
.Dt RK_I2C 4
.Os
diff --git a/share/man/man4/man4.aarch64/rk_pinctrl.4 b/share/man/man4/man4.aarch64/rk_pinctrl.4
index 6135df66c7aa..c196c00d52b7 100644
--- a/share/man/man4/man4.aarch64/rk_pinctrl.4
+++ b/share/man/man4/man4.aarch64/rk_pinctrl.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd Apr 26, 2018
.Dt RK_PINCTRL 4
.Os
diff --git a/share/man/man4/man4.arm/Makefile b/share/man/man4/man4.arm/Makefile
index 76146f4ebdb7..e2a41559410b 100644
--- a/share/man/man4/man4.arm/Makefile
+++ b/share/man/man4/man4.arm/Makefile
@@ -1,4 +1,3 @@
-# $FreeBSD$
MAN= \
aw_gpio.4 \
diff --git a/share/man/man4/man4.arm/Makefile.depend b/share/man/man4/man4.arm/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man4/man4.arm/Makefile.depend
+++ b/share/man/man4/man4.arm/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man4/man4.arm/am335x_dmtpps.4 b/share/man/man4/man4.arm/am335x_dmtpps.4
index fadd702a6174..d565c65e2cf1 100644
--- a/share/man/man4/man4.arm/am335x_dmtpps.4
+++ b/share/man/man4/man4.arm/am335x_dmtpps.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 12, 2015
.Dt AM335X_DMTPPS 4
.Os
diff --git a/share/man/man4/man4.arm/aw_gpio.4 b/share/man/man4/man4.arm/aw_gpio.4
index 0bac2a59bc69..3d72e82b3efc 100644
--- a/share/man/man4/man4.arm/aw_gpio.4
+++ b/share/man/man4/man4.arm/aw_gpio.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd Dec 25, 2017
.Dt AW_GPIO 4
.Os
diff --git a/share/man/man4/man4.arm/aw_mmc.4 b/share/man/man4/man4.arm/aw_mmc.4
index 27994e27c51f..eb7fc9ce020a 100644
--- a/share/man/man4/man4.arm/aw_mmc.4
+++ b/share/man/man4/man4.arm/aw_mmc.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd Dec 25, 2017
.Dt AW_MMC 4
.Os
diff --git a/share/man/man4/man4.arm/aw_rtc.4 b/share/man/man4/man4.arm/aw_rtc.4
index 8fda671d6858..5b656ec679e4 100644
--- a/share/man/man4/man4.arm/aw_rtc.4
+++ b/share/man/man4/man4.arm/aw_rtc.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd Dec 25, 2017
.Dt AW_RTC 4
.Os
diff --git a/share/man/man4/man4.arm/aw_sid.4 b/share/man/man4/man4.arm/aw_sid.4
index a6e21207f0da..be441033d242 100644
--- a/share/man/man4/man4.arm/aw_sid.4
+++ b/share/man/man4/man4.arm/aw_sid.4
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2018 Kyle Evans <kevans@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 6, 2018
.Dt AW_SID 4
.Os
diff --git a/share/man/man4/man4.arm/aw_spi.4 b/share/man/man4/man4.arm/aw_spi.4
index 630cfda95177..f8985e1c16bb 100644
--- a/share/man/man4/man4.arm/aw_spi.4
+++ b/share/man/man4/man4.arm/aw_spi.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 17, 2018
.Dt AW_SPI 4
.Os
diff --git a/share/man/man4/man4.arm/aw_syscon.4 b/share/man/man4/man4.arm/aw_syscon.4
index 8430e63b8f14..034bca716bcf 100644
--- a/share/man/man4/man4.arm/aw_syscon.4
+++ b/share/man/man4/man4.arm/aw_syscon.4
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2018 Kyle Evans <kevans@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 7, 2018
.Dt AW_SYSCON 4
.Os
diff --git a/share/man/man4/man4.arm/bcm283x_pwm.4 b/share/man/man4/man4.arm/bcm283x_pwm.4
index 2b1266a7046a..1fb5a830ace7 100644
--- a/share/man/man4/man4.arm/bcm283x_pwm.4
+++ b/share/man/man4/man4.arm/bcm283x_pwm.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2017 Poul-Henning Kamp <phk@FreeBSD.org>
.\" All rights reserved.
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 10, 2018
.Dt BCM283X_PWM 4
.Os
diff --git a/share/man/man4/man4.arm/devcfg.4 b/share/man/man4/man4.arm/devcfg.4
index f33044613077..ddf368a85f24 100644
--- a/share/man/man4/man4.arm/devcfg.4
+++ b/share/man/man4/man4.arm/devcfg.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 28, 2013
.Dt DEVCFG 4
.Os
diff --git a/share/man/man4/man4.arm/imx6_ahci.4 b/share/man/man4/man4.arm/imx6_ahci.4
index df20e79b061d..cfe8a87deb6f 100644
--- a/share/man/man4/man4.arm/imx6_ahci.4
+++ b/share/man/man4/man4.arm/imx6_ahci.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 7, 2018
.Dt IMX6_AHCI 4
.Os
diff --git a/share/man/man4/man4.arm/imx6_snvs.4 b/share/man/man4/man4.arm/imx6_snvs.4
index d372d067cb15..b36c3ddd91c1 100644
--- a/share/man/man4/man4.arm/imx6_snvs.4
+++ b/share/man/man4/man4.arm/imx6_snvs.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2018
.Dt IMX6_SNVS 4
.Os
diff --git a/share/man/man4/man4.arm/imx_spi.4 b/share/man/man4/man4.arm/imx_spi.4
index 8ce5bc0e8b41..e7555ed20d94 100644
--- a/share/man/man4/man4.arm/imx_spi.4
+++ b/share/man/man4/man4.arm/imx_spi.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 9, 2018
.Dt IMX_SPI 4
.Os
diff --git a/share/man/man4/man4.arm/imx_wdog.4 b/share/man/man4/man4.arm/imx_wdog.4
index 062c84b23b24..4b993e1d066b 100644
--- a/share/man/man4/man4.arm/imx_wdog.4
+++ b/share/man/man4/man4.arm/imx_wdog.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 7, 2018
.Dt IMX_WDOG 4
.Os
diff --git a/share/man/man4/man4.arm/mge.4 b/share/man/man4/man4.arm/mge.4
index ddbacaf8c3f4..e949b36f4307 100644
--- a/share/man/man4/man4.arm/mge.4
+++ b/share/man/man4/man4.arm/mge.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 27, 2008
.Dt MGE 4
.Os
diff --git a/share/man/man4/man4.arm/ti_adc.4 b/share/man/man4/man4.arm/ti_adc.4
index 7c70c27383d2..d71547231e4c 100644
--- a/share/man/man4/man4.arm/ti_adc.4
+++ b/share/man/man4/man4.arm/ti_adc.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 1, 2014
.Dt TI_ADC 4
.Os
diff --git a/share/man/man4/man4.i386/CPU_ELAN.4 b/share/man/man4/man4.i386/CPU_ELAN.4
index 5405743ef325..c77b6cdc30a2 100644
--- a/share/man/man4/man4.i386/CPU_ELAN.4
+++ b/share/man/man4/man4.i386/CPU_ELAN.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 23, 2003
.Dt CPU_ELAN 4 i386
.Os
diff --git a/share/man/man4/man4.i386/Makefile b/share/man/man4/man4.i386/Makefile
index 3dfc5f151f9f..f84f0797a62c 100644
--- a/share/man/man4/man4.i386/Makefile
+++ b/share/man/man4/man4.i386/Makefile
@@ -1,8 +1,5 @@
-# $FreeBSD$
MAN= apm.4 \
- ce.4 \
- cp.4 \
CPU_ELAN.4 \
glxiic.4 \
glxsb.4 \
diff --git a/share/man/man4/man4.i386/Makefile.depend b/share/man/man4/man4.i386/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man4/man4.i386/Makefile.depend
+++ b/share/man/man4/man4.i386/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man4/man4.i386/apm.4 b/share/man/man4/man4.i386/apm.4
index 706ab226df3a..48248e8a4cdd 100644
--- a/share/man/man4/man4.i386/apm.4
+++ b/share/man/man4/man4.i386/apm.4
@@ -9,8 +9,6 @@
.\" the author assume any responsibility for damages incurred with its
.\" use.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 1, 1994
.Dt APM 4 i386
.Os
diff --git a/share/man/man4/man4.i386/cp.4 b/share/man/man4/man4.i386/cp.4
deleted file mode 100644
index 2e86e03a7de3..000000000000
--- a/share/man/man4/man4.i386/cp.4
+++ /dev/null
@@ -1,95 +0,0 @@
-.\" Copyright (c) 2003-2004 Roman Kurakin <rik@cronyx.ru>
-.\" Copyright (c) 2003-2004 Cronyx Engineering
-.\" All rights reserved.
-.\"
-.\" This software is distributed with NO WARRANTIES, not even the implied
-.\" warranties for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-.\"
-.\" Authors grant any other persons or organisations a permission to use,
-.\" modify and redistribute this software in source and binary forms,
-.\" as long as this message is kept with the software, all derivative
-.\" works or modified versions.
-.\"
-.\" Cronyx Id: cp.4,v 1.1.2.5 2004/06/21 17:47:40 rik Exp $
-.\" $FreeBSD$
-.\"
-.Dd October 22, 2021
-.Dt CP 4 i386
-.Os
-.Sh NAME
-.Nm cp
-.Nd "driver for synchronous Cronyx Tau-PCI WAN adapters"
-.Sh SYNOPSIS
-To compile this driver into the kernel,
-place the following line in your
-kernel configuration file:
-.Bd -ragged -offset indent
-.Cd "device cp"
-.Ed
-.Pp
-Alternatively, to load the driver as a
-module at boot time, place the following line in
-.Xr loader.conf 5 :
-.Bd -literal -offset indent
-if_cp_load="YES"
-.Ed
-.Pp
-.Sh DESCRIPTION
-The
-.Nm
-driver creates a
-.Xr netgraph 4
-node for each device found.
-The node is usually paired with
-.Xr ng_async 4 ,
-.Xr ng_cisco 4 ,
-.Xr ng_frame_relay 4
-or with
-.Xr ng_ppp 4
-under control of net/mpd5 port.
-.Pp
-Refer to
-.Xr sconfig 8
-for information about the
-.Nm
-adapter configuration.
-.Sh HARDWARE
-The
-.Nm
-driver supports the following models of Tau-PCI WAN adapters:
-.Pp
-.Bl -tag -width 20n -compact
-.It Cronyx Tau-PCI
-V.35 and RS-232 interfaces
-.It Cronyx Tau-PCI/R
-RS-530(RS-449) and X.21 interfaces
-.It Cronyx Tau-PCI-L
-one V.35 and RS-232 interface, low profile
-.It Cronyx Tau-PCI-L/R
-one RS-530(RS-449) and X.21 interface, low profile
-.It Cronyx Tau-PCI-E1
-fractional E1 interfaces
-.It Cronyx Tau-PCI-G703
-unframed E1 interfaces
-.It Cronyx Tau-PCI-2E1
-fractional E1 and unframed E1 interfaces
-.It Cronyx Tau-PCI-4E1
-fractional E1 and unframed E1 interfaces
-.It Cronyx Tau-PCI-E3
-E3 interface
-.It Cronyx Tau-PCI-T3
-T3 interface
-.It Cronyx Tau-PCI-STS1
-STS-1 interface
-.El
-.Sh SEE ALSO
-.Xr ce 4 ,
-.Xr netgraph 4 ,
-.Xr sconfig 8
-.Sh HISTORY
-The
-.Nm
-driver was added in
-.Fx 5.3
-and
-.Fx 4.11 .
diff --git a/share/man/man4/man4.i386/glxiic.4 b/share/man/man4/man4.i386/glxiic.4
index 63f59dc1c092..5e193799296e 100644
--- a/share/man/man4/man4.i386/glxiic.4
+++ b/share/man/man4/man4.i386/glxiic.4
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 15, 2011
.Dt GLXIIC 4 i386
.Os
diff --git a/share/man/man4/man4.i386/glxsb.4 b/share/man/man4/man4.i386/glxsb.4
index c08d57906136..3dbd650ac8ed 100644
--- a/share/man/man4/man4.i386/glxsb.4
+++ b/share/man/man4/man4.i386/glxsb.4
@@ -14,8 +14,6 @@
.\"ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\"OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 29, 2020
.Dt GLXSB 4 i386
.Os
diff --git a/share/man/man4/man4.i386/longrun.4 b/share/man/man4/man4.i386/longrun.4
index 865bb8d35bc1..329fcd4f69e4 100644
--- a/share/man/man4/man4.i386/longrun.4
+++ b/share/man/man4/man4.i386/longrun.4
@@ -22,8 +22,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd June 30, 2001
.Dt LONGRUN 4 i386
.Os
diff --git a/share/man/man4/man4.i386/npx.4 b/share/man/man4/man4.i386/npx.4
index 14a8eef1d64b..982360c5df49 100644
--- a/share/man/man4/man4.i386/npx.4
+++ b/share/man/man4/man4.i386/npx.4
@@ -28,7 +28,6 @@
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.\" $Id: npx.4,v 1.1 1993/08/06 10:58:03 cgd Exp $
-.\" $FreeBSD$
.\"
.Dd August 28, 1993
.Dt NPX 4 i386
diff --git a/share/man/man4/man4.i386/pae.4 b/share/man/man4/man4.i386/pae.4
index 55c2aa62cce2..3ebb2bffc9d6 100644
--- a/share/man/man4/man4.i386/pae.4
+++ b/share/man/man4/man4.i386/pae.4
@@ -29,8 +29,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 8, 2003
.Dt PAE 4 i386
.Os
diff --git a/share/man/man4/man4.i386/pbio.4 b/share/man/man4/man4.i386/pbio.4
index d04eb325d169..927ac46c8209 100644
--- a/share/man/man4/man4.i386/pbio.4
+++ b/share/man/man4/man4.i386/pbio.4
@@ -24,8 +24,6 @@
.\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
.\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 14, 2005
.Dt PBIO 4 i386
.Os
diff --git a/share/man/man4/man4.i386/perfmon.4 b/share/man/man4/man4.i386/perfmon.4
index b9a00f53fd82..7a899e863f1b 100644
--- a/share/man/man4/man4.i386/perfmon.4
+++ b/share/man/man4/man4.i386/perfmon.4
@@ -25,8 +25,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd March 26, 1996
.Dt PERFMON 4 i386
.Os
diff --git a/share/man/man4/man4.i386/pnp.4 b/share/man/man4/man4.i386/pnp.4
index fadde4fe20e3..3afa48ae3f09 100644
--- a/share/man/man4/man4.i386/pnp.4
+++ b/share/man/man4/man4.i386/pnp.4
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 20, 2001
.Dt PNP 4 i386
.Os
diff --git a/share/man/man4/man4.i386/pnpbios.4 b/share/man/man4/man4.i386/pnpbios.4
index b386be21f629..20097fc580ba 100644
--- a/share/man/man4/man4.i386/pnpbios.4
+++ b/share/man/man4/man4.i386/pnpbios.4
@@ -23,8 +23,6 @@
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.Dd September 20, 2001
.Dt PNPBIOS 4 i386
.Os
diff --git a/share/man/man4/man4.i386/sbni.4 b/share/man/man4/man4.i386/sbni.4
index 779deba287dc..e311d82e84ef 100644
--- a/share/man/man4/man4.i386/sbni.4
+++ b/share/man/man4/man4.i386/sbni.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 8, 2002
.Dt SBNI 4 i386
.Os
diff --git a/share/man/man4/man4.i386/smapi.4 b/share/man/man4/man4.i386/smapi.4
index 116c40197cac..494e4bcc3164 100644
--- a/share/man/man4/man4.i386/smapi.4
+++ b/share/man/man4/man4.i386/smapi.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 1, 2003
.Dt SMAPI 4 i386
.Os
diff --git a/share/man/man4/man4.i386/vpd.4 b/share/man/man4/man4.i386/vpd.4
index ba7acd4aea2c..83970ee1a6d5 100644
--- a/share/man/man4/man4.i386/vpd.4
+++ b/share/man/man4/man4.i386/vpd.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 31, 2004
.Dt VPD 4 i386
.Os
diff --git a/share/man/man4/man4.powerpc/Makefile b/share/man/man4/man4.powerpc/Makefile
index e6ade9778db3..dbc133cc985b 100644
--- a/share/man/man4/man4.powerpc/Makefile
+++ b/share/man/man4/man4.powerpc/Makefile
@@ -1,4 +1,3 @@
-# $FreeBSD$
MAN= adb.4 \
akbd.4 \
diff --git a/share/man/man4/man4.powerpc/Makefile.depend b/share/man/man4/man4.powerpc/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man4/man4.powerpc/Makefile.depend
+++ b/share/man/man4/man4.powerpc/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man4/man4.powerpc/abtn.4 b/share/man/man4/man4.powerpc/abtn.4
index 670f5a270b5f..92d643d5cf32 100644
--- a/share/man/man4/man4.powerpc/abtn.4
+++ b/share/man/man4/man4.powerpc/abtn.4
@@ -24,8 +24,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 16, 2011
.Dt ABTN 4
.Os
diff --git a/share/man/man4/man4.powerpc/adb.4 b/share/man/man4/man4.powerpc/adb.4
index 05a17a49b240..a781787995ab 100644
--- a/share/man/man4/man4.powerpc/adb.4
+++ b/share/man/man4/man4.powerpc/adb.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 3, 2009
.Dt ADB 4
.Os
diff --git a/share/man/man4/man4.powerpc/akbd.4 b/share/man/man4/man4.powerpc/akbd.4
index 2ecaaefd1022..44af08961122 100644
--- a/share/man/man4/man4.powerpc/akbd.4
+++ b/share/man/man4/man4.powerpc/akbd.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 3, 2009
.Dt AKBD 4
.Os
diff --git a/share/man/man4/man4.powerpc/ams.4 b/share/man/man4/man4.powerpc/ams.4
index 00ce975bac86..21be3c098920 100644
--- a/share/man/man4/man4.powerpc/ams.4
+++ b/share/man/man4/man4.powerpc/ams.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 3, 2009
.Dt AMS 4
.Os
diff --git a/share/man/man4/man4.powerpc/cuda.4 b/share/man/man4/man4.powerpc/cuda.4
index 021b6a18d94f..7171ebb42373 100644
--- a/share/man/man4/man4.powerpc/cuda.4
+++ b/share/man/man4/man4.powerpc/cuda.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 3, 2009
.Dt CUDA 4
.Os
diff --git a/share/man/man4/man4.powerpc/dtsec.4 b/share/man/man4/man4.powerpc/dtsec.4
index 93d5b5759fc3..4a60dd0b8824 100644
--- a/share/man/man4/man4.powerpc/dtsec.4
+++ b/share/man/man4/man4.powerpc/dtsec.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 31, 2017
.Dt DTSEC 4
.Os
diff --git a/share/man/man4/man4.powerpc/llan.4 b/share/man/man4/man4.powerpc/llan.4
index b9bf49ae614f..c32ddbca6a00 100644
--- a/share/man/man4/man4.powerpc/llan.4
+++ b/share/man/man4/man4.powerpc/llan.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 19, 2015
.Dt LLAN 4
.Os
@@ -52,7 +50,7 @@ but these are not currently supported by the driver.
The
.Nm
device driver appeared in
-.Fx 10.0.
+.Fx 10.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/man4.powerpc/ofw_console.4 b/share/man/man4/man4.powerpc/ofw_console.4
index eb73235c4970..fca85a1ffa9e 100644
--- a/share/man/man4/man4.powerpc/ofw_console.4
+++ b/share/man/man4/man4.powerpc/ofw_console.4
@@ -24,7 +24,6 @@
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.\" from: OpenBSD: pcons.4,v 1.4 2003/06/02 16:16:26 miod Exp
-.\" $FreeBSD$
.\"
.Dd January 16, 2021
.Dt OFW_CONSOLE 4 powerpc
diff --git a/share/man/man4/man4.powerpc/pmu.4 b/share/man/man4/man4.powerpc/pmu.4
index 30b2762fac06..6eac20cfa6b7 100644
--- a/share/man/man4/man4.powerpc/pmu.4
+++ b/share/man/man4/man4.powerpc/pmu.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 6, 2008
.Dt PMU 4
.Os
diff --git a/share/man/man4/man4.powerpc/powermac_nvram.4 b/share/man/man4/man4.powerpc/powermac_nvram.4
index 9af093f6ef83..ed15cb79fea3 100644
--- a/share/man/man4/man4.powerpc/powermac_nvram.4
+++ b/share/man/man4/man4.powerpc/powermac_nvram.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 19, 2020
.Dt POWERMAC_NVRAM 4 powerpc
.Os
diff --git a/share/man/man4/man4.powerpc/smu.4 b/share/man/man4/man4.powerpc/smu.4
index 4916b956e577..ef2654746e62 100644
--- a/share/man/man4/man4.powerpc/smu.4
+++ b/share/man/man4/man4.powerpc/smu.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 22, 2010
.Dt SMU 4
.Os
diff --git a/share/man/man4/man4.powerpc/snd_ai2s.4 b/share/man/man4/man4.powerpc/snd_ai2s.4
index 2773b53c331f..3880751e65c9 100644
--- a/share/man/man4/man4.powerpc/snd_ai2s.4
+++ b/share/man/man4/man4.powerpc/snd_ai2s.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 20, 2009
.Dt SND_AI2S 4
.Os
diff --git a/share/man/man4/man4.powerpc/snd_davbus.4 b/share/man/man4/man4.powerpc/snd_davbus.4
index ed3f3edea4ff..6958ebd4b4b5 100644
--- a/share/man/man4/man4.powerpc/snd_davbus.4
+++ b/share/man/man4/man4.powerpc/snd_davbus.4
@@ -23,8 +23,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 20, 2009
.Dt SND_DAVBUS 4
.Os
diff --git a/share/man/man4/man4.powerpc/tsec.4 b/share/man/man4/man4.powerpc/tsec.4
index 861e866d4c90..b3ccae648ab8 100644
--- a/share/man/man4/man4.powerpc/tsec.4
+++ b/share/man/man4/man4.powerpc/tsec.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 20, 2015
.Dt TSEC 4
.Os
diff --git a/share/man/man4/max44009.4 b/share/man/man4/max44009.4
index fa399c52cec3..474bec7dc525 100644
--- a/share/man/man4/max44009.4
+++ b/share/man/man4/max44009.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2020 Andriy Gapon <avg@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 6, 2021
.Dt MAX44009 4
.Os
diff --git a/share/man/man4/md.4 b/share/man/man4/md.4
index d6b92d86507d..acd52aecb675 100644
--- a/share/man/man4/md.4
+++ b/share/man/man4/md.4
@@ -5,8 +5,6 @@
.\" this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp
.\" ----------------------------------------------------------------------------
.\"
-.\" $FreeBSD$
-.\"
.Dd January 8, 2020
.Dt MD 4
.Os
diff --git a/share/man/man4/mdio.4 b/share/man/man4/mdio.4
index 8120b0748e75..b889dd6d5ed4 100644
--- a/share/man/man4/mdio.4
+++ b/share/man/man4/mdio.4
@@ -2,8 +2,6 @@
.\" Based on the miibus(4) manual page written by Tom Rhodes.
.\" Please see the /usr/src/COPYRIGHT file for copyright information.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 17, 2015
.Dt MDIO 4
.Os
diff --git a/share/man/man4/me.4 b/share/man/man4/me.4
index 668d346791ea..f10891c2fa8f 100644
--- a/share/man/man4/me.4
+++ b/share/man/man4/me.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 7, 2014
.Dt ME 4
.Os
diff --git a/share/man/man4/mem.4 b/share/man/man4/mem.4
index 6370d2a95525..68969d281532 100644
--- a/share/man/man4/mem.4
+++ b/share/man/man4/mem.4
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)mem.4 5.3 (Berkeley) 5/2/91
-.\" $FreeBSD$
-.\"
-.Dd March 11, 2022
+.Dd March 24, 2024
.Dt MEM 4
.Os
.Sh NAME
@@ -301,11 +298,13 @@ privilege.
.Xr memcontrol 8
.Sh HISTORY
The
-.Nm mem
+.Pa /dev/mem
+file appeared in
+.At v1
and
-.Nm kmem
-files appeared in
-.At v6 .
+.Pa /dev/kmem
+in
+.At v5 .
The ioctl interface for memory range attributes was added in
.Fx 3.2 .
.Sh BUGS
diff --git a/share/man/man4/mfi.4 b/share/man/man4/mfi.4
index 12a4ec5290da..4a55467d81f2 100644
--- a/share/man/man4/mfi.4
+++ b/share/man/man4/mfi.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd March 13, 2019
+.Dd April 19, 2023
.Dt MFI 4
.Os
.Sh NAME
@@ -81,14 +79,14 @@ If the tunable
.Va hw.mfi.mrsas_enable
is set to 1,
then the driver will reduce its probe priority to allow
-.Cd mrsas
+.Xr mrsas 4
to attach to the card instead of
.Nm .
.Pp
.Nm
does not provide ATA TRIM support.
Refer to
-.Cd mrsas
+.Xr mrsas 4
if TRIM support is required.
.Sh HARDWARE
The
diff --git a/share/man/man4/mgb.4 b/share/man/man4/mgb.4
index 6b3cafa5c63d..cf0f7aaa688d 100644
--- a/share/man/man4/mgb.4
+++ b/share/man/man4/mgb.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 28, 2021
.Dt MGB 4
.Os
diff --git a/share/man/man4/miibus.4 b/share/man/man4/miibus.4
index 62954146ea3d..f53abdb405f2 100644
--- a/share/man/man4/miibus.4
+++ b/share/man/man4/miibus.4
@@ -6,8 +6,6 @@
.\" Originally this file looked much like the NetBSD mii(4) manual page, but
.\" I doubt you would ever notice due to large differences.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2020
.Dt MIIBUS 4
.Os
diff --git a/share/man/man4/mld.4 b/share/man/man4/mld.4
index 8d35c050cc32..539138d86f5f 100644
--- a/share/man/man4/mld.4
+++ b/share/man/man4/mld.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 8, 2013
.Dt MLD 4
.Os
diff --git a/share/man/man4/mlx.4 b/share/man/man4/mlx.4
index 4aca36eff422..f7a0d64e9e73 100644
--- a/share/man/man4/mlx.4
+++ b/share/man/man4/mlx.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 15, 2017
.Dt MLX 4
.Os
diff --git a/share/man/man4/mlx4en.4 b/share/man/man4/mlx4en.4
index f9b1e3bfc8e2..69d2904508b8 100644
--- a/share/man/man4/mlx4en.4
+++ b/share/man/man4/mlx4en.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 1, 2017
.Dt MLX4EN 4
.Os
@@ -86,7 +84,7 @@ please email the specific information to
The
.Nm
device driver first appeared in
-.Fx 9.x .
+.Fx 9.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/mlx4ib.4 b/share/man/man4/mlx4ib.4
index e827ff6c51bb..536b8cab5280 100644
--- a/share/man/man4/mlx4ib.4
+++ b/share/man/man4/mlx4ib.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 1, 2017
.Dt MLX4IB 4
.Os
@@ -86,7 +84,7 @@ please email the specific information to
The
.Nm
device driver first appeared in
-.Fx 9.x .
+.Fx 9.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/mlx5en.4 b/share/man/man4/mlx5en.4
index 49ad9abb16fd..7d92e22275d6 100644
--- a/share/man/man4/mlx5en.4
+++ b/share/man/man4/mlx5en.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 20, 2021
.Dt MLX5EN 4
.Os
@@ -69,7 +67,7 @@ HW Large Receive Offload (HW LRO), VLAN tag insertion and extraction,
VLAN checksum offload, VLAN TSO, hardware rate limiting (TXRTLMT),
stateless VxLAN hardware offload for receive and transmit,
HW TLS offload for transmit, Receive Side Steering (RSS) and
-.Xr NUMA 4
+.Xr numa 4
awareness.
.Pp
The network interface name is
diff --git a/share/man/man4/mlx5ib.4 b/share/man/man4/mlx5ib.4
index 092627596765..71d634b2f695 100644
--- a/share/man/man4/mlx5ib.4
+++ b/share/man/man4/mlx5ib.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 23, 2017
.Dt MLX5IB 4
.Os
@@ -115,7 +113,7 @@ email all the specific information related to the issue to
The
.Nm
device driver first appeared in
-.Fx 12.x .
+.Fx 12.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/mlx5io.4 b/share/man/man4/mlx5io.4
index 495cd6608f47..66a767d97d31 100644
--- a/share/man/man4/mlx5io.4
+++ b/share/man/man4/mlx5io.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 2, 2019
.Dt mlx5io 4
.Os
@@ -95,7 +93,7 @@ struct mlx5_fwdump_get {
};
.Ed
.Pp
-On successfull return, the
+On successful return, the
.Dv reg_filled
field reports the number of the
.Dv buf
@@ -163,7 +161,7 @@ struct mlx5_eeprom_get {
};
.Ed
.Pp
-On successfull return, the
+On successful return, the
.Dv eeprom_info_out_len
field reports the length of the EEPROM information.
.Dv eeprom_info_buf
diff --git a/share/man/man4/mmc.4 b/share/man/man4/mmc.4
index 430bca983280..394f7bb37c41 100644
--- a/share/man/man4/mmc.4
+++ b/share/man/man4/mmc.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 10, 2021
.Dt MMC 4
.Os
diff --git a/share/man/man4/mmcsd.4 b/share/man/man4/mmcsd.4
index 9779183c64d4..7466bc546b91 100644
--- a/share/man/man4/mmcsd.4
+++ b/share/man/man4/mmcsd.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 10, 2021
.Dt MMCSD 4
.Os
diff --git a/share/man/man4/mod_cc.4 b/share/man/man4/mod_cc.4
index a00f17ede5e4..f17c6100ce23 100644
--- a/share/man/man4/mod_cc.4
+++ b/share/man/man4/mod_cc.4
@@ -27,9 +27,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 6, 2019
+.Dd September 13, 2022
.Dt MOD_CC 4
.Os
.Sh NAME
@@ -47,7 +45,7 @@ using the
.Xr kld 4
facility.
.Pp
-The default algorithm is NewReno, and all connections use the default unless
+The default algorithm is CUBIC, and all connections use the default unless
explicitly overridden using the
.Dv TCP_CONGESTION
socket option (see
@@ -127,10 +125,10 @@ For further explanation please see the internet-draft.
.Pp
Each congestion control module may also expose other MIB variables
to control their behaviour.
-Note that both newreno and cubic now support hystart++ based on the version 3 of the internet-draft.
+Note that both NewReno and CUBIC now support Hystart++ based on the version 3 of the internet-draft.
.Sh Kernel Configuration
All of the available congestion control modules may also be loaded
-via kernel configutation options.
+via kernel configuration options.
A kernel configuration is required to have at least one congestion control
algorithm built into it via kernel option and a system default specified.
Compilation of the kernel will fail if these two conditions are not met.
@@ -138,10 +136,10 @@ Compilation of the kernel will fail if these two conditions are not met.
The framework exposes the following kernel configuration options.
.Bl -tag -width ".Va CC_NEWRENO"
.It Va CC_NEWRENO
-This directive loads the newreno congestion control algorithm and is included
-in GENERIC by default.
+This directive loads the NewReno congestion control algorithm.
.It Va CC_CUBIC
-This directive loads the cubic congestion control algorithm.
+This directive loads the CUBIC congestion control algorithm and is included
+in GENERIC by default.
.It Va CC_VEGAS
This directive loads the vegas congestion control algorithm, note that
this algorithm also requires the TCP_HHOOK option as well.
@@ -160,7 +158,7 @@ this algorithm also requires the TCP_HHOOK option as well.
This directive loads the htcp congestion control algorithm.
.It Va CC_DEFAULT
This directive specifies the string that represents the name of the system default algorithm, the GENERIC kernel
-defaults this to newreno.
+defaults this to CUBIC.
.El
.Sh SEE ALSO
.Xr cc_cdg 4 ,
diff --git a/share/man/man4/mos.4 b/share/man/man4/mos.4
index e4ae8c44c1b9..da17306b5e19 100644
--- a/share/man/man4/mos.4
+++ b/share/man/man4/mos.4
@@ -13,8 +13,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 24, 2015
.Dt MOS 4
.Os
diff --git a/share/man/man4/mouse.4 b/share/man/man4/mouse.4
index 9ee3eee0041b..affc7fb7ac9e 100644
--- a/share/man/man4/mouse.4
+++ b/share/man/man4/mouse.4
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 3, 1997
.Dt MOUSE 4
.Os
diff --git a/share/man/man4/mpi3mr.4 b/share/man/man4/mpi3mr.4
new file mode 100644
index 000000000000..981979e37187
--- /dev/null
+++ b/share/man/man4/mpi3mr.4
@@ -0,0 +1,81 @@
+.\"
+.\" Copyright (c) 2023 Netflix, Inc
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" mpi3mr driver man page.
+.\"
+.Dd June 14, 2023
+.Dt MPI3MR 4
+.Os
+.Sh NAME
+.Nm mpi3mr
+.Nd "Broadcom MPIMR 3.0 IT/IR 24Gb/s SAS Tri-Mode RAID PCIe 4.0 driver"
+.Sh SYNOPSIS
+.\" To compile this driver into the kernel, place these lines in the kernel
+.\" configuration file:
+.\" .Bd -ragged -offset indent
+.\" .Cd "device pci"
+.\" .Cd "device scbus"
+.\" .Cd "device mpi3mr"
+.\" .Ed
+.\" .Pp
+The driver can be loaded as a module at boot time by placing this line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+mpi3mr_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for Broadcom Ltd. MPIMR 3.0 IT/IR PCIe 4 controller.
+.Sh HARDWARE
+These controllers are supported by the
+.Nm
+driver:
+.Pp
+.Bl -bullet -compact
+.It
+Broadcom Ltd. SAS 4116 Tri-Mode RAID Adapter
+.It
+Broadcom Ltd. 9670W-16i 24G PCIe 4.0 Tri-Mode RAID Adapters
+.It
+Broadcom Ltd. 9670-24i 24G PCIe 4.0 Tri-Mode RAID Adapters
+.It
+Broadcom Ltd. 9660-16i 24G PCIe 4.0 Tri-Mode RAID Adapters
+.It
+Broadcom Ltd. 9620-16i 24G PCIe 4.0 Tri-Mode RAID Adapters
+.It
+Broadcom Ltd. 9600-24i 24G PCIe 4.0 Tri-Mode RAID Adapters
+.It
+Broadcom Ltd. 9600-16i 24G PCIe 4.0 Tri-Mode RAID Adapters
+.It
+Broadcom Ltd. 9600W-16e 24G PCIe 4.0 Tri-Mode RAID Adapters
+.It
+Broadcom Ltd. 9600-16e 24G PCIe 4.0 Tri-Mode RAID Adapters
+.It
+Broadcom Ltd. 9600-8i8e 24G PCIe 4.0 Tri-Mode RAID Adapters
+.El
+.Sh SEE ALSO
+.Xr cam 4 ,
+.Xr cd 4 ,
+.Xr ch 4 ,
+.Xr da 4 ,
+.Xr mpr 4 ,
+.Xr pci 4 ,
+.Xr sa 4 ,
+.Xr scsi 4 .
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Fx 14.0 .
+.Sh AUTHORS
+The
+.Nm
+driver was written by
+.An Sumit Saxena Aq Mt sumit.saxena@broadcom.com ,
+and
+.An Chandrakanth Patil Aq Mt chandrakanth.patil@broadcom.com .
+This manual page was written by
+.An Warner Losh Aq Mt imp@FreeBSD.org .
diff --git a/share/man/man4/mpr.4 b/share/man/man4/mpr.4
index 3cc516397e33..e114ecfd077b 100644
--- a/share/man/man4/mpr.4
+++ b/share/man/man4/mpr.4
@@ -2,7 +2,7 @@
.\" Copyright (c) 2010 Spectra Logic Corporation
.\" Copyright (c) 2014 LSI Corp
.\" Copyright (c) 2015-2017 Avago Technologies
-.\" Copyright (c) 2015-2017 Broadcom Ltd.
+.\" Copyright (c) 2015-2022 Broadcom Ltd.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -36,7 +36,6 @@
.\" Author: Stephen McConnell <slm@FreeBSD.org>
.\"
.\" $Id$
-.\" $FreeBSD$
.\"
.Dd June 1, 2019
.Dt MPR 4
@@ -99,6 +98,10 @@ Broadcom Ltd./Avago Tech (LSI) SAS 3616 (16 Port SAS/PCIe)
Broadcom Ltd./Avago Tech (LSI) SAS 3708 (8 Port SAS/PCIe)
.It
Broadcom Ltd./Avago Tech (LSI) SAS 3716 (16 Port SAS/PCIe)
+.It
+Broadcom Ltd./Avago Tech (LSI) SAS 3816 (16 Port SAS/PCIe)
+.It
+Broadcom Ltd./Avago Tech (LSI) SAS 3916 (16 Port SAS/PCIe)
.El
.Sh CONFIGURATION
In all tunable descriptions below, X represents the adapter number.
@@ -388,6 +391,7 @@ The following levels are available:
.Xr scsi 4 ,
.Xr targ 4 ,
.Xr loader.conf 5 ,
+.Xr mprutil 8 ,
.Xr sysctl 8
.Sh HISTORY
The
@@ -401,9 +405,9 @@ driver was originally written by
.An -nosplit
.An Scott Long Aq Mt scottl@FreeBSD.org .
It has been improved and tested by LSI Corporation,
-Avago Technologies (formally LSI), and Broadcom Ltd. (formally Avago).
+Avago Technologies (formerly LSI), and Broadcom Ltd. (formerly Avago).
.Pp
-This man page was written by
+This manual page was written by
.An Ken Merry Aq Mt ken@FreeBSD.org
with additional input from
.An Stephen McConnell Aq Mt slm@FreeBSD.org .
diff --git a/share/man/man4/mps.4 b/share/man/man4/mps.4
index fac131429fec..5bcb55a54599 100644
--- a/share/man/man4/mps.4
+++ b/share/man/man4/mps.4
@@ -36,7 +36,6 @@
.\" Author: Stephen McConnell <slm@FreeBSD.org>
.\"
.\" $Id: //depot/SpectraBSD/head/share/man/man4/mps.4#6 $
-.\" $FreeBSD$
.\"
.Dd June 1, 2019
.Dt MPS 4
@@ -364,6 +363,7 @@ The following levels are available:
.Xr scsi 4 ,
.Xr targ 4 ,
.Xr loader.conf 5 ,
+.Xr mpsutil 8 ,
.Xr sysctl 8
.Sh HISTORY
The
@@ -377,9 +377,9 @@ driver was originally written by
.An -nosplit
.An Scott Long Aq Mt scottl@FreeBSD.org .
It has been improved and tested by LSI Corporation,
-Avago Technologies (formally LSI), and Broadcom Ltd. (formally Avago).
+Avago Technologies (formerly LSI), and Broadcom Ltd. (formerly Avago).
.Pp
-This man page was written by
+This manual page was written by
.An Ken Merry Aq Mt ken@FreeBSD.org
with additional input from
.An Stephen McConnell Aq Mt slm@FreeBSD.org .
diff --git a/share/man/man4/mpt.4 b/share/man/man4/mpt.4
index 4f243eb1823c..1f6fa3e33b14 100644
--- a/share/man/man4/mpt.4
+++ b/share/man/man4/mpt.4
@@ -33,8 +33,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 16, 2021
.Dt MPT 4
.Os
@@ -154,7 +152,7 @@ Most controllers supported by the
.Nm
driver suffer from limitations on supported disk size (mostly <2TB).
While most controllers will truncate usable disk size, others might
-behave unexpetedly and can cause severe data loss.
+behave unexpectedly and can cause severe data loss.
Refer to the datasheet of the chipset and firmware version for information
about supported disk size and limitations.
.Sh SEE ALSO
diff --git a/share/man/man4/mrsas.4 b/share/man/man4/mrsas.4
index 0528ee2fa1bd..36e9a7b5c7e7 100644
--- a/share/man/man4/mrsas.4
+++ b/share/man/man4/mrsas.4
@@ -32,8 +32,6 @@
.\" are those of the authors and should not be interpreted as representing
.\" official policies, either expressed or implied, of the FreeBSD Project.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 4, 2021
.Dt MRSAS 4
.Os
diff --git a/share/man/man4/msk.4 b/share/man/man4/msk.4
index 6c2a030dfc19..f73299c516d7 100644
--- a/share/man/man4/msk.4
+++ b/share/man/man4/msk.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 23, 2011
.Dt MSK 4
.Os
diff --git a/share/man/man4/mt7915.4 b/share/man/man4/mt7915.4
new file mode 100644
index 000000000000..fa5fd626d870
--- /dev/null
+++ b/share/man/man4/mt7915.4
@@ -0,0 +1,98 @@
+.\"-
+.\" Copyright (c) 2023 Bjoern A. Zeeb
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 April 18, 2023
+.Dt MT7915 4
+.Os
+.Sh NAME
+.Nm mt7915
+.Nd MediaTek IEEE 802.11ax wireless network driver
+.Sh SYNOPSIS
+The driver will auto-load without any user interaction using
+.Xr devmatch 8
+if enabled in
+.Xr rc.conf 5 .
+.Pp
+Only if auto-loading is explicitly disabled, place the following
+lines in
+.Xr rc.conf 5
+to manually load the driver as a module at boot time:
+.Bd -literal -offset indent
+kld_list="${kld_list} if_mt7915"
+.Ed
+.Pp
+The driver should automatically load any
+firmware needed for the particular chipset.
+.Pp
+It is discouraged to load the driver from
+.Xr loader 8 .
+.Sh DESCRIPTION
+The
+.Nm
+driver is derived from MediaTek's Linux mt76 driver and provides support for
+the following chipsets:
+.Pp
+.Bl -tag -width Ds -offset indent -compact
+.It MediaTek MT7915E (PCIe)
+.El
+.Pp
+This driver requires firmware to be loaded before it will work.
+The package
+.Pa wifi-firmware-mt76-kmod
+from the
+.Pa ports/net/wifi-firmware-mt76-kmod
+port needs to be installed before the driver is loaded.
+Otherwise no
+.Xr wlan 4
+interface can be created using
+.Xr ifconfig 8 .
+.Pp
+The driver uses the
+.\" No LinuxKPI man pages so no .Xr here.
+.Em linuxkpi_wlan
+and
+.Em linuxkpi
+compat framework to bridge between the Linux and
+native
+.Fx
+driver code as well as to the native
+.Xr net80211 4
+wireless stack.
+.Pp
+While
+.Nm
+supports all 802.11 a/b/g/n/ac and ax
+the compatibility code currently only supports 802.11 a/b/g modes.
+Support for 802.11 n/ac is to come.
+.Sh BUGS
+Certainly.
+.Sh SEE ALSO
+.Xr wlan 4 ,
+.Xr ifconfig 8 ,
+.Xr wpa_supplicant 8
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Fx 14.0 .
diff --git a/share/man/man4/mt7921.4 b/share/man/man4/mt7921.4
new file mode 100644
index 000000000000..460c90ece808
--- /dev/null
+++ b/share/man/man4/mt7921.4
@@ -0,0 +1,98 @@
+.\"-
+.\" Copyright (c) 2023 Bjoern A. Zeeb
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 April 18, 2023
+.Dt MT7921 4
+.Os
+.Sh NAME
+.Nm mt7921
+.Nd MediaTek IEEE 802.11ax wireless network driver
+.Sh SYNOPSIS
+The driver will auto-load without any user interaction using
+.Xr devmatch 8
+if enabled in
+.Xr rc.conf 5 .
+.Pp
+Only if auto-loading is explicitly disabled, place the following
+lines in
+.Xr rc.conf 5
+to manually load the driver as a module at boot time:
+.Bd -literal -offset indent
+kld_list="${kld_list} if_mt7921"
+.Ed
+.Pp
+The driver should automatically load any
+firmware needed for the particular chipset.
+.Pp
+It is discouraged to load the driver from
+.Xr loader 8 .
+.Sh DESCRIPTION
+The
+.Nm
+driver is derived from MediaTek's Linux mt76 driver and provides support for
+the following chipsets:
+.Pp
+.Bl -tag -width Ds -offset indent -compact
+.It MediaTek MT7921E (PCIe)
+.El
+.Pp
+This driver requires firmware to be loaded before it will work.
+The package
+.Pa wifi-firmware-mt76-kmod
+from the
+.Pa ports/net/wifi-firmware-mt76-kmod
+port needs to be installed before the driver is loaded.
+Otherwise no
+.Xr wlan 4
+interface can be created using
+.Xr ifconfig 8 .
+.Pp
+The driver uses the
+.\" No LinuxKPI man pages so no .Xr here.
+.Em linuxkpi_wlan
+and
+.Em linuxkpi
+compat framework to bridge between the Linux and
+native
+.Fx
+driver code as well as to the native
+.Xr net80211 4
+wireless stack.
+.Pp
+While
+.Nm
+supports all 802.11 a/b/g/n/ac and ax
+the compatibility code currently only supports 802.11 a/b/g modes.
+Support for 802.11 n/ac is to come.
+.Sh BUGS
+Certainly.
+.Sh SEE ALSO
+.Xr wlan 4 ,
+.Xr ifconfig 8 ,
+.Xr wpa_supplicant 8
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Fx 14.0 .
diff --git a/share/man/man4/mtio.4 b/share/man/man4/mtio.4
index 558f02864777..34414e5f2a26 100644
--- a/share/man/man4/mtio.4
+++ b/share/man/man4/mtio.4
@@ -28,9 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)mtio.4 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd February 12, 2015
.Dt MTIO 4
.Os
diff --git a/share/man/man4/muge.4 b/share/man/man4/muge.4
index 3bb8810d81b0..598106bf1855 100644
--- a/share/man/man4/muge.4
+++ b/share/man/man4/muge.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 11, 2018
.Dt MUGE 4
.Os
diff --git a/share/man/man4/multicast.4 b/share/man/man4/multicast.4
index c0ce4599a02d..aa3293e107eb 100644
--- a/share/man/man4/multicast.4
+++ b/share/man/man4/multicast.4
@@ -23,8 +23,6 @@
.\" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
.\" DEALINGS IN THE SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 27, 2009
.Dt MULTICAST 4
.Os
diff --git a/share/man/man4/mvs.4 b/share/man/man4/mvs.4
index 4d432e44c8b7..516a1ddcc1ac 100644
--- a/share/man/man4/mvs.4
+++ b/share/man/man4/mvs.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 23, 2015
.Dt MVS 4
.Os
diff --git a/share/man/man4/mwl.4 b/share/man/man4/mwl.4
index 910ae083649f..9eecc080f710 100644
--- a/share/man/man4/mwl.4
+++ b/share/man/man4/mwl.4
@@ -25,8 +25,6 @@
.\" IN CONTRACT, STRICT 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 DAMAGES.
-.\"
-.\" $FreeBSD$
.\"/
.Dd July 8, 2009
.Dt MWL 4
diff --git a/share/man/man4/mwlfw.4 b/share/man/man4/mwlfw.4
index 5e557bfc3073..e6fdc955a8f8 100644
--- a/share/man/man4/mwlfw.4
+++ b/share/man/man4/mwlfw.4
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 9, 2009
.Dt MWLFW 4
.Os
diff --git a/share/man/man4/mx25l.4 b/share/man/man4/mx25l.4
index 4c69234c1095..ff2e78a8c5aa 100644
--- a/share/man/man4/mx25l.4
+++ b/share/man/man4/mx25l.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 26, 2019
.Dt MX25L 4
.Os
diff --git a/share/man/man4/mxge.4 b/share/man/man4/mxge.4
index 3e54062fd212..85cd79a4c90e 100644
--- a/share/man/man4/mxge.4
+++ b/share/man/man4/mxge.4
@@ -29,8 +29,6 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 13, 2008
.Dt MXGE 4
.Os
diff --git a/share/man/man4/my.4 b/share/man/man4/my.4
index f92fff79306e..fc2386317390 100644
--- a/share/man/man4/my.4
+++ b/share/man/man4/my.4
@@ -22,8 +22,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2020
.Dt MY 4
.Os
diff --git a/share/man/man4/nctgpio.4 b/share/man/man4/nctgpio.4
new file mode 100644
index 000000000000..84eb1ccb7d3f
--- /dev/null
+++ b/share/man/man4/nctgpio.4
@@ -0,0 +1,54 @@
+.\"
+.Dd Apr 18, 2023
+.Dt NCTGPIO 4
+.Os
+.Sh NAME
+.Nm nctgpio
+.Nd GPIO controller on Nuvoton and Winbond Super I/Os
+.Sh SYNOPSIS
+.Cd "device gpio"
+.Cd "device nctgpio"
+.Cd "device superio"
+.Sh DESCRIPTION
+The
+.Nm
+is a driver for GPIO controller that can be found in Nuvoton and Winbond Super I/O chips.
+.Pp
+The
+.Nm
+driver supports the following chips:
+.Pp
+.Bl -bullet -compact
+.It
+Nuvoton NCT5104D
+.It
+Nuvoton NCT5104D (PC-Engines APU)
+.It
+Nuvoton NCT5104D (PC-Engines APU3)
+.It
+Nuvoton NCT5585D
+.It
+Nuvoton NCT6116D
+.It
+Nuvoton NCT6779
+.It
+Nuvoton NCT6796D-E
+.It
+Winbond 83627DHG
+.El
+
+.Sh SEE ALSO
+.Xr gpio 3 ,
+.Xr gpio 4 ,
+.Xr gpioctl 8
+.Sh HISTORY
+The driver first appeared in
+.Fx 11.0 .
+And the
+manual page first appeared in
+.Fx 14.0 .
+.Sh AUTHORS
+The driver was initially written by
+.An Daniel Wyatt Aq Mt daniel@dewyatt.com .
+This man page was written by
+.An Stéphane Rochoy Aq Mt stephane.rochoy@stormshield.eu .
diff --git a/share/man/man4/ncthwm.4 b/share/man/man4/ncthwm.4
new file mode 100644
index 000000000000..5076a8888046
--- /dev/null
+++ b/share/man/man4/ncthwm.4
@@ -0,0 +1,52 @@
+.\"
+.Dd Apr 18, 2023
+.Dt NCTHWM 4
+.Os
+.Sh NAME
+.Nm ncthwm
+.Nd Hardware monitoring controller on Nuvoton Super I/Os
+.Sh SYNOPSIS
+.Cd "device ncthwm"
+.Cd "device superio"
+.Sh DESCRIPTION
+The
+.Nm
+is a driver for hardware monitoring controller that can be found in Nuvoton
+Super I/O chips. It expose fan speed via
+.Xr sysctl 8 .
+
+.Pp
+The
+.Nm
+driver supports the following chips:
+.Pp
+.Bl -bullet -compact
+.It
+Nuvoton NCT6779
+.It
+Nuvoton NCT6796D-E
+.El
+
+.Sh SYSCTL VARIABLES
+These variables are available as read-only
+.Xr sysctl 8
+variables:
+.Bl -tag -width indent
+.It Va dev.ncthwm.0.CPUFAN
+CPU fan speed in RPM.
+.It Va dev.ncthwm.0.SYSFAN
+System fan speed in RPM.
+.It Va dev.ncthwm.0.AUXFAN0
+AUX0 fan speed in RPM.
+.It Va dev.ncthwm.0.AUXFAN1
+AUX1 fan speed in RPM.
+.It Va dev.ncthwm.0.AUXFAN2
+AUX2 fan speed in RPM.
+.El
+
+.Sh HISTORY
+The driver first appeared in
+.Fx 14.0 .
+.Sh AUTHORS
+The driver was initially written by
+.An Stéphane Rochoy Aq Mt stephane.rochoy@stormshield.eu .
diff --git a/share/man/man4/nda.4 b/share/man/man4/nda.4
index d08469dc7b90..c4fa157af851 100644
--- a/share/man/man4/nda.4
+++ b/share/man/man4/nda.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 6, 2020
.Dt NDA 4
.Os
diff --git a/share/man/man4/net80211.4 b/share/man/man4/net80211.4
index 629e84c35566..912a6c3147cf 100644
--- a/share/man/man4/net80211.4
+++ b/share/man/man4/net80211.4
@@ -26,8 +26,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGES.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 7, 2020
.Dt NET80211 4
.Os
diff --git a/share/man/man4/netdump.4 b/share/man/man4/netdump.4
index a6150eb758e3..daf0d6ae31dc 100644
--- a/share/man/man4/netdump.4
+++ b/share/man/man4/netdump.4
@@ -22,18 +22,18 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 25, 2020
+.Dd November 10, 2022
.Dt NETDUMP 4
.Os
.Sh NAME
.Nm netdump
.Nd protocol for transmitting kernel dumps to a remote server
.Sh SYNOPSIS
-To compile netdump client support into the kernel, place the following line in
+To compile netdump client support into the kernel, place the following lines in
your kernel configuration file:
.Bd -ragged -offset indent
+.Cd "options INET"
+.Cd "options DEBUGNET"
.Cd "options NETDUMP"
.Ed
.Sh DESCRIPTION
diff --git a/share/man/man4/netfpga10g_nf10bmac.4 b/share/man/man4/netfpga10g_nf10bmac.4
index a2ee787de527..3a6fc363eebd 100644
--- a/share/man/man4/netfpga10g_nf10bmac.4
+++ b/share/man/man4/netfpga10g_nf10bmac.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 17, 2014
.Dt NETFPGA10G_NF10BMAC 4
.Os
diff --git a/share/man/man4/netgdb.4 b/share/man/man4/netgdb.4
index aaa2a2801ca7..a86431fa129f 100644
--- a/share/man/man4/netgdb.4
+++ b/share/man/man4/netgdb.4
@@ -22,20 +22,21 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd October 17, 2019
+.Dd November 10, 2022
.Dt NETGDB 4
.Os
.Sh NAME
.Nm netgdb
.Nd protocol for debugging the kernel with GDB over the network
.Sh SYNOPSIS
-NetGDB support is compiled by default, if DDB, GDB, and INET are enabled.
-To build a kernel without it, add the following line to your kernel
-configuration file:
+To compile NetGDB support into the kernel, place the following lines in your
+kernel configuration file:
.Bd -ragged -offset indent
-.Cd "nooptions NETGDB"
+.Cd "options DDB"
+.Cd "options GDB"
+.Cd "options INET"
+.Cd "options DEBUGNET"
+.Cd "options NETGDB"
.Ed
.Sh DESCRIPTION
.Nm
@@ -65,7 +66,7 @@ At this point, the server proxies traffic back and forth between
and the ordinary GDB client, speaking the ordinary GDB remote protocol.
The
.Nm
-session is identical to any other kernel GDB sesssion from the perspective
+session is identical to any other kernel GDB session from the perspective
of the GDB debugger.
.Sh IMPLEMENTATION NOTES
The UDP protocol is based on the same packet structure and a subset of the
diff --git a/share/man/man4/netgraph.4 b/share/man/man4/netgraph.4
index 6d3679041e5c..154f8f1e5b82 100644
--- a/share/man/man4/netgraph.4
+++ b/share/man/man4/netgraph.4
@@ -34,7 +34,6 @@
.\" Archie Cobbs <archie@FreeBSD.org>
.\"
.\" $Whistle: netgraph.4,v 1.7 1999/01/28 23:54:52 julian Exp $
-.\" $FreeBSD$
.\"
.Dd September 29, 2021
.Dt NETGRAPH 4
@@ -1417,8 +1416,6 @@ common networking problems, solved using
.Xr socket 2 ,
.Xr netgraph 3 ,
.Xr ng_async 4 ,
-.Xr ng_atm 4 ,
-.Xr ng_atmllc 4 ,
.Xr ng_bluetooth 4 ,
.Xr ng_bpf 4 ,
.Xr ng_bridge 4 ,
@@ -1454,13 +1451,10 @@ common networking problems, solved using
.Xr ng_rfc1490 4 ,
.Xr ng_socket 4 ,
.Xr ng_split 4 ,
-.Xr ng_sscfu 4 ,
-.Xr ng_sscop 4 ,
.Xr ng_tee 4 ,
.Xr ng_tty 4 ,
.Xr ng_ubt 4 ,
.Xr ng_UI 4 ,
-.Xr ng_uni 4 ,
.Xr ng_vjc 4 ,
.Xr ng_vlan 4 ,
.Xr ngctl 8 ,
diff --git a/share/man/man4/netintro.4 b/share/man/man4/netintro.4
index 6066c9e74176..c6f8966ee047 100644
--- a/share/man/man4/netintro.4
+++ b/share/man/man4/netintro.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)netintro.4 8.2 (Berkeley) 11/30/93
-.\" $FreeBSD$
-.\"
.Dd October 14, 2020
.Dt NETINTRO 4
.Os
diff --git a/share/man/man4/netlink.4 b/share/man/man4/netlink.4
new file mode 100644
index 000000000000..2fa974df0ddf
--- /dev/null
+++ b/share/man/man4/netlink.4
@@ -0,0 +1,357 @@
+.\"
+.\" Copyright (C) 2022 Alexander Chernikov <melifaro@FreeBSD.org>.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 30, 2022
+.Dt NETLINK 4
+.Os
+.Sh NAME
+.Nm Netlink
+.Nd Kernel network configuration protocol
+.Sh SYNOPSIS
+.In netlink/netlink.h
+.In netlink/netlink_route.h
+.Ft int
+.Fn socket AF_NETLINK SOCK_RAW "int family"
+.Sh DESCRIPTION
+Netlink is a user-kernel message-based communication protocol primarily used
+for network stack configuration.
+Netlink is easily extendable and supports large dumps and event
+notifications, all via a single socket.
+The protocol is fully asynchronous, allowing one to issue and track multiple
+requests at once.
+Netlink consists of multiple families, which commonly group the commands
+belonging to the particular kernel subsystem.
+Currently, the supported families are:
+.Pp
+.Bd -literal -offset indent -compact
+NETLINK_ROUTE network configuration,
+NETLINK_GENERIC "container" family
+.Ed
+.Pp
+The
+.Dv NETLINK_ROUTE
+family handles all interfaces, addresses, neighbors, routes, and VNETs
+configuration.
+More details can be found in
+.Xr rtnetlink 4 .
+The
+.Dv NETLINK_GENERIC
+family serves as a
+.Do container Dc ,
+allowing registering other families under the
+.Dv NETLINK_GENERIC
+umbrella.
+This approach allows using a single netlink socket to interact with
+multiple netlink families at once.
+More details can be found in
+.Xr genetlink 4 .
+.Pp
+Netlink has its own sockaddr structure:
+.Bd -literal
+struct sockaddr_nl {
+ uint8_t nl_len; /* sizeof(sockaddr_nl) */
+ sa_family_t nl_family; /* netlink family */
+ uint16_t nl_pad; /* reserved, set to 0 */
+ uint32_t nl_pid; /* automatically selected, set to 0 */
+ uint32_t nl_groups; /* multicast groups mask to bind to */
+};
+.Ed
+.Pp
+Typically, filling this structure is not required for socket operations.
+It is presented here for completeness.
+.Sh PROTOCOL DESCRIPTION
+The protocol is message-based.
+Each message starts with the mandatory
+.Va nlmsghdr
+header, followed by the family-specific header and the list of
+type-length-value pairs (TLVs).
+TLVs can be nested.
+All headers and TLVS are padded to 4-byte boundaries.
+Each
+.Xr send 2 or
+.Xr recv 2
+system call may contain multiple messages.
+.Ss BASE HEADER
+.Bd -literal
+struct nlmsghdr {
+ uint32_t nlmsg_len; /* Length of message including header */
+ uint16_t nlmsg_type; /* Message type identifier */
+ uint16_t nlmsg_flags; /* Flags (NLM_F_) */
+ uint32_t nlmsg_seq; /* Sequence number */
+ uint32_t nlmsg_pid; /* Sending process port ID */
+};
+.Ed
+.Pp
+The
+.Va nlmsg_len
+field stores the whole message length, in bytes, including the header.
+This length has to be rounded up to the nearest 4-byte boundary when
+iterating over messages.
+The
+.Va nlmsg_type
+field represents the command/request type.
+This value is family-specific.
+The list of supported commands can be found in the relevant family
+header file.
+.Va nlmsg_seq
+is a user-provided request identifier.
+An application can track the operation result using the
+.Dv NLMSG_ERROR
+messages and matching the
+.Va nlmsg_seq
+.
+The
+.Va nlmsg_pid
+field is the message sender id.
+This field is optional for userland.
+The kernel sender id is zero.
+The
+.Va nlmsg_flags
+field contains the message-specific flags.
+The following generic flags are defined:
+.Pp
+.Bd -literal -offset indent -compact
+NLM_F_REQUEST Indicates that the message is an actual request to the kernel
+NLM_F_ACK Request an explicit ACK message with an operation result
+.Ed
+.Pp
+The following generic flags are defined for the "GET" request types:
+.Pp
+.Bd -literal -offset indent -compact
+NLM_F_ROOT Return the whole dataset
+NLM_F_MATCH Return all entries matching the criteria
+.Ed
+These two flags are typically used together, aliased to
+.Dv NLM_F_DUMP
+.Pp
+The following generic flags are defined for the "NEW" request types:
+.Pp
+.Bd -literal -offset indent -compact
+NLM_F_CREATE Create an object if none exists
+NLM_F_EXCL Don't replace an object if it exists
+NLM_F_REPLACE Replace an existing matching object
+NLM_F_APPEND Append to an existing object
+.Ed
+.Pp
+The following generic flags are defined for the replies:
+.Pp
+.Bd -literal -offset indent -compact
+NLM_F_MULTI Indicates that the message is part of the message group
+NLM_F_DUMP_INTR Indicates that the state dump was not completed
+NLM_F_DUMP_FILTERED Indicates that the dump was filtered per request
+NLM_F_CAPPED Indicates the original message was capped to its header
+NLM_F_ACK_TLVS Indicates that extended ACK TLVs were included
+.Ed
+.Ss TLVs
+Most messages encode their attributes as type-length-value pairs (TLVs).
+The base TLV header:
+.Bd -literal
+struct nlattr {
+ uint16_t nla_len; /* Total attribute length */
+ uint16_t nla_type; /* Attribute type */
+};
+.Ed
+The TLV type
+.Pq Va nla_type
+scope is typically the message type or group within a family.
+For example, the
+.Dv RTN_MULTICAST
+type value is only valid for
+.Dv RTM_NEWROUTE
+,
+.Dv RTM_DELROUTE
+and
+.Dv RTM_GETROUTE
+messages.
+TLVs can be nested; in that case internal TLVs may have their own sub-types.
+All TLVs are packed with 4-byte padding.
+.Ss CONTROL MESSAGES
+A number of generic control messages are reserved in each family.
+.Pp
+.Dv NLMSG_ERROR
+reports the operation result if requested, optionally followed by
+the metadata TLVs.
+The value of
+.Va nlmsg_seq
+is set to its value in the original messages, while
+.Va nlmsg_pid
+is set to the socket pid of the original socket.
+The operation result is reported via
+.Vt "struct nlmsgerr":
+.Bd -literal
+struct nlmsgerr {
+ int error; /* Standard errno */
+ struct nlmsghdr msg; /* Original message header */
+};
+.Ed
+If the
+.Dv NETLINK_CAP_ACK
+socket option is not set, the remainder of the original message will follow.
+If the
+.Dv NETLINK_EXT_ACK
+socket option is set, the kernel may add a
+.Dv NLMSGERR_ATTR_MSG
+string TLV with the textual error description, optionally followed by the
+.Dv NLMSGERR_ATTR_OFFS
+TLV, indicating the offset from the message start that triggered an error.
+Some operations may return additional metadata encapsulated in the
+.Dv NLMSGERR_ATTR_COOKIE
+TLV.
+The metadata format is specific to the operation.
+If the operation reply is a multipart message, then no
+.Dv NLMSG_ERROR
+reply is generated, only a
+.Dv NLMSG_DONE
+message, closing multipart sequence.
+.Pp
+.Dv NLMSG_DONE
+indicates the end of the message group: typically, the end of the dump.
+It contains a single
+.Vt int
+field, describing the dump result as a standard errno value.
+.Sh SOCKET OPTIONS
+Netlink supports a number of custom socket options, which can be set with
+.Xr setsockopt 2
+with the
+.Dv SOL_NETLINK
+.Fa level :
+.Bl -tag -width indent
+.It Dv NETLINK_ADD_MEMBERSHIP
+Subscribes to the notifications for the specific group (int).
+.It Dv NETLINK_DROP_MEMBERSHIP
+Unsubscribes from the notifications for the specific group (int).
+.It Dv NETLINK_LIST_MEMBERSHIPS
+Lists the memberships as a bitmask.
+.It Dv NETLINK_CAP_ACK
+Instructs the kernel to send the original message header in the reply
+without the message body.
+.It Dv NETLINK_EXT_ACK
+Acknowledges ability to receive additional TLVs in the ACK message.
+.El
+.Pp
+Additionally, netlink overrides the following socket options from the
+.Dv SOL_SOCKET
+.Fa level :
+.Bl -tag -width indent
+.It Dv SO_RCVBUF
+Sets the maximum size of the socket receive buffer.
+If the caller has
+.Dv PRIV_NET_ROUTE
+permission, the value can exceed the currently-set
+.Va kern.ipc.maxsockbuf
+value.
+.El
+.Sh SYSCTL VARIABLES
+A set of
+.Xr sysctl 8
+variables is available to tweak run-time parameters:
+.Bl -tag -width indent
+.It Va net.netlink.sendspace
+Default send buffer for the netlink socket.
+Note that the socket sendspace has to be at least as long as the longest
+message that can be transmitted via this socket.
+.El
+.Bl -tag -width indent
+.It Va net.netlink.recvspace
+Default receive buffer for the netlink socket.
+Note that the socket recvspace has to be least as long as the longest
+message that can be received from this socket.
+.El
+.Bl -tag -width indent
+.It Va net.netlink.nl_maxsockbuf
+Maximum receive buffer for the netlink socket that can be set via
+.Dv SO_RCVBUF
+socket option.
+.El
+.Sh DEBUGGING
+Netlink implements per-functional-unit debugging, with different severities
+controllable via the
+.Va net.netlink.debug
+branch.
+These messages are logged in the kernel message buffer and can be seen in
+.Xr dmesg 8
+.
+The following severity levels are defined:
+.Bl -tag -width indent
+.It Dv LOG_DEBUG(7)
+Rare events or per-socket errors are reported here.
+This is the default level, not impacting production performance.
+.It Dv LOG_DEBUG2(8)
+Socket events such as groups memberships, privilege checks, commands and dumps
+are logged.
+This level does not incur significant performance overhead.
+.It Dv LOG_DEBUG3(9)
+All socket events, each dumped or modified entities are logged.
+Turning it on may result in significant performance overhead.
+.El
+.Sh ERRORS
+Netlink reports operation results, including errors and error metadata, by
+sending a
+.Dv NLMSG_ERROR
+message for each request message.
+The following errors can be returned:
+.Bl -tag -width Er
+.It Bq Er EPERM
+when the current privileges are insufficient to perform the required operation;
+.It Bo Er ENOBUFS Bc or Bo Er ENOMEM Bc
+when the system runs out of memory for
+an internal data structure;
+.It Bq Er ENOTSUP
+when the requested command is not supported by the family or
+the family is not supported;
+.It Bq Er EINVAL
+when some necessary TLVs are missing or invalid, detailed info
+may be provided in NLMSGERR_ATTR_MSG and NLMSGERR_ATTR_OFFS TLVs;
+.It Bq Er ENOENT
+when trying to delete a non-existent object.
+.Pp
+Additionally, a socket operation itself may fail with one of the errors
+specified in
+.Xr socket 2
+,
+.Xr recv 2
+or
+.Xr send 2
+.
+.El
+.Sh SEE ALSO
+.Xr genetlink 4 ,
+.Xr rtnetlink 4
+.Rs
+.%A "J. Salim"
+.%A "H. Khosravi"
+.%A "A. Kleen"
+.%A "A. Kuznetsov"
+.%T "Linux Netlink as an IP Services Protocol"
+.%O "RFC 3549"
+.Re
+.Sh HISTORY
+The netlink protocol appeared in
+.Fx 13.2 .
+.Sh AUTHORS
+The netlink was implemented by
+.An -nosplit
+.An Alexander Chernikov Aq Mt melifaro@FreeBSD.org .
+It was derived from the Google Summer of Code 2021 project by
+.An Ng Peng Nam Sean .
diff --git a/share/man/man4/netmap.4 b/share/man/man4/netmap.4
index 535b2dfdfb4e..fd713f3c384b 100644
--- a/share/man/man4/netmap.4
+++ b/share/man/man4/netmap.4
@@ -25,8 +25,6 @@
.\" This document is derived in part from the enet man page (enet.4)
.\" distributed with 4.3BSD Unix.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 6, 2022
.Dt NETMAP 4
.Os
diff --git a/share/man/man4/nfe.4 b/share/man/man4/nfe.4
index b9f91a20aa8f..1194923f51da 100644
--- a/share/man/man4/nfe.4
+++ b/share/man/man4/nfe.4
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2011
.Dt NFE 4
.Os
diff --git a/share/man/man4/nfsmb.4 b/share/man/man4/nfsmb.4
index f3022191ea8e..d19ac4dfe05e 100644
--- a/share/man/man4/nfsmb.4
+++ b/share/man/man4/nfsmb.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 31, 2005
.Dt NFSMB 4
.Os
diff --git a/share/man/man4/ng_UI.4 b/share/man/man4/ng_UI.4
index f00cb63f117e..14ee8a43a8e6 100644
--- a/share/man/man4/ng_UI.4
+++ b/share/man/man4/ng_UI.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_UI.8,v 1.4 1999/01/25 02:37:56 archie Exp $
.\"
.Dd January 19, 1999
diff --git a/share/man/man4/ng_async.4 b/share/man/man4/ng_async.4
index cf38b2ed8421..f1ccadd99786 100644
--- a/share/man/man4/ng_async.4
+++ b/share/man/man4/ng_async.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_async.8,v 1.6 1999/01/25 23:46:25 archie Exp $
.\"
.Dd November 13, 2012
diff --git a/share/man/man4/ng_atmllc.4 b/share/man/man4/ng_atmllc.4
deleted file mode 100644
index 3c7cfa947fc7..000000000000
--- a/share/man/man4/ng_atmllc.4
+++ /dev/null
@@ -1,96 +0,0 @@
-.\" Copyright (c) 2004 Benno Rice <benno@FreeBSD.org>
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd March 8, 2004
-.Dt NG_ATMLLC 4
-.Os
-.Sh NAME
-.Nm ng_atmllc
-.Nd ATM LLC netgraph node type
-.Sh SYNOPSIS
-.In netgraph/ng_atmllc.h
-.Sh DESCRIPTION
-The
-.Nm atmllc
-node type translates frames in to and out of ATM LLC encapsulation,
-as specified by RFC 1483.
-In LLC encapsulation the protocol of a given protocol data unit (PDU) is
-specified by an IEEE 802.2 LLC header, possibly followed by an IEEE 802.1a
-SubNetwork Attachment Point (SNAP) header.
-This node currently handles the Ethernet and FDDI protocols.
-.Pp
-The node transmits and receives ATM PDUs on the
-.Va atm
-hook.
-Received PDUs are decoded and forwarded to the
-.Va ether
-or
-.Va fddi
-hooks as appropriate.
-Data received on the
-.Va ether
-or
-.Va fddi
-hooks are assumed to be full Ethernet or FDDI packets as appropriate and are
-encapsulated into a PDU and transmitted via the
-.Va atm
-hook.
-.Sh HOOKS
-This node type supports the following hooks:
-.Bl -tag -width ".Va ether"
-.It Va atm
-ATM connection.
-Typically, this hook would be connected to a
-.Xr ng_atm 4
-node, which handles transmission of ATM PDUs over an ATM device.
-.It Va ether
-Ethernet connection.
-This hook sends and receives Ethernet frames.
-This would normally be connected to an
-.Xr ng_eiface 4
-node if in use.
-.It Va fddi
-FDDI connection.
-This hook sends and receives FDDI frames.
-.El
-.Sh CONTROL MESSAGES
-This node type supports the generic control messages.
-.Sh SHUTDOWN
-This node shuts down upon receipt of a
-.Dv NGM_SHUTDOWN
-control message, or when all hooks have been disconnected.
-.Sh SEE ALSO
-.Xr netgraph 4 ,
-.Xr ng_atm 4 ,
-.Xr ng_eiface 4 ,
-.Xr ngctl 8
-.Rs
-.%A J. Heinanen
-.%T "Multiprotocol Encapsulation over ATM Adaptation Layer 5"
-.%O RFC 1483
-.Re
-.Sh AUTHORS
-.An Benno Rice Aq Mt benno@FreeBSD.org
diff --git a/share/man/man4/ng_bluetooth.4 b/share/man/man4/ng_bluetooth.4
index b19dee157ae6..d6d2f6f8d78e 100644
--- a/share/man/man4/ng_bluetooth.4
+++ b/share/man/man4/ng_bluetooth.4
@@ -23,7 +23,6 @@
.\" SUCH DAMAGE.
.\"
.\" $Id: ng_bluetooth.4,v 1.3 2003/05/21 19:37:35 max Exp $
-.\" $FreeBSD$
.\"
.Dd November 9, 2002
.Dt NG_BLUETOOTH 4
diff --git a/share/man/man4/ng_bpf.4 b/share/man/man4/ng_bpf.4
index b04b57baf1dd..98b5cdf20d45 100644
--- a/share/man/man4/ng_bpf.4
+++ b/share/man/man4/ng_bpf.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_bpf.8,v 1.2 1999/12/03 01:57:12 archie Exp $
.\"
.Dd September 20, 2020
diff --git a/share/man/man4/ng_bridge.4 b/share/man/man4/ng_bridge.4
index f83bacecce40..998c428cbad0 100644
--- a/share/man/man4/ng_bridge.4
+++ b/share/man/man4/ng_bridge.4
@@ -32,9 +32,7 @@
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 13, 2021
+.Dd April 8, 2024
.Dt NG_BRIDGE 4
.Os
.Sh NAME
@@ -109,13 +107,27 @@ hook of the bridge, and ignore the complexity of the outside world.
Frames with unknown MACs are always sent out to
.Ar uplink
hooks, so no functionality is lost.
+The
+.Ar uplink0
+hook is not allowed.
+.Pp
+The
+.Ar linkX
+and
+.Ar uplinkX
+hook numbers can be autoassigned.
+If a new hook name was specified as
+.Ar link
+or
+.Ar uplink
+the node will append lowest available valid number to the name of the new hook.
.Pp
Frames with unknown destination MAC addresses are replicated to any
available hook, unless the first connected hook is an
.Ar uplink
hook.
In this case the node assumes, that all unknown MAC addresses are
-located soley on the
+located solely on the
.Ar uplink
hooks and only those hooks will be used to send out frames with
unknown destination MACs.
@@ -268,3 +280,11 @@ node type was implemented in
.Fx 4.2 .
.Sh AUTHORS
.An Archie Cobbs Aq Mt archie@FreeBSD.org
+.Sh BUGS
+The
+.Nm
+node refuses to create the
+.Ar uplink0
+hook to avoid later ambiguity with the
+.Dv NGM_BRIDGE_GET_STATS
+message.
diff --git a/share/man/man4/ng_btsocket.4 b/share/man/man4/ng_btsocket.4
index 27c77adad457..d16ccccbeb90 100644
--- a/share/man/man4/ng_btsocket.4
+++ b/share/man/man4/ng_btsocket.4
@@ -23,7 +23,6 @@
.\" SUCH DAMAGE.
.\"
.\" $Id: ng_btsocket.4,v 1.7 2003/05/21 19:37:35 max Exp $
-.\" $FreeBSD$
.\"
.Dd November 13, 2012
.Dt NG_BTSOCKET 4
diff --git a/share/man/man4/ng_car.4 b/share/man/man4/ng_car.4
index abb522ae151b..e111a86b95d7 100644
--- a/share/man/man4/ng_car.4
+++ b/share/man/man4/ng_car.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 27, 2021
.Dt NG_CAR 4
.Os
diff --git a/share/man/man4/ng_ccatm.4 b/share/man/man4/ng_ccatm.4
deleted file mode 100644
index 3d6778fa25d5..000000000000
--- a/share/man/man4/ng_ccatm.4
+++ /dev/null
@@ -1,323 +0,0 @@
-.\"
-.\" Copyright (c) 2001-2004
-.\" Fraunhofer Institute for Open Communication Systems (FhG Fokus).
-.\" All rights reserved.
-.\" Copyright (c) 2005
-.\" Hartmut Brandt.
-.\" All rights reserved.
-.\"
-.\" Author: Harti Brandt <harti@FreeBSD.org>
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd March 10, 2005
-.Dt NG_CCATM 4
-.Os
-.Sh NAME
-.Nm ng_ccatm
-.Nd "ATM Call Control netgraph node type"
-.Sh SYNOPSIS
-.In netnatm/unimsg.h
-.In netnatm/msg/unistruct.h
-.In netnatm/sig/unidef.h
-.In netnatm/api/unisap.h
-.In netnatm/api/atmapi.h
-.In netnatm/api/ccatm.h
-.In netgraph.h
-.In netgraph/ng_uni.h
-.In netgraph/ng_ccatm.h
-.Sh DESCRIPTION
-The
-.Nm
-node implements the API specified by the ATM Forum for access to ATM services
-(see ATM-Forum document
-.Pa af-saa-0108 ) .
-This document specifies the semantics
-of the API, not the exact language binding.
-For this reason, it is expected that
-this implementation is neither compile-time nor binary compatible with
-other implementations of this API.
-It should, however, be fairly straightforward
-to convert between different API implementations.
-.Pp
-This node is usually stacked on top of one or more UNI nodes (see
-.Xr ng_uni 4 ) .
-Each of these hooks appears as a
-.Dq port
-to the user of the node.
-It also has one hook connected to the ILMI daemon for management purposes.
-.Pp
-The node is removed when it receives a
-.Dv NGM_SHUTDOWN
-messages or when all hooks are disconnected.
-.Sh HOOKS
-The node understands a number of hooks with predefined names and an
-unlimited number of hooks for user connections.
-The predefined names are:
-.Bl -tag -width ".Va orphans"
-.It Va uni Ns Ar NNN
-These hooks stack the
-.Nm
-node on top of a UNI stack.
-The node expects the interface on these hooks
-to conform to the upper interface specified in
-.Xr ng_uni 4 .
-These hooks are forced into queuing mode, so that there are no circular
-calls from call control to UNI and UNI back to call control.
-The
-.Ar NNN
-in the hook name is the decimal port number and should not be zero.
-The port number is a 32-bit unsigned integer.
-.It Va manage
-This hook should be connected to the ILMI daemon.
-No data is ever sent on this hook and all received data is discarded.
-The hook is used to send control messages along.
-.It Va dump
-On receipt of a
-.Dv NGM_CCATM_DUMP
-command a textual description of the current state of the node is sent
-out of this hook.
-This text is sent as one large message consisting of more
-than one
-.Vt mbuf .
-.El
-.Pp
-All other hook names are taken to be user hooks and correspond to an
-ATM endpoint as specified in the ATM Forum document.
-The interface on these hooks is defined in
-.In atmapi.h
-and uses a structure
-.Bd -literal
-struct ccatm_op {
- uint32_t op; /* request code */
- u_char data[]; /* optional data */
-};
-.Ed
-.Pp
-This structure is followed directly by the data for the operation.
-The opcode is one of the following:
-.Bd -literal
-enum atmop {
- ATMOP_RESP,
- ATMOP_ABORT_CONNECTION,
- ATMOP_ACCEPT_INCOMING_CALL,
- ATMOP_ADD_PARTY,
- ATMOP_ADD_PARTY_REJECT,
- ATMOP_ADD_PARTY_SUCCESS,
- ATMOP_ARRIVAL_OF_INCOMING_CALL,
- ATMOP_CALL_RELEASE,
- ATMOP_CONNECT_OUTGOING_CALL,
- ATMOP_DROP_PARTY,
- ATMOP_GET_LOCAL_PORT_INFO,
- ATMOP_P2MP_CALL_ACTIVE,
- ATMOP_P2P_CALL_ACTIVE,
- ATMOP_PREPARE_INCOMING_CALL,
- ATMOP_PREPARE_OUTGOING_CALL,
- ATMOP_QUERY_CONNECTION_ATTRIBUTES,
- ATMOP_REJECT_INCOMING_CALL,
- ATMOP_SET_CONNECTION_ATTRIBUTES,
- ATMOP_WAIT_ON_INCOMING_CALL,
- ATMOP_SET_CONNECTION_ATTRIBUTES_X,
- ATMOP_QUERY_CONNECTION_ATTRIBUTES_X,
- ATMOP_QUERY_STATE
-};
-.Ed
-.Pp
-These codes correspond directly to the operations specified in the ATM
-Forum document with the following exceptions:
-.Bl -tag -width foo
-.It Dv ATMOP_RESP
-As discussed in
-.Xr ng_uni 4 ,
-this is used to
-.Dq synchronify
-the interface.
-The argument is a
-.Bd -literal
-struct atm_resp {
- int32_t resp;
- uint32_t data; /* type of attached data */
-};
-.Ed
-.Pp
-If the response code
-.Va resp
-is zero, the node has accepted the user request.
-If something goes wrong,
-.Va resp
-contains an error code.
-For requests that return data,
-.Va data
-contains a code describing the type of data and the data itself
-starts immediately after the structure.
-.It Dv ATMOP_QUERY_CONNECTION_ATTRIBUTES_X
-This is the same as
-.Dv ATMOP_QUERY_CONNECTION_ATTRIBUTES
-except that it allows to query several attributes
-within one request.
-.It Dv ATMOP_SET_CONNECTION_ATTRIBUTES_X
-This is the same as
-.Dv ATMOP_SET_CONNECTION_ATTRIBUTES
-except that it allows to set several attributes
-within one request.
-The list of attributes is followed directly by the attributes in the same
-order as they appear in the list.
-.El
-.Pp
-If a user hook is disconnected, an active connection on that hook is released.
-Incoming connections waiting to be accepted are reoffered to other
-listening hooks or rejected.
-.Sh CONTROL MESSAGES
-Besides the generic messages the node understands the following special
-messages:
-.Bl -tag -width foo
-.It Dv NGM_CCATM_DUMP Pq Ic dump
-This causes the internal state of the node to be dumped in ASCII to the
-.Va dump
-hook.
-.It Dv NGM_CCATM_STOP Pq Ic stop
-This message causes all connections on that port to be aborted (not released!\&)
-and all ATM endpoints which are bound to that port to be closed.
-It stops processing of all messages from the UNI stack on that port UNI stack.
-The argument is a
-.Bd -literal
-struct ngm_ccatm_port {
- uint32_t port;
-};
-.Ed
-.It Dv NGM_CCATM_START Pq Ic start
-Start processing on the port.
-The argument is a
-.Vt ngm_ccatm_port
-structure.
-.It Dv NGM_CCATM_CLEAR Pq Ic clear
-This message takes a
-.Vt ngm_ccatm_port
-structure and clears all prefixes and addresses on that port.
-If the port number is zero, all ports are cleared.
-.It Dv NGM_CCATM_GET_ADDRESSES Pq Ic get_addresses
-Get the list of all registered addresses on the given port.
-The argument is a
-.Vt ngm_ccatm_port
-structure and the result is a
-.Vt ngm_ccatm_get_addresses
-structure:
-.Bd -literal
-struct ngm_ccatm_get_addresses {
- uint32_t count;
- struct ngm_ccatm_address_req addr[0];
-};
-struct ngm_ccatm_address_req {
- uint32_t port;
- struct uni_addr addr;
-};
-.Ed
-.Pp
-If the
-.Va port
-field is zero in the request, all addresses on all ports
-are returned.
-If it is not zero, only the addresses on that port are reported.
-The number of addresses is returned in the
-.Va count
-field.
-.It Dv NGM_CCATM_ADDRESS_REGISTERED Pq Ic address_reg
-This message is used by ILMI to inform the
-.Nm
-node that a previous address registration request was successful.
-This causes the node to activate that address.
-The argument to the message is a
-.Vt ngm_ccatm_address_req
-structure.
-.It Dv NGM_CCATM_ADDRESS_UNREGISTERED Pq Ic address_unreg
-This message is used by ILMI to inform the
-.Nm
-node that an address has been unregistered.
-The node clears that address from its tables.
-The argument is a
-.Vt ngm_ccatm_address_req
-structure.
-.It Dv NGM_CCATM_SET_PORT_PARAM Pq Ic set_port_param
-This request sets the parameters on the given port.
-The argument is a
-.Bd -literal
-struct ngm_ccatm_atm_port {
- uint32_t port; /* port for which to set parameters */
- uint32_t pcr; /* port peak cell rate */
- uint32_t max_vpi_bits;
- uint32_t max_vci_bits;
- uint32_t max_svpc_vpi;
- uint32_t max_svcc_vpi;
- uint32_t min_svcc_vci;
- uint8_t esi[6];
- uint32_t num_addr;
-};
-.Ed
-.Pp
-This should be used only by ILMI and when that port is stopped and the
-address and prefix tables of that port are empty.
-The
-.Va num_addr
-field is ignored.
-.It Dv NGM_CCATM_GET_PORT_PARAM Pq Ic get_port_param
-Retrieve the parameters of the given port.
-The argument is a
-.Vt ngm_ccatm_port
-and the result a
-.Vt ngm_ccatm_atm_port .
-.It Dv NGM_CCATM_GET_PORTLIST Pq Ic get_portlist
-Get a list of all available ports on that node.
-This is returned as a
-.Bd -literal
-struct ngm_ccatm_portlist {
- uint32_t nports;
- uint32_t ports[];
-};
-.Ed
-.It Dv NGM_CCATM_GETSTATE Pq Ic getstate
-Return the state of a port.
-The argument is a
-.Vt "struct ngm_ccatm_port"
-and the return values as a
-.Vt uint32_t .
-.It Dv NGM_CCATM_SETLOG Pq Ic setlog
-This requests sets a new logging level and returns the previous one.
-The argument is either a
-.Vt uint32_t
-in which case it specifies the new logging level, or may be empty
-in which case just the old level is returned as a
-.Vt uint32_t .
-.It Dv NGM_CCATM_RESET Pq Ic reset
-Reset the node.
-This is allowed only if the number of user hooks and connected UNI stacks is
-zero.
-.It Dv NGM_CCATM_GET_EXSTAT
-Return extended status information from the node.
-.El
-.Sh SEE ALSO
-.Xr netgraph 4 ,
-.Xr ng_uni 4 ,
-.Xr ngctl 8
-.Sh AUTHORS
-.An Harti Brandt Aq Mt harti@FreeBSD.org
diff --git a/share/man/man4/ng_checksum.4 b/share/man/man4/ng_checksum.4
index a0b67447db8a..d57f1b009dc7 100644
--- a/share/man/man4/ng_checksum.4
+++ b/share/man/man4/ng_checksum.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 29, 2015
.Dt NG_CHECKSUM 4
.Os
diff --git a/share/man/man4/ng_cisco.4 b/share/man/man4/ng_cisco.4
index 3904176855b8..f32b13f92830 100644
--- a/share/man/man4/ng_cisco.4
+++ b/share/man/man4/ng_cisco.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_cisco.8,v 1.5 1999/01/25 23:46:26 archie Exp $
.\"
.Dd January 19, 1999
diff --git a/share/man/man4/ng_deflate.4 b/share/man/man4/ng_deflate.4
index fef00ffefca7..397efe622edb 100644
--- a/share/man/man4/ng_deflate.4
+++ b/share/man/man4/ng_deflate.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 23, 2006
.Dt NG_DEFLATE 4
.Os
diff --git a/share/man/man4/ng_device.4 b/share/man/man4/ng_device.4
index 8b1ee32b8536..003c9bc95707 100644
--- a/share/man/man4/ng_device.4
+++ b/share/man/man4/ng_device.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 8, 2021
.Dt NG_DEVICE 4
.Os
diff --git a/share/man/man4/ng_echo.4 b/share/man/man4/ng_echo.4
index ac05d54cae0e..2300b4d4a5eb 100644
--- a/share/man/man4/ng_echo.4
+++ b/share/man/man4/ng_echo.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_echo.8,v 1.4 1999/01/25 23:46:26 archie Exp $
.\"
.Dd January 19, 1999
diff --git a/share/man/man4/ng_eiface.4 b/share/man/man4/ng_eiface.4
index 6e4239e70c2a..c2b644556686 100644
--- a/share/man/man4/ng_eiface.4
+++ b/share/man/man4/ng_eiface.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 14, 2019
.Dt NG_EIFACE 4
.Os
diff --git a/share/man/man4/ng_etf.4 b/share/man/man4/ng_etf.4
index 5e78b3d0bab4..8aa4cdb85b67 100644
--- a/share/man/man4/ng_etf.4
+++ b/share/man/man4/ng_etf.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 13, 2012
.Dt NG_ETF 4
.Os
diff --git a/share/man/man4/ng_ether.4 b/share/man/man4/ng_ether.4
index 6d579e8b9f55..79c30ca7788e 100644
--- a/share/man/man4/ng_ether.4
+++ b/share/man/man4/ng_ether.4
@@ -32,8 +32,6 @@
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd June 23, 2011
.Dt NG_ETHER 4
.Os
diff --git a/share/man/man4/ng_ether_echo.4 b/share/man/man4/ng_ether_echo.4
index a62c55320ccb..061c0ee833fc 100644
--- a/share/man/man4/ng_ether_echo.4
+++ b/share/man/man4/ng_ether_echo.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_echo.8,v 1.4 1999/01/25 23:46:26 archie Exp $
.\"
.Dd December 24, 2008
diff --git a/share/man/man4/ng_frame_relay.4 b/share/man/man4/ng_frame_relay.4
index 7f7f0251ba62..91d9d4b5cae6 100644
--- a/share/man/man4/ng_frame_relay.4
+++ b/share/man/man4/ng_frame_relay.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_frame_relay.8,v 1.4 1999/01/25 23:46:26 archie Exp $
.\"
.Dd January 19, 1999
diff --git a/share/man/man4/ng_gif.4 b/share/man/man4/ng_gif.4
index dcda5e651f15..405f34a0e254 100644
--- a/share/man/man4/ng_gif.4
+++ b/share/man/man4/ng_gif.4
@@ -26,8 +26,6 @@
.\"
.\" Author: Brooks Davis <brooks@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd September 18, 2001
.Dt NG_GIF 4
.Os
diff --git a/share/man/man4/ng_gif_demux.4 b/share/man/man4/ng_gif_demux.4
index e827659b8f58..2855c2563492 100644
--- a/share/man/man4/ng_gif_demux.4
+++ b/share/man/man4/ng_gif_demux.4
@@ -26,8 +26,6 @@
.\"
.\" Author: Brooks Davis <brooks@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd September 18, 2001
.Dt NG_GIF_DEMUX 4
.Os
diff --git a/share/man/man4/ng_hci.4 b/share/man/man4/ng_hci.4
index d5727ef83ea3..559d21cb3cde 100644
--- a/share/man/man4/ng_hci.4
+++ b/share/man/man4/ng_hci.4
@@ -23,7 +23,6 @@
.\" SUCH DAMAGE.
.\"
.\" $Id: ng_hci.4,v 1.3 2003/05/21 19:37:35 max Exp $
-.\" $FreeBSD$
.\"
.Dd June 25, 2002
.Dt NG_HCI 4
diff --git a/share/man/man4/ng_hole.4 b/share/man/man4/ng_hole.4
index 227170d422e8..22945fb03e21 100644
--- a/share/man/man4/ng_hole.4
+++ b/share/man/man4/ng_hole.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_hole.8,v 1.4 1999/01/25 23:46:26 archie Exp $
.\"
.Dd May 19, 2004
diff --git a/share/man/man4/ng_hub.4 b/share/man/man4/ng_hub.4
index bba9e1160577..9959cca926b5 100644
--- a/share/man/man4/ng_hub.4
+++ b/share/man/man4/ng_hub.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 5, 2010
.Dt NG_HUB 4
.Os
diff --git a/share/man/man4/ng_iface.4 b/share/man/man4/ng_iface.4
index 2259ea1076d3..0579028b4c74 100644
--- a/share/man/man4/ng_iface.4
+++ b/share/man/man4/ng_iface.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_iface.8,v 1.5 1999/01/25 23:46:26 archie Exp $
.\"
.Dd July 31, 2020
diff --git a/share/man/man4/ng_ip_input.4 b/share/man/man4/ng_ip_input.4
index 0c4cbafd2f48..73893c3ff8a7 100644
--- a/share/man/man4/ng_ip_input.4
+++ b/share/man/man4/ng_ip_input.4
@@ -59,8 +59,6 @@
.\" Author: Brooks Davis <brooks@FreeBSD.org>
.\" Derived from: ng_hole.4
.\"
-.\" $FreeBSD$
-.\"
.Dd September 27, 2001
.Dt NG_IP_INPUT 4
.Os
diff --git a/share/man/man4/ng_ipfw.4 b/share/man/man4/ng_ipfw.4
index 19e8f7418884..eef30ffa5510 100644
--- a/share/man/man4/ng_ipfw.4
+++ b/share/man/man4/ng_ipfw.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 2, 2010
.Dt NG_IPFW 4
.Os
diff --git a/share/man/man4/ng_ksocket.4 b/share/man/man4/ng_ksocket.4
index 0590bbf91f3d..1f32d39dc7d0 100644
--- a/share/man/man4/ng_ksocket.4
+++ b/share/man/man4/ng_ksocket.4
@@ -32,8 +32,6 @@
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd January 9, 2012
.Dt NG_KSOCKET 4
.Os
diff --git a/share/man/man4/ng_l2cap.4 b/share/man/man4/ng_l2cap.4
index 63b2ede785a9..0fa3901a1ce5 100644
--- a/share/man/man4/ng_l2cap.4
+++ b/share/man/man4/ng_l2cap.4
@@ -23,7 +23,6 @@
.\" SUCH DAMAGE.
.\"
.\" $Id: ng_l2cap.4,v 1.4 2003/09/14 23:37:52 max Exp $
-.\" $FreeBSD$
.\"
.Dd July 4, 2002
.Dt NG_L2CAP 4
diff --git a/share/man/man4/ng_l2tp.4 b/share/man/man4/ng_l2tp.4
index 11f3c5e515b1..becde35e2f1b 100644
--- a/share/man/man4/ng_l2tp.4
+++ b/share/man/man4/ng_l2tp.4
@@ -35,8 +35,6 @@
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd November 13, 2012
.Dt NG_L2TP 4
.Os
diff --git a/share/man/man4/ng_lmi.4 b/share/man/man4/ng_lmi.4
index 21a96d1628b4..691f00ad9bb4 100644
--- a/share/man/man4/ng_lmi.4
+++ b/share/man/man4/ng_lmi.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_lmi.8,v 1.4 1999/01/25 23:46:27 archie Exp $
.\"
.Dd November 13, 2012
diff --git a/share/man/man4/ng_macfilter.4 b/share/man/man4/ng_macfilter.4
index 895d3560136b..904f194f7fec 100644
--- a/share/man/man4/ng_macfilter.4
+++ b/share/man/man4/ng_macfilter.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 10, 2018
.Dt NG_MACFILTER 4
.Os
@@ -69,7 +67,7 @@ hook, to be connected to the
.Dv lower
hook of the NIC, and a
.Dv default
-hook where packets are sent if the MAC adddress is not found in the table.
+hook where packets are sent if the MAC address is not found in the table.
.Nm macfilter
supports up to
.Dv NG_MACFILTER_UPPER_NUM
diff --git a/share/man/man4/ng_mppc.4 b/share/man/man4/ng_mppc.4
index 0b06350d2ba6..fa000d87d57c 100644
--- a/share/man/man4/ng_mppc.4
+++ b/share/man/man4/ng_mppc.4
@@ -33,7 +33,6 @@
.\" Author: Archie Cobbs <archie@FreeBSD.org>
.\"
.\" $Whistle: ng_mppc.8,v 1.1 1999/12/08 20:20:39 archie Exp $
-.\" $FreeBSD$
.\"
.Dd June 7, 2016
.Dt NG_MPPC 4
diff --git a/share/man/man4/ng_nat.4 b/share/man/man4/ng_nat.4
index e9c0f2acbcee..10615b3b387d 100644
--- a/share/man/man4/ng_nat.4
+++ b/share/man/man4/ng_nat.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 24, 2021
.Dt NG_NAT 4
.Os
diff --git a/share/man/man4/ng_netflow.4 b/share/man/man4/ng_netflow.4
index 5372f6cb8d1c..e313eb065710 100644
--- a/share/man/man4/ng_netflow.4
+++ b/share/man/man4/ng_netflow.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 10, 2012
.Dt NG_NETFLOW 4
.Os
diff --git a/share/man/man4/ng_one2many.4 b/share/man/man4/ng_one2many.4
index 845254e19069..8a73c51d2bcf 100644
--- a/share/man/man4/ng_one2many.4
+++ b/share/man/man4/ng_one2many.4
@@ -32,8 +32,6 @@
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd November 13, 2012
.Dt NG_ONE2MANY 4
.Os
diff --git a/share/man/man4/ng_patch.4 b/share/man/man4/ng_patch.4
index f9f893fa3c0b..7a8543fd7dd8 100644
--- a/share/man/man4/ng_patch.4
+++ b/share/man/man4/ng_patch.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 17, 2015
.Dt NG_PATCH 4
.Os
diff --git a/share/man/man4/ng_pipe.4 b/share/man/man4/ng_pipe.4
index 1700c893286f..0262213eefa0 100644
--- a/share/man/man4/ng_pipe.4
+++ b/share/man/man4/ng_pipe.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 17, 2019
.Dt NG_PIPE 4
.Os
diff --git a/share/man/man4/ng_ppp.4 b/share/man/man4/ng_ppp.4
index 89e662cf81ff..c1b5b9092a2f 100644
--- a/share/man/man4/ng_ppp.4
+++ b/share/man/man4/ng_ppp.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_ppp.8,v 1.3 1999/01/25 23:46:27 archie Exp $
.\"
.Dd November 13, 2012
diff --git a/share/man/man4/ng_pppoe.4 b/share/man/man4/ng_pppoe.4
index ff53d4ef3a95..346b2bfbe279 100644
--- a/share/man/man4/ng_pppoe.4
+++ b/share/man/man4/ng_pppoe.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_pppoe.8,v 1.1 1999/01/25 23:46:27 archie Exp $
.\"
.Dd May 1, 2022
diff --git a/share/man/man4/ng_pptpgre.4 b/share/man/man4/ng_pptpgre.4
index 632bc7b555d4..935b9ec9334b 100644
--- a/share/man/man4/ng_pptpgre.4
+++ b/share/man/man4/ng_pptpgre.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_pptpgre.8,v 1.2 1999/12/08 00:20:53 archie Exp $
.\"
.Dd November 4, 2018
@@ -160,7 +158,7 @@ in transit.
Greater values allow the node to deliver packets being late after more
packets in sequence at cost of increased kernel memory usage.
.It Va net.graph.pptpgre.reorder_timeout: 1
-Defines time value in miliseconds used to wait for late packets.
+Defines time value in milliseconds used to wait for late packets.
.El
.Sh SEE ALSO
.Xr netgraph 4 ,
diff --git a/share/man/man4/ng_pred1.4 b/share/man/man4/ng_pred1.4
index 91a7103c3284..98634aea50e9 100644
--- a/share/man/man4/ng_pred1.4
+++ b/share/man/man4/ng_pred1.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 24, 2006
.Dt NG_PRED1 4
.Os
diff --git a/share/man/man4/ng_rfc1490.4 b/share/man/man4/ng_rfc1490.4
index 51baa9e26a66..116604238a6a 100644
--- a/share/man/man4/ng_rfc1490.4
+++ b/share/man/man4/ng_rfc1490.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_rfc1490.8,v 1.4 1999/01/25 23:46:27 archie Exp $
.\"
.Dd January 19, 1999
diff --git a/share/man/man4/ng_socket.4 b/share/man/man4/ng_socket.4
index d05802b0862e..b892498d842a 100644
--- a/share/man/man4/ng_socket.4
+++ b/share/man/man4/ng_socket.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_socket.8,v 1.5 1999/01/25 23:46:27 archie Exp $
.\"
.Dd January 19, 1999
diff --git a/share/man/man4/ng_source.4 b/share/man/man4/ng_source.4
index 87b235bda2c8..38bf2d355964 100644
--- a/share/man/man4/ng_source.4
+++ b/share/man/man4/ng_source.4
@@ -30,7 +30,6 @@
.\" DAMAGE.
.\"
.\" Author: Dave Chapeskie
-.\" $FreeBSD$
.\"
.Dd January 18, 2021
.Dt NG_SOURCE 4
diff --git a/share/man/man4/ng_split.4 b/share/man/man4/ng_split.4
index 827ecb65500b..5bcdb7bbde69 100644
--- a/share/man/man4/ng_split.4
+++ b/share/man/man4/ng_split.4
@@ -32,8 +32,6 @@
.\"
.\" Author: Julian Elischer <julian@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd February 19, 2001
.Dt NG_SPLIT 4
.Os
diff --git a/share/man/man4/ng_sscfu.4 b/share/man/man4/ng_sscfu.4
deleted file mode 100644
index 2c444dacd589..000000000000
--- a/share/man/man4/ng_sscfu.4
+++ /dev/null
@@ -1,161 +0,0 @@
-.\"
-.\" Copyright (c) 2001-2003
-.\" Fraunhofer Institute for Open Communication Systems (FhG Fokus).
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" Author: Hartmut Brandt <harti@FreeBSD.org>
-.\"
-.\" $FreeBSD$
-.\"
-.\" ng_sscfu(4) man page
-.\"
-.Dd October 24, 2003
-.Dt NG_SSCFU 4
-.Os
-.Sh NAME
-.Nm ng_sscfu
-.Nd netgraph SSCF at the UNI node type
-.Sh SYNOPSIS
-.In netnatm/saal/sscopdef.h
-.In netnatm/saal/sscfudef.h
-.In netgraph/atm/ng_sscfu.h
-.Sh DESCRIPTION
-The
-.Nm sscfu
-netgraph node type implements ITU-T recommendation Q.2130.
-This recommendation specifies the Service Specific Coordination
-Function at the UNI.
-This is a thin sub-layer between the SSCOP (see
-.Xr ng_sscop 4 )
-and the UNI signalling.
-This node does not really implement a protocol but
-provides a mapping between the signals at the upper layer of the SSCOP and
-the signals the UNI expects at its lower layer.
-It also provides default values for the parameters of the SSCOP.
-.Pp
-After creation of the node, the SSCF instance must be created by sending
-an
-.Dq enable
-message to the node.
-If the node is enabled, default SSCOP parameters
-can be retrieved and set in the corresponding SSCOP instance.
-.Pp
-The node is shut down either by a
-.Dv NGM_SHUTDOWN
-message, or when all hooks are disconnected.
-.Sh HOOKS
-Each
-.Nm sscfu
-node has two hooks with fixed names:
-.Bl -tag -width ".Va upper"
-.It Va lower
-This hook is the interface to the SSCOP.
-The interface expected here is exactly
-that which is exported by the
-.Xr ng_sscop 4
-node type.
-.It Va upper
-This is the interface to the UNI.
-It uses the following message format:
-.Bd -literal
-struct sscfu_arg {
- uint32_t sig;
- u_char data[];
-};
-.Ed
-.Pp
-The
-.Va sig
-field
-is one of the following signals:
-.Bd -literal
-enum saal_sig {
- SAAL_ESTABLISH_request, /* U -> SAAL: (UU) */
- SAAL_ESTABLISH_indication, /* SAAL -> U: (UU) */
- SAAL_ESTABLISH_confirm, /* SAAL -> U: (UU) */
- SAAL_RELEASE_request, /* U -> SAAL: (UU) */
- SAAL_RELEASE_confirm, /* SAAL -> U: */
- SAAL_RELEASE_indication, /* SAAL -> U: (UU) */
- SAAL_DATA_request, /* U -> SAAL: (DATA) */
- SAAL_DATA_indication, /* SAAL -> U: (DATA) */
- SAAL_UDATA_request, /* U -> SAAL: (UDATA) */
- SAAL_UDATA_indication, /* SAAL -> U: (UDATA) */
-};
-.Ed
-.Pp
-The arrows in the comment show the direction of the signal, whether it
-is a signal that comes out of the node
-.Pq Ql -> ,
-or is sent by the node user to the node
-.Pq Ql <- .
-The type of the data expected for the signal is specified in parentheses.
-This data starts at the
-.Va data
-field of the message structure.
-.El
-.Pp
-If the
-.Va lower
-hook is disconnected and the node is enabled, the protocol state is
-reset.
-.Sh CONTROL MESSAGES
-The
-.Nm sscfu
-node understands the generic messages plus the following:
-.Bl -tag -width foo
-.It Dv NGM_SSCFU_GETDEFPARAM Pq Ic getdefparam
-This message returns a
-.Vt sscop_param
-structure, which contains the default parameters for the SSCOP at the
-UNI.
-This structure should be used for a
-.Dv NGM_SSCOP_SETPARAM
-message to the SSCOP node below the SSCF.
-.It Dv NGM_SSCFU_ENABLE Pq Ic enable
-This message creates the actual SSCF instance and initializes it.
-Until this is done, parameters may neither be retrieved nor set,
-and all messages
-received on any hook are discarded.
-.It Dv NGM_SSCFU_DISABLE Pq Ic disable
-Destroy the SSCF instance.
-After this, all messages on any hooks are discarded.
-.It Dv NGM_SSCFU_GETDEBUG Pq Ic getdebug
-Retrieve the debugging flags in a
-.Vt uint32_t .
-.It Dv NGM_SSCFU_SETDEBUG Pq Ic setdebug
-Set debugging flags.
-The argument must be a
-.Vt uint32_t .
-.It Dv NGM_SSCFU_GETSTATE Pq Ic getstate
-Retrieve the current state of the SSCFU instance in a
-.Vt uint32_t .
-If the node has not been enabled, 0 is returned.
-.El
-.Sh SEE ALSO
-.Xr netgraph 4 ,
-.Xr ng_atm 4 ,
-.Xr ng_sscop 4 ,
-.Xr ngctl 8
-.Sh AUTHORS
-.An Harti Brandt Aq Mt harti@FreeBSD.org
diff --git a/share/man/man4/ng_sscop.4 b/share/man/man4/ng_sscop.4
deleted file mode 100644
index c98a43462581..000000000000
--- a/share/man/man4/ng_sscop.4
+++ /dev/null
@@ -1,403 +0,0 @@
-.\"
-.\" Copyright (c) 2001-2003
-.\" Fraunhofer Institute for Open Communication Systems (FhG Fokus).
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" Author: Hartmut Brandt <harti@FreeBSD.org>
-.\"
-.\" $FreeBSD$
-.\"
-.\" ng_sscop(4) man page
-.\"
-.Dd October 24, 2003
-.Dt NG_SSCOP 4
-.Os
-.Sh NAME
-.Nm ng_sscop
-.Nd netgraph SSCOP node type
-.Sh SYNOPSIS
-.In netnatm/saal/sscopdef.h
-.In netgraph/atm/ng_sscop.h
-.Sh DESCRIPTION
-The
-.Nm sscop
-netgraph node type implements the ITU-T standard Q.2110.
-This standard describes
-the so called Service Specific Connection Oriented Protocol (SSCOP) that
-is used to carry signalling messages over the private and public UNIs and
-the public NNI.
-This protocol is a transport protocol with selective
-acknowledgements, and can be tailored to the environment.
-This implementation is a full implementation of that standard.
-.Pp
-After creation of the node, the SSCOP instance must be created by sending
-an
-.Dq enable
-message to the node.
-If the node is enabled, the SSCOP parameters
-can be retrieved and modified and the protocol can be started.
-.Pp
-The node is shut down either by a
-.Dv NGM_SHUTDOWN
-message, or when all hooks are disconnected.
-.Sh HOOKS
-Each
-.Nm sscop
-node has three hooks with fixed names:
-.Bl -tag -width ".Va manage"
-.It Va lower
-This hook must be connected to a node that ensures
-transport of packets to and from the remote peer node.
-Normally this is a
-.Xr ng_atm 4
-node with an AAL5 hook, but the
-.Nm sscop
-node is able to work on any packet-transporting layer, like, for example,
-IP or UDP.
-The node handles flow control messages received on
-this hook: if it receives a
-.Dv NGM_HIGH_WATER_PASSED
-message, it declares the
-.Dq "lower layer busy"
-state.
-If a
-.Dv NGM_LOW_WATER_PASSED
-message is received, the busy state is cleared.
-Note that the node does not
-look at the message contents of these flow control messages.
-.It Va upper
-This is the interface to the SSCOP user.
-This interface uses the following message format:
-.Bd -literal
-struct sscop_arg {
- uint32_t sig;
- uint32_t arg; /* opt. sequence number or clear-buff */
- u_char data[];
-};
-.Ed
-.Pp
-The
-.Va sig
-field
-is one of the signals defined in the standard:
-.Bd -literal
-enum sscop_aasig {
- SSCOP_ESTABLISH_request, /* <- UU, BR */
- SSCOP_ESTABLISH_indication, /* -> UU */
- SSCOP_ESTABLISH_response, /* <- UU, BR */
- SSCOP_ESTABLISH_confirm, /* -> UU */
-
- SSCOP_RELEASE_request, /* <- UU */
- SSCOP_RELEASE_indication, /* -> UU, SRC */
- SSCOP_RELEASE_confirm, /* -> */
-
- SSCOP_DATA_request, /* <- MU */
- SSCOP_DATA_indication, /* -> MU, SN */
-
- SSCOP_UDATA_request, /* <- MU */
- SSCOP_UDATA_indication, /* -> MU */
-
- SSCOP_RECOVER_indication, /* -> */
- SSCOP_RECOVER_response, /* <- */
-
- SSCOP_RESYNC_request, /* <- UU */
- SSCOP_RESYNC_indication, /* -> UU */
- SSCOP_RESYNC_response, /* <- */
- SSCOP_RESYNC_confirm, /* -> */
-
- SSCOP_RETRIEVE_request, /* <- RN */
- SSCOP_RETRIEVE_indication, /* -> MU */
- SSCOP_RETRIEVE_COMPL_indication,/* -> */
-};
-.Ed
-.Pp
-The arrows in the comment show the direction of the signal, whether it
-is a signal that comes out of the node
-.Pq Ql -> ,
-or is sent by the node user to the node
-.Pq Ql <- .
-The
-.Va arg
-field contains the argument to some of the signals: it is either a PDU
-sequence number, or the
-.Dv CLEAR-BUFFER
-flag.
-There are a number of special sequence numbers for some operations:
-.Pp
-.Bl -tag -width ".Dv SSCOP_RETRIEVE_UNKNOWN" -offset indent -compact
-.It Dv SSCOP_MAXSEQNO
-maximum legal sequence number
-.It Dv SSCOP_RETRIEVE_UNKNOWN
-retrieve transmission queue
-.It Dv SSCOP_RETRIEVE_TOTAL
-retrieve transmission buffer and queue
-.El
-.Pp
-For signals that carry user data (as, for example,
-.Dv SSCOP_DATA_request )
-these two fields are followed by the variable sized user data.
-.Pp
-If the
-.Va upper
-hook is disconnected and the SSCOP instance is not in the idle
-state, and the
-.Va lower
-hook is still connected, an
-.Dv SSCOP_RELEASE_request
-is executed to release the SSCOP connection.
-.It Va manage
-This is the management interface defined in the standard.
-The data structure used here is:
-.Bd -literal
-struct sscop_marg {
- uint32_t sig;
- u_char data[];
-};
-.Ed
-.Pp
-Here
-.Va sig
-is one of
-.Bd -literal
-enum sscop_maasig {
- SSCOP_MDATA_request, /* <- MU */
- SSCOP_MDATA_indication, /* -> MU */
- SSCOP_MERROR_indication, /* -> CODE, CNT */
-};
-.Ed
-.Pp
-The
-.Dv SSCOP_MDATA
-signals are followed by the actual management data, where the
-.Dv SSCOP_MERROR
-signal has the form:
-.Bd -literal
-struct sscop_merr {
- uint32_t sig;
- uint32_t err; /* error code */
- uint32_t cnt; /* error count */
-};
-.Ed
-.El
-.Sh CONTROL MESSAGES
-The
-.Nm sscop
-node understands the generic control messages, plus the following:
-.Bl -tag -width foo
-.It Dv NGM_SSCOP_SETPARAM Pq Ic setparam
-Sets operational parameters of the SSCOP instance and takes the
-following structure:
-.Bd -literal
-struct ng_sscop_setparam {
- uint32_t mask;
- struct sscop_param param;
-};
-.Ed
-.Pp
-The sub-structure
-.Va param
-contains the parameters to set, and the
-.Va mask
-field contains a bit mask, telling which of the parameters to set, and which
-to ignore.
-If a bit is set, the corresponding parameter is set.
-The parameters are:
-.Bd -literal
-struct sscop_param {
- uint32_t timer_cc; /* timer_cc in msec */
- uint32_t timer_poll; /* timer_poll im msec */
- uint32_t timer_keep_alive;/* timer_keep_alive in msec */
- uint32_t timer_no_response;/*timer_no_response in msec */
- uint32_t timer_idle; /* timer_idle in msec */
- uint32_t maxk; /* maximum user data in bytes */
- uint32_t maxj; /* maximum u-u info in bytes */
- uint32_t maxcc; /* max. retransmissions for control packets */
- uint32_t maxpd; /* max. vt(pd) before sending poll */
- uint32_t maxstat; /* max. number of elements in stat list */
- uint32_t mr; /* initial window */
- uint32_t flags; /* flags */
-};
-.Ed
-.Pp
-The
-.Va flags
-field contains the following flags influencing SSCOP operation:
-.Pp
-.Bl -tag -width ".Dv SSCOP_POLLREX" -offset indent -compact
-.It Dv SSCOP_ROBUST
-enable atmf/97-0216 robustness enhancement
-.It Dv SSCOP_POLLREX
-send POLL after each retransmission
-.El
-.Pp
-The bitmap has the following bits:
-.Pp
-.Bl -tag -width ".Dv SSCOP_SET_POLLREX" -offset indent -compact
-.It Dv SSCOP_SET_TCC
-set
-.Va timer_cc
-.It Dv SSCOP_SET_TPOLL
-set
-.Va timer_poll
-.It Dv SSCOP_SET_TKA
-set
-.Va timer_keep_alive
-.It Dv SSCOP_SET_TNR
-set
-.Va timer_no_response
-.It Dv SSCOP_SET_TIDLE
-set
-.Va timer_idle
-.It Dv SSCOP_SET_MAXK
-set
-.Va maxk
-.It Dv SSCOP_SET_MAXJ
-set
-.Va maxj
-.It Dv SSCOP_SET_MAXCC
-set
-.Va maxcc
-.It Dv SSCOP_SET_MAXPD
-set
-.Va maxpd
-.It Dv SSCOP_SET_MAXSTAT
-set
-.Va maxstat
-.It Dv SSCOP_SET_MR
-set the initial window
-.It Dv SSCOP_SET_ROBUST
-set or clear
-.Dv SSCOP_ROBUST
-.It Dv SSCOP_SET_POLLREX
-set or clear
-.Dv SSCOP_POLLREX
-.El
-.Pp
-The node responds to the
-.Dv NGM_SSCOP_SETPARAM
-message with the following response:
-.Bd -literal
-struct ng_sscop_setparam_resp {
- uint32_t mask;
- int32_t error;
-};
-.Ed
-.Pp
-Here
-.Va mask
-contains a bitmask of the parameters that the user requested to set,
-but that could not be set and
-.Va error
-is an
-.Xr errno 2
-code describing why the parameter could not be set.
-.It Dv NGM_SSCOP_GETPARAM Pq Ic getparam
-This message returns the current operational parameters of the SSCOP
-instance in a
-.Vt sscop_param
-structure.
-.It Dv NGM_SSCOP_ENABLE Pq Ic enable
-This message creates the actual SSCOP instance and initializes it.
-Until this is done, parameters may neither be retrieved nor set, and all
-messages received on any hook are discarded.
-.It Dv NGM_SSCOP_DISABLE Pq Ic disable
-Destroy the SSCOP instance.
-After this, all messages on any hooks are
-discarded.
-.It Dv NGM_SSCOP_SETDEBUG Pq Ic setdebug
-Set debugging flags.
-The argument is a
-.Vt uint32_t .
-.It Dv NGM_SSCOP_GETDEBUG Pq Ic getdebug
-Retrieve the actual debugging flags.
-Needs no arguments and responds with a
-.Vt uint32_t .
-.It Dv NGM_SSCOP_GETSTATE Pq Ic getstate
-Responds with the current state of the SSCOP instance in a
-.Vt uint32_t .
-If the node is not enabled, the retrieved state is 0.
-.El
-.Sh FLOW CONTROL
-Flow control works on the upper and on the lower layer interface.
-At the lower
-layer interface, the two messages,
-.Dv NGM_HIGH_WATER_PASSED
-and
-.Dv NGM_LOW_WATER_PASSED ,
-are used to declare or clear the
-.Dq "lower layer busy"
-state of the protocol.
-.Pp
-At the upper layer interface, the
-.Nm sscop
-node handles three types of flow control messages:
-.Bl -tag -width foo
-.It Dv NGM_HIGH_WATER_PASSED
-If this message is received, the SSCOP stops moving the receive window.
-Each time a data message is handed over to the upper layer, the receive
-window is moved by one message.
-Stopping these updates
-means that the window will start to close and if the peer has sent
-all messages allowed by the current window, it stops transmission.
-This means that the upper layer must be able to still receive a full window
-amount of messages.
-.It Dv NGM_LOW_WATER_PASSED
-This will re-enable the automatic window updates, and if the space indicated
-in the message is larger than the current window, the window will be opened
-by that amount.
-The space is computed as the difference of the
-.Va max_queuelen_packets
-and
-.Va current
-members of the
-.Vt ngm_queue_state
-structure.
-.It Dv NGM_SYNC_QUEUE_STATE
-If the upper layer buffer filling state, as indicated by
-.Va current ,
-is equal to or greater than
-.Va high_watermark
-then the message is ignored.
-If this is not the case, the amount
-of receiver space is computed as the difference of
-.Va max_queuelen_packets
-and
-.Va current
-if automatic window updates are currently allowed, and as the difference of
-.Va high_water_mark
-and
-.Va current
-if window updates are disabled.
-If the resulting value is larger than the current window, the current window
-is opened up to this value.
-Automatic window updates are enabled if they
-were disabled.
-.El
-.Sh SEE ALSO
-.Xr netgraph 4 ,
-.Xr ng_atm 4 ,
-.Xr ng_sscfu 4 ,
-.Xr ngctl 8
-.Sh AUTHORS
-.An Harti Brandt Aq Mt harti@FreeBSD.org
diff --git a/share/man/man4/ng_tag.4 b/share/man/man4/ng_tag.4
index 76209f5a3337..58e736c1e00f 100644
--- a/share/man/man4/ng_tag.4
+++ b/share/man/man4/ng_tag.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 10, 2006
.Dt NG_TAG 4
.Os
diff --git a/share/man/man4/ng_tcpmss.4 b/share/man/man4/ng_tcpmss.4
index e13c562e3eee..f2fc5038ea10 100644
--- a/share/man/man4/ng_tcpmss.4
+++ b/share/man/man4/ng_tcpmss.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 9, 2005
.Dt NG_TCPMSS 4
.Os
diff --git a/share/man/man4/ng_tee.4 b/share/man/man4/ng_tee.4
index 426aaf99d012..5486201a9138 100644
--- a/share/man/man4/ng_tee.4
+++ b/share/man/man4/ng_tee.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_tee.8,v 1.4 1999/01/25 23:46:27 archie Exp $
.\"
.Dd May 28, 2004
diff --git a/share/man/man4/ng_tty.4 b/share/man/man4/ng_tty.4
index c8d5b37e95c7..85ab98430d80 100644
--- a/share/man/man4/ng_tty.4
+++ b/share/man/man4/ng_tty.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_tty.8,v 1.5 1999/01/25 23:46:28 archie Exp $
.\"
.Dd December 25, 2008
diff --git a/share/man/man4/ng_ubt.4 b/share/man/man4/ng_ubt.4
index 0036fa8cfd08..eff923aa2a47 100644
--- a/share/man/man4/ng_ubt.4
+++ b/share/man/man4/ng_ubt.4
@@ -23,7 +23,6 @@
.\" SUCH DAMAGE.
.\"
.\" $Id: ng_ubt.4,v 1.3 2003/05/21 19:37:35 max Exp $
-.\" $FreeBSD$
.\"
.Dd December 26, 2012
.Dt NG_UBT 4
diff --git a/share/man/man4/ng_uni.4 b/share/man/man4/ng_uni.4
deleted file mode 100644
index da7028b0e015..000000000000
--- a/share/man/man4/ng_uni.4
+++ /dev/null
@@ -1,420 +0,0 @@
-.\"
-.\" Copyright (c) 2001-2003
-.\" Fraunhofer Institute for Open Communication Systems (FhG Fokus).
-.\" All rights reserved.
-.\"
-.\" Author: Hartmut Brandt <harti@FreeBSD.org>
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd October 6, 2003
-.Dt NG_UNI 4
-.Os
-.Sh NAME
-.Nm ng_uni
-.Nd netgraph UNI node type
-.Sh SYNOPSIS
-.In netnatm/msg/unistruct.h
-.In netnatm/sig/unidef.h
-.In netgraph/atm/ng_uni.h
-.Sh DESCRIPTION
-The
-.Nm uni
-netgraph node type implements ATM Forum signalling 4.0.
-.Pp
-After creation of the node, the UNI instance must be created by sending
-an
-.Dq enable
-message to the node.
-If the node is enabled, the UNI parameters
-can be retrieved and modified, and the protocol can be started.
-.Pp
-The node is shut down either by an
-.Dv NGM_SHUTDOWN
-message, or when all hooks are disconnected.
-.Sh HOOKS
-Each
-.Nm uni
-node has three hooks with fixed names:
-.Bl -tag -width ".Va upper"
-.It Va lower
-This hook is the interface of the UNI protocol to the transport layer of
-the ATM control plane.
-The node expects the interface exported by
-.Xr ng_sscfu 4
-at this hook.
-.It Va upper
-This hook is the
-.Dq user
-interface of the UNI protocol.
-Because there is no standardized interface
-at this point, this implementation follows more or less the interface
-specified by the SDL diagrams in ITU-T recommendations Q.2931 and Q.2971.
-Normally either a
-.Xr ng_ccatm 4
-or a switch CAC should be stacked at this interface.
-The message format at the
-.Va upper
-hook is described below.
-Because
-.Xr netgraph 4
-is functional, it makes sometimes sense to switch this hook to queueing mode
-from the peer node upon connection.
-.El
-.Pp
-The
-.Va upper
-interface of the
-.Nm uni
-node is loosely modelled after the interface specified in the ITU-T signalling
-standards.
-There is however one derivation from this: normally there exists
-four kinds of signals: requests, responses, indications and confirmations.
-These signals are usually triggered either by external events (receiving a
-message) or internal events (a timer or another signal).
-This scheme works
-fine for user APIs that are entirely asynchronous, and in cases where
-error handling is not taken into account.
-With synchronous APIs and error
-handling however, there is a problem.
-If, for example, the application
-issues a request to set up a connection,
-it may do it by sending a
-.Dv SETUP.request
-signal to the UNI.
-Normally, the UNI stack will send a SETUP message and
-receive a message from the switch (a RELEASE, CONNECT, CALL PROCEEDING or
-ALERTING), or a timer in the UNI stack will time out.
-In any of these cases,
-the UNI stack is supposed to report an event back to the application, and
-the application will unblock (in the case of a synchronous API) and handle
-the event.
-The problem occurs when an error happens.
-Suppose there is no
-memory to send the SETUP message and to start the timer.
-In this case, the
-application will block forever because no received message and no timer
-will wake it up.
-For this reason this implementation uses an additional message:
-for each signal sent from the application to the stack, the stack will
-respond with an error code.
-If this code is zero, the stack has accepted
-the signal and the application may block; if the code is non-zero, the signal
-is effectively ignored and the code describes what was wrong.
-This system
-makes it very easy to make a blocking interface out of the message based
-netgraph interface.
-.Pp
-The
-.Va upper
-interface uses the following structure:
-.Bd -literal
-struct uni_arg {
- uint32_t sig;
- uint32_t cookie;
- u_char data[];
-};
-.Ed
-The
-.Va sig
-field contains the actual signal that is sent from the user to UNI or from
-UNI to the user.
-The
-.Va cookie
-can be used by the user to correlate requests with events and responses.
-If an error response, a confirmation or an indication was triggered by
-a request or response, the cookie from that request or response is carried in
-the message from the stack to the user.
-The
-.Va cookie
-field is followed by the actual data for the signal.
-.Pp
-The signal is one of the following:
-.Bd -literal
-enum uni_sig {
- UNIAPI_ERROR, /* UNI -> API */
-
- UNIAPI_CALL_CREATED, /* UNI -> API */
- UNIAPI_CALL_DESTROYED, /* UNI -> API */
- UNIAPI_PARTY_CREATED, /* UNI -> API */
- UNIAPI_PARTY_DESTROYED, /* UNI -> API */
-
- UNIAPI_LINK_ESTABLISH_request, /* API -> UNI */
- UNIAPI_LINK_ESTABLISH_confirm, /* UNI -> API */
- UNIAPI_LINK_RELEASE_request, /* API -> UNI */
- UNIAPI_LINK_RELEASE_confirm, /* UNI -> API */
-
- UNIAPI_RESET_request, /* API -> UNI */
- UNIAPI_RESET_confirm, /* UNI -> API */
- UNIAPI_RESET_indication, /* UNI -> API */
- UNIAPI_RESET_ERROR_indication, /* UNI -> API */
- UNIAPI_RESET_response, /* API -> UNI */
- UNIAPI_RESET_ERROR_response, /* API -> UNI */
- UNIAPI_RESET_STATUS_indication, /* UNI -> API */
-
- UNIAPI_SETUP_request, /* API -> UNI */
- UNIAPI_SETUP_indication, /* UNI -> API */
- UNIAPI_SETUP_response, /* API -> UNI */
- UNIAPI_SETUP_confirm, /* UNI -> API */
- UNIAPI_SETUP_COMPLETE_indication, /* UNI -> API */
- UNIAPI_ALERTING_request, /* API -> UNI */
- UNIAPI_ALERTING_indication, /* UNI -> API */
- UNIAPI_PROCEEDING_request, /* API -> UNI */
- UNIAPI_PROCEEDING_indication, /* UNI -> API */
- UNIAPI_RELEASE_request, /* API -> UNI */
- UNIAPI_RELEASE_indication, /* UNI -> API */
- UNIAPI_RELEASE_response, /* API -> UNI */
- UNIAPI_RELEASE_confirm, /* UNI -> API */
- UNIAPI_NOTIFY_request, /* API -> UNI */
- UNIAPI_NOTIFY_indication, /* UNI -> API */
- UNIAPI_STATUS_indication, /* UNI -> API */
- UNIAPI_STATUS_ENQUIRY_request, /* API -> UNI */
-
- UNIAPI_ADD_PARTY_request, /* API -> UNI */
- UNIAPI_ADD_PARTY_indication, /* UNI -> API */
- UNIAPI_PARTY_ALERTING_request, /* API -> UNI */
- UNIAPI_PARTY_ALERTING_indication, /* UNI -> API */
- UNIAPI_ADD_PARTY_ACK_request, /* API -> UNI */
- UNIAPI_ADD_PARTY_ACK_indication, /* UNI -> API */
- UNIAPI_ADD_PARTY_REJ_request, /* API -> UNI */
- UNIAPI_ADD_PARTY_REJ_indication, /* UNI -> API */
- UNIAPI_DROP_PARTY_request, /* API -> UNI */
- UNIAPI_DROP_PARTY_indication, /* UNI -> API */
- UNIAPI_DROP_PARTY_ACK_request, /* API -> UNI */
- UNIAPI_DROP_PARTY_ACK_indication, /* UNI -> API */
-
- UNIAPI_ABORT_CALL_request, /* API -> UNI */
-
- UNIAPI_MAXSIG
-};
-.Ed
-.Pp
-The meaning of most of the signals can be deduced from the ITU-T SDLs.
-A number of signals, however, is unique to this implementation:
-.Bl -tag -width foo
-.It Dv UNIAPI_ERROR
-This is the error response, mentioned earlier.
-It carries an error code or
-zero, if the signal was accepted by the stack.
-.It Dv UNIAPI_CALL_CREATED
-The UNI stack has created a call instance either from an incoming SETUP or
-from the user requesting an outgoing SETUP.
-This may be used to synchronize
-the creation and destroying of call data between the UNI stack and the user.
-.It Dv UNIAPI_CALL_DESTROYED
-A call instance has been destroyed and all resources have been freed.
-.It Dv UNIAPI_PARTY_CREATED
-A new party has been created for an existing point-to-multipoint call.
-This may be used to synchronize the creation and destroying of party data
-between the UNI stack and the user.
-.It Dv UNIAPI_PARTY_DESTROYED
-A party has been destroyed and all resources have been freed.
-.It Dv UNIAPI_ABORT_CALL_request
-This requests the stack to destroy the call instance
-and free all its resources,
-without sending any messages to the network.
-.It Dv UNIAPI_MAXSIG
-This is not a signal, but rather a definition to get the number of defined
-signals.
-.El
-.Pp
-Each of the signals is followed by a fixed size structure defined in
-.In netnatm/sig/unidef.h .
-.Sh CONTROL MESSAGES
-The
-.Nm uni
-node understands the standard control messages, plus the following:
-.Bl -tag -width foo
-.It Dv NGM_UNI_SETDEBUG Pq Ic setdebug
-Set debugging facility levels.
-The UNI stack defines a number of debugging
-facilities, each one associated with a debugging level.
-If the debugging level
-of a facility is non-zero, text output will be generated to the console.
-The message uses the following structure:
-.Bd -literal
-struct ngm_uni_debug {
- uint32_t level[UNI_MAXFACILITY];
-};
-.Ed
-.It Dv NGM_UNI_GETDEBUG Pq Ic getdebug
-Get debugging facility levels.
-This returns an
-.Vt ngm_uni_debug
-structure.
-.It Dv NGM_UNI_GET_CONFIG Pq Ic get_config
-Retrieve the current configuration of the UNI instance.
-This message returns a
-.Vt uni_config
-structure:
-.Bd -literal
-struct uni_config {
- uint32_t proto; /* which protocol */
- uint32_t popt; /* protocol option */
- uint32_t option; /* other options */
- uint32_t timer301; /* T301 */
- uint32_t timer303; /* T303 */
- uint32_t init303; /* T303 retransmission count */
- uint32_t timer308; /* T308 */
- uint32_t init308; /* T308 retransmission count */
- uint32_t timer309; /* T309 */
- uint32_t timer310; /* T310 */
- uint32_t timer313; /* T313 */
- uint32_t timer316; /* T316 */
- uint32_t init316; /* T316 retransmission count */
- uint32_t timer317; /* T317 */
- uint32_t timer322; /* T322 */
- uint32_t init322; /* T322 retransmission count */
- uint32_t timer397; /* T397 */
- uint32_t timer398; /* T398 */
- uint32_t timer399; /* T399 */
-};
-.Ed
-.Pp
-The field
-.Va proto
-specifies one of the following protocols:
-.Bd -literal
-enum uni_proto {
- UNIPROTO_UNI40U, /* UNI4.0 user side */
- UNIPROTO_UNI40N, /* UNI4.0 network side */
- UNIPROTO_PNNI10, /* PNNI1.0 */
-};
-.Ed
-.Pp
-Some protocols may have options which can be set in
-.Va popt :
-.Bd -literal
-enum uni_popt {
- UNIPROTO_GFP, /* enable GFP */
-};
-.Ed
-.Pp
-The
-.Va option
-field controls parsing and checking of messages:
-.Bd -literal
-enum uni_option {
- UNIOPT_GIT_HARD, /* harder check of GIT IE */
- UNIOPT_BEARER_HARD, /* harder check of BEARER IE */
- UNIOPT_CAUSE_HARD, /* harder check of CAUSE IE */
-};
-.Ed
-.Pp
-All timer values are given in milliseconds.
-Note, however, that the actual
-resolution of the timers depend on system configuration (see
-.Xr timeout 9 ) .
-.It Dv NGM_UNI_SET_CONFIG Pq Ic set_config
-Change the UNI configuration.
-This takes a
-.Bd -literal
-struct ngm_uni_set_config {
- struct uni_config config;
- struct ngm_uni_config_mask mask;
-};
-struct ngm_uni_config_mask {
- uint32_t mask;
- uint32_t popt_mask;
- uint32_t option_mask;
-};
-.Ed
-.Pp
-The fields of the
-.Vt ngm_uni_config_mask
-specify which configuration parameter to change.
-The
-.Va mask
-field contains bit definitions for all timers, retransmission counters
-and the
-.Va proto
-field,
-.Va popt_mask
-selects which of the protocol options to change, and
-.Va option_mask
-specifies which options should be changed.
-The following bits are defined:
-.Bd -literal
-enum uni_config_mask {
- UNICFG_PROTO,
- UNICFG_TIMER301,
- UNICFG_TIMER303,
- UNICFG_INIT303,
- UNICFG_TIMER308,
- UNICFG_INIT308,
- UNICFG_TIMER309,
- UNICFG_TIMER310,
- UNICFG_TIMER313,
- UNICFG_TIMER316,
- UNICFG_INIT316,
- UNICFG_TIMER317,
- UNICFG_TIMER322,
- UNICFG_INIT322,
- UNICFG_TIMER397,
- UNICFG_TIMER398,
- UNICFG_TIMER399,
-};
-.Ed
-.Pp
-For
-.Va popt_mask
-and
-.Va option_mask ,
-the definitions from
-.Vt "enum uni_popt"
-and
-.Vt "enum uni_option"
-should be used.
-.It Dv NGM_UNI_ENABLE Pq Ic enable
-Create the UNI instance and enable processing.
-Before the UNI is enabled parameters cannot be retrieved or set.
-.It Dv NGM_UNI_DISABLE Pq Ic disable
-Destroy the UNI instance and free all resources.
-Note, that connections are not released.
-.El
-.Sh SEE ALSO
-.Xr netgraph 4 ,
-.Xr ng_atm 4 ,
-.Xr ng_sscfu 4 ,
-.Xr ng_sscop 4 ,
-.Xr ngctl 8
-.Sh AUTHORS
-The
-.Nm uni
-netgraph node
-and this manual page were written by
-.An Harti Brandt Aq Mt harti@FreeBSD.org
-.Sh BUGS
-.Bl -bullet -compact
-.It
-LIJ (leaf-initiated-join) is not implemented yet.
-.It
-GFP (generic functional protocol, Q.2932.1) is not yet implemented.
-.It
-More testing needed.
-.It
-PNNI not yet implemented.
-.It
-Need to implement connection modification and the Q.2931 amendments.
-.El
diff --git a/share/man/man4/ng_vjc.4 b/share/man/man4/ng_vjc.4
index bc4d562cd8bc..bce0933649bc 100644
--- a/share/man/man4/ng_vjc.4
+++ b/share/man/man4/ng_vjc.4
@@ -31,8 +31,6 @@
.\" OF SUCH DAMAGE.
.\"
.\" Author: Archie Cobbs <archie@FreeBSD.org>
-.\"
-.\" $FreeBSD$
.\" $Whistle: ng_vjc.8,v 1.4 1999/01/25 23:46:28 archie Exp $
.\"
.Dd January 19, 1999
diff --git a/share/man/man4/ng_vlan.4 b/share/man/man4/ng_vlan.4
index 7b225fdef06c..0356d5f7e2dc 100644
--- a/share/man/man4/ng_vlan.4
+++ b/share/man/man4/ng_vlan.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 1, 2004
.Dt NG_VLAN 4
.Os
diff --git a/share/man/man4/ng_vlan_rotate.4 b/share/man/man4/ng_vlan_rotate.4
index 4640737c7d54..37bd6c17122a 100644
--- a/share/man/man4/ng_vlan_rotate.4
+++ b/share/man/man4/ng_vlan_rotate.4
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2019-2021 IKS Service GmbH
.\"
@@ -26,8 +26,6 @@
.\"
.\" Author: Lutz Donnerhacke <lutz@donnerhacke.de>
.\"
-.\" $FreeBSD$
-.\"
.Dd January 26, 2021
.Dt NG_VLAN_ROTATE 4
.Os
@@ -159,7 +157,7 @@ The first example demonstrates how to rotate double or triple tagged
frames so that the innermost C-VLAN can be used as service
discriminator.
The single or double tagged frames (C-VLAN removed) are sent out to an
-interface pointing to different infrastucture.
+interface pointing to different infrastructure.
.Bd -literal
#!/bin/sh
diff --git a/share/man/man4/ngatmbase.4 b/share/man/man4/ngatmbase.4
deleted file mode 100644
index 0227b44347bd..000000000000
--- a/share/man/man4/ngatmbase.4
+++ /dev/null
@@ -1,134 +0,0 @@
-.\"
-.\" Copyright (c) 2004
-.\" Hartmut Brandt.
-.\" All rights reserved.
-.\"
-.\" Author: Hartmut Brandt <harti@FreeBSD.org>
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.\" ngatmbase(4) man page
-.\"
-.Dd August 24, 2004
-.Dt NGATMBASE 4
-.Os
-.Sh NAME
-.Nm ngatmbase
-.Nd netgraph ATM utility module
-.Sh SYNOPSIS
-.In netnatm/unimsg.h
-.In netgraph/atm/ngatmbase.h
-.Ft "struct mbuf *"
-.Fn uni_msg_pack_mbuf "struct uni_msg *msg" "void *hdr" "size_t len"
-.Ft "struct uni_msg *"
-.Fn uni_msg_alloc "size_t len"
-.Ft "struct uni_msg *"
-.Fn uni_msg_build "void *buf" ...
-.Ft void
-.Fn uni_msg_destroy "struct uni_msg *msg"
-.Ft int
-.Fn uni_msg_unpack_mbuf "struct mbuf *m" "struct uni_msg *msgp"
-.Sh DESCRIPTION
-This module provides utility functions for the handling of signalling
-messages to the NgATM modules.
-.Pp
-The
-.Fn uni_msg_pack_mbuf
-function
-packs a message into one or several
-.Vt mbuf Ns s
-optionally prepending a header.
-The header is given by its address
-.Fa hdr
-and length
-.Fa len .
-If
-.Fa hdr
-is
-.Dv NULL
-or
-.Fa len
-equals 0, no header is prepended.
-Either
-.Fa msg
-or
-.Fa hdr
-may be
-.Dv NULL
-but not both.
-The
-.Fn uni_msg_pack_mbuf
-function
-returns a pointer to the allocated
-.Vt mbuf
-chain or
-.Dv NULL
-in the case of an error.
-.Pp
-The
-.Fn uni_msg_alloc
-function
-allocates a new message with space for at least
-.Fa len
-bytes.
-In the case of an error
-.Dv NULL
-is returned.
-.Pp
-The
-.Fn uni_msg_build
-function constructs a message from pieces.
-Each piece is given by a pair of
-arguments, the first of type
-.Vt "void *"
-and the second a
-.Vt size_t .
-The list of pieces must be terminated by
-.Po Vt "void *" Pc Ns Dv NULL .
-.Pp
-The
-.Fn uni_msg_destroy
-function
-destroys the messages and frees all the messages's memory.
-.Pp
-The
-.Fn uni_msg_unpack_mbuf
-function
-unpacks an
-.Vt mbuf
-chain info a
-.Vt uni_msg .
-A pointer to the newly allocated message is stored in
-.Fa msgp
-and 0 is returned.
-In the case of an error (either when no packet header is found
-in the first mbuf or memory cannot be allocated) the function
-returns an appropriate error code.
-.Sh SEE ALSO
-.Xr ng_ccatm 4 ,
-.Xr ng_sscfu 4 ,
-.Xr ng_sscop 4 ,
-.Xr ng_uni 4
-.Sh AUTHORS
-.An Harti Brandt Aq Mt harti@FreeBSD.org
diff --git a/share/man/man4/nge.4 b/share/man/man4/nge.4
index 86631cfbc48c..74e0fa4f2c96 100644
--- a/share/man/man4/nge.4
+++ b/share/man/man4/nge.4
@@ -29,8 +29,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 23, 2010
.Dt NGE 4
.Os
diff --git a/share/man/man4/nmdm.4 b/share/man/man4/nmdm.4
index 6f4b42253a8b..9ee610b2ae32 100644
--- a/share/man/man4/nmdm.4
+++ b/share/man/man4/nmdm.4
@@ -19,8 +19,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 11, 2020
.Dt NMDM 4
.Os
diff --git a/share/man/man4/ntb.4 b/share/man/man4/ntb.4
index bb9e74ba9c4e..fd796d6e48e2 100644
--- a/share/man/man4/ntb.4
+++ b/share/man/man4/ntb.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 29, 2019
.Dt NTB 4
.Os
diff --git a/share/man/man4/ntb_hw_amd.4 b/share/man/man4/ntb_hw_amd.4
index 6e6cbbf0fc90..56e0b3a741d4 100644
--- a/share/man/man4/ntb_hw_amd.4
+++ b/share/man/man4/ntb_hw_amd.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 29, 2019
.Dt NTB_HW_AMD 4
.Os
diff --git a/share/man/man4/ntb_hw_intel.4 b/share/man/man4/ntb_hw_intel.4
index cb538b91511d..cc22cd96399d 100644
--- a/share/man/man4/ntb_hw_intel.4
+++ b/share/man/man4/ntb_hw_intel.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 11, 2020
.Dt NTB_HW_INTEL 4
.Os
diff --git a/share/man/man4/ntb_hw_plx.4 b/share/man/man4/ntb_hw_plx.4
index a592f0b91b05..cb3c1623ff21 100644
--- a/share/man/man4/ntb_hw_plx.4
+++ b/share/man/man4/ntb_hw_plx.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 9, 2019
.Dt NTB_HW_PLX 4
.Os
diff --git a/share/man/man4/ntb_transport.4 b/share/man/man4/ntb_transport.4
index c168d6798eb2..460e3bc1115f 100644
--- a/share/man/man4/ntb_transport.4
+++ b/share/man/man4/ntb_transport.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 9, 2019
.Dt NTB_TRANSPORT 4
.Os
diff --git a/share/man/man4/null.4 b/share/man/man4/null.4
index fdbca2b102fe..68c91a8d1db5 100644
--- a/share/man/man4/null.4
+++ b/share/man/man4/null.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)null.4 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd August 30, 2019
.Dt NULL 4
.Os
diff --git a/share/man/man4/numa.4 b/share/man/man4/numa.4
index 89f1bcb5684d..5a2108fb40e4 100644
--- a/share/man/man4/numa.4
+++ b/share/man/man4/numa.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 22, 2018
.Dt NUMA 4
.Os
diff --git a/share/man/man4/nvd.4 b/share/man/man4/nvd.4
index 877bd10e52fd..d5145939e409 100644
--- a/share/man/man4/nvd.4
+++ b/share/man/man4/nvd.4
@@ -31,8 +31,6 @@
.\"
.\" Author: Jim Harris <jimharris@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd May 18, 2019
.Dt NVD 4
.Os
diff --git a/share/man/man4/nvdimm.4 b/share/man/man4/nvdimm.4
index 6b689b3d502f..ffeac1a673fd 100644
--- a/share/man/man4/nvdimm.4
+++ b/share/man/man4/nvdimm.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 5, 2019
.Dt NVDIMM 4
.Os
@@ -99,7 +97,7 @@ device node and
geom provider for each namespace in a SPA, which behave analogously to their
full-SPA cousins described above.
.Sh SEE ALSO
-.Xr ACPI 4 ,
+.Xr acpi 4 ,
.Xr GEOM 4 ,
.Xr geom 8 ,
.Xr mount 8 ,
diff --git a/share/man/man4/nvme.4 b/share/man/man4/nvme.4
index a6e57358bac8..011ff483c839 100644
--- a/share/man/man4/nvme.4
+++ b/share/man/man4/nvme.4
@@ -31,8 +31,6 @@
.\"
.\" Author: Jim Harris <jimharris@FreeBSD.org>
.\"
-.\" $FreeBSD$
-.\"
.Dd June 6, 2020
.Dt NVME 4
.Os
diff --git a/share/man/man4/nvram.4 b/share/man/man4/nvram.4
index 25d6852b46bb..1ff2d0780a4f 100644
--- a/share/man/man4/nvram.4
+++ b/share/man/man4/nvram.4
@@ -24,8 +24,6 @@
.\"OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\"SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 8, 2010
.Dt NVRAM 4
.Os
diff --git a/share/man/man4/nvram2env.4 b/share/man/man4/nvram2env.4
deleted file mode 100644
index 798e04e135e3..000000000000
--- a/share/man/man4/nvram2env.4
+++ /dev/null
@@ -1,117 +0,0 @@
-.\" Copyright (c) 2011 Aleksandr Rybalko
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd April 3, 2011
-.Dt NVRAM2ENV 4
-.Os
-.Sh NAME
-.Nm nvram2env
-.Nd "copy nvram-like data into kernel environment"
-.Sh SYNOPSIS
-.Cd "device nvram2env"
-.Sh DESCRIPTION
-.Nm
-implements a simple method of reading the NVRAM-like data and information
-stored in flash and storing it in the kernel environment.
-It can then be used by various device drivers at boot-time.
-.Pp
-The NVRAM-like data is an array of zero terminated strings.
-Each string contains the string name, "=" delimiter and the string value.
-.Pp
-.Nm
-copies the environment values into kernel environment using the kernel setenv call.
-.Pp
-Configuration of
-.Nm
-is done in
-.Xr device.hints 5
-defining the NVRAM base address, fallback base address, maxsize and flags.
-.Pp
-.Nm
-is currently MIPS-specific.
-.Ss base
-base - physical address where data block is stored.
-.Ss fallbackbase
-fallbackbase - physical address where data block is stored, but only
-if not found at base.
-.Ss maxsize
-maxsize - maximum size of data block.
-.Ss flags
-flags - control flags, used to select nvram type and enable/disable CRC check.
-.Bl -tag -width indent
-.It Fa 0x0001
-Avoid CRC checking.
-Currently CRC checking is not implemented, so to be future
-compatible, please set it to "1".
-.It Fa 0x0002
-Use format "Generic", skip uint32_t field, then zero terminating array of
-strings.
-.It Fa 0x0004
-Use Broadcom CFE format, uint32_t signature "FLSH", uint32_t size,
-three unused fields uint32_t, then data.
-.It Fa 0x0008
-Use U-Boot format, uint32_t crc, then zero terminating array of strings.
-.El
-.Sh EXAMPLES
-Usage in U-Boot case:
-.Bd -literal -offset indent
-hint.nvram.0.base=0x1f030000
-hint.nvram.0.maxsize=0x2000
-hint.nvram.0.flags=3 # 1 = No check, 2 = Format Generic
-hint.nvram.1.base=0x1f032000
-hint.nvram.1.maxsize=0x4000
-hint.nvram.1.flags=3 # 1 = No check, 2 = Format Generic
-.Ed
-.Pp
-CFE nvram with fallback:
-.Bd -literal -offset indent
-hint.nvram.0.base=0x1fff8000
-hint.nvram.0.fallbackbase=0x1fc00400
-hint.nvram.0.flags=4 # 4 = Format Broadcom
-.Ed
-.Pp
-but seems for CFE nvram preferred to read both blocks:
-.Pp
-NVRAM partition: Static, CFE internal
-.Bd -literal -offset indent
-hint.nvram.0.flags=0x05 # Broadcom + nocheck
-hint.nvram.0.base=0x1fc00400
-.Ed
-.Pp
-Dynamic, editable form CFE, override values from first
-.Bd -literal -offset indent
-hint.nvram.1.flags=0x05 # Broadcom + nocheck
-hint.nvram.1.base=0x1cff8000
-.Ed
-.Sh SEE ALSO
-.Xr kenv 1 ,
-.Xr kenv 2
-.Sh HISTORY
-.Nm
-first appeared in
-.Fx 9.0 .
-.Sh AUTHORS
-.An Aleksandr Rybalko Aq Mt ray@ddteam.net
diff --git a/share/man/man4/oce.4 b/share/man/man4/oce.4
index c5022833e8b5..47b09cdd7136 100644
--- a/share/man/man4/oce.4
+++ b/share/man/man4/oce.4
@@ -34,9 +34,7 @@
.\" 3333 Susan Street
.\" Costa Mesa, CA 92626
.\"
-.\" $FreeBSD$
-.\"
-.Dd February 19, 2012
+.Dd June 13, 2023
.Dt OCE 4
.Os
.Sh NAME
@@ -57,6 +55,12 @@ module at boot time, place the following line in
.Bd -literal -offset indent
if_oce_load="YES"
.Ed
+.Sh DEPRECATION NOTICE
+The
+.Nm
+driver may not be present in
+.Fx 15.0
+and later.
.Sh DESCRIPTION
Emulex OneConnect adapters come in various skews and with
different combinations of NIC, FCoE and iSCSI functions.
diff --git a/share/man/man4/ocs_fc.4 b/share/man/man4/ocs_fc.4
index 5df0ef11070f..714bb2655c15 100644
--- a/share/man/man4/ocs_fc.4
+++ b/share/man/man4/ocs_fc.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 29, 2021
.Dt OCS_FC 4
.Os
diff --git a/share/man/man4/ohci.4 b/share/man/man4/ohci.4
index 1371928145ef..f8b7605ff6b4 100644
--- a/share/man/man4/ohci.4
+++ b/share/man/man4/ohci.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 24, 2020
.Dt OHCI 4
.Os
diff --git a/share/man/man4/openfirm.4 b/share/man/man4/openfirm.4
index ef9755d0c49d..6c21c004160f 100644
--- a/share/man/man4/openfirm.4
+++ b/share/man/man4/openfirm.4
@@ -29,8 +29,6 @@
.\" 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.
-.\"
-.\" from: @(#)openprom.4 8.1 (Berkeley) 6/5/93
.\" from: OpenBSD: openprom.4,v 1.9 2004/03/22 22:07:21 miod Exp
.\"
.\"-
@@ -58,8 +56,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 16, 2021
.Dt OPENFIRM 4
.Os
diff --git a/share/man/man4/orm.4 b/share/man/man4/orm.4
index ede8c7573a4a..e691c610af8d 100644
--- a/share/man/man4/orm.4
+++ b/share/man/man4/orm.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 15, 2000
.Dt ORM 4
.Os
diff --git a/share/man/man4/ossl.4 b/share/man/man4/ossl.4
index 039ce301ac29..ce080cf2cd4f 100644
--- a/share/man/man4/ossl.4
+++ b/share/man/man4/ossl.4
@@ -24,9 +24,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGES.
.\"
-.\" $FreeBSD$
-.\"
-.Dd September 24, 2021
+.Dd May 4, 2023
.Dt OSSL 4
.Os
.Sh NAME
@@ -76,6 +74,8 @@ driver includes support for the following algorithms:
.It
AES-CBC
.It
+AES-GCM (amd64 only)
+.It
ChaCha20
.It
ChaCha20-Poly1305 (RFC 8439)
diff --git a/share/man/man4/otus.4 b/share/man/man4/otus.4
index eb6048528a0d..040d4b14cb01 100644
--- a/share/man/man4/otus.4
+++ b/share/man/man4/otus.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2015 Adrian Chadd <adrian@FreeBSD.org>
.\"
@@ -91,7 +90,7 @@ which is loaded when an interface is attached:
.Sh HARDWARE
The
.Nm
-driver provices support for Atheros AR9170 USB IEEE 802.11b/g/n
+driver provides support for Atheros AR9170 USB IEEE 802.11b/g/n
wireless network adapters, including:
.Pp
.Bl -tag -width Ds -offset indent -compact
diff --git a/share/man/man4/otusfw.4 b/share/man/man4/otusfw.4
index 79966253bbc3..8810673e53b9 100644
--- a/share/man/man4/otusfw.4
+++ b/share/man/man4/otusfw.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" Copyright (c) 2015 Adrian Chadd <adrian@FreeBSD.org>
.\"
.\" Permission to use, copy, modify, and distribute this software for any
diff --git a/share/man/man4/ow.4 b/share/man/man4/ow.4
index 425b891a0c24..9b2f77d8cacc 100644
--- a/share/man/man4/ow.4
+++ b/share/man/man4/ow.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 20, 2015
.Dt OW 4
.Os
diff --git a/share/man/man4/ow_temp.4 b/share/man/man4/ow_temp.4
index 291bb0ce471d..f3fd0f488f43 100644
--- a/share/man/man4/ow_temp.4
+++ b/share/man/man4/ow_temp.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 20, 2015
.Dt OW_TEMP 4
.Os
diff --git a/share/man/man4/owc.4 b/share/man/man4/owc.4
index f1fbd4f3c8db..95269f97cf45 100644
--- a/share/man/man4/owc.4
+++ b/share/man/man4/owc.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 26, 2019
.Dt OWC 4
.Os
diff --git a/share/man/man4/padlock.4 b/share/man/man4/padlock.4
index 44963d0fd140..cf362e58972e 100644
--- a/share/man/man4/padlock.4
+++ b/share/man/man4/padlock.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 29, 2020
.Dt PADLOCK 4
.Os
diff --git a/share/man/man4/pass.4 b/share/man/man4/pass.4
index 4232190b0b27..0a5a58c28731 100644
--- a/share/man/man4/pass.4
+++ b/share/man/man4/pass.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 3, 2017
.Dt PASS 4
.Os
diff --git a/share/man/man4/pca954x.4 b/share/man/man4/pca954x.4
index d845740f9b6c..698362347f56 100644
--- a/share/man/man4/pca954x.4
+++ b/share/man/man4/pca954x.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2020 Andriy Gapon <avg@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 13, 2021
.Dt PCA954X 4
.Os
diff --git a/share/man/man4/pccard.4 b/share/man/man4/pccard.4
index e929d46f1b16..cec07b2336cb 100644
--- a/share/man/man4/pccard.4
+++ b/share/man/man4/pccard.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 18, 2020
.Dt PCCARD 4
.Os
diff --git a/share/man/man4/pccbb.4 b/share/man/man4/pccbb.4
index 0feabfb41370..3200e8b2d2e2 100644
--- a/share/man/man4/pccbb.4
+++ b/share/man/man4/pccbb.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2004
.Dt PCCBB 4
.Os
diff --git a/share/man/man4/pcf.4 b/share/man/man4/pcf.4
index cc8915fa1222..f54e8c5d2e13 100644
--- a/share/man/man4/pcf.4
+++ b/share/man/man4/pcf.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 6, 1998
.Dt PCF 4
.Os
diff --git a/share/man/man4/pcf8574.4 b/share/man/man4/pcf8574.4
index 9fdf71874063..900302a45bb2 100644
--- a/share/man/man4/pcf8574.4
+++ b/share/man/man4/pcf8574.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2020 Andriy Gapon <avg@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 6, 2021
.Dt PCF8574 4
.Os
diff --git a/share/man/man4/pcf8591.4 b/share/man/man4/pcf8591.4
index 2876ad057f90..9acaf6502b38 100644
--- a/share/man/man4/pcf8591.4
+++ b/share/man/man4/pcf8591.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2020 Andriy Gapon <avg@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: head/share/man/man4/cp2112.4 364144 2020-08-12 09:42:05Z avg $
-.\"
.Dd November 6, 2021
.Dt PCF8591 4
.Os
diff --git a/share/man/man4/pchtherm.4 b/share/man/man4/pchtherm.4
index 098c1d459867..2248ebd815f6 100644
--- a/share/man/man4/pchtherm.4
+++ b/share/man/man4/pchtherm.4
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 15, 2020
.Dt pchtherm 4
.Os
diff --git a/share/man/man4/pci.4 b/share/man/man4/pci.4
index 3c2c08afe466..e9b587dac12c 100644
--- a/share/man/man4/pci.4
+++ b/share/man/man4/pci.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 13, 2021
+.Dd October 4, 2022
.Dt PCI 4
.Os
.Sh NAME
@@ -572,6 +570,8 @@ MSI interrupts can be disabled by setting this tunable to 0.
Enable support for extended Message Signalled Interrupts
.Pq MSI-X .
MSI-X interrupts can be disabled by setting this tunable to 0.
+.It Va hw.pci.enable_pcie_ei Pq Defaults to 0
+Enable support for PCI-express Electromechanical Interlock.
.It Va hw.pci.enable_pcie_hp Pq Defaults to 1
Enable support for native PCI-express HotPlug.
.It Va hw.pci.honor_msi_blacklist Pq Defaults to 1
diff --git a/share/man/man4/pcib.4 b/share/man/man4/pcib.4
index 22efe2f3e1cb..b9a27a56cb70 100644
--- a/share/man/man4/pcib.4
+++ b/share/man/man4/pcib.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 18, 2008
.Dt PCIB 4
.Os
diff --git a/share/man/man4/pcic.4 b/share/man/man4/pcic.4
index 045b543b4189..1c5b0fc35554 100644
--- a/share/man/man4/pcic.4
+++ b/share/man/man4/pcic.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 9, 2002
.Dt PCIC 4
.Os
diff --git a/share/man/man4/pcm.4 b/share/man/man4/pcm.4
index b4f55443f95c..e406bd2c8343 100644
--- a/share/man/man4/pcm.4
+++ b/share/man/man4/pcm.4
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 26, 2020
+.Dd March 24, 2024
.Dt SOUND 4
.Os
.Sh NAME
@@ -115,7 +113,7 @@ The following bridge device drivers are available:
.It
.Xr snd_spicds 4
.It
-.Xr snd_uaudio 4 (enabled by default on amd64, i386, powerpc)
+.Xr snd_uaudio 4 (auto-loaded on device plug)
.It
.Xr snd_via8233 4 (enabled by default on amd64, i386)
.It
@@ -126,33 +124,6 @@ The following bridge device drivers are available:
.Pp
Refer to the manual page for each bridge device driver for driver specific
settings and information.
-.Ss Legacy Hardware
-For old legacy
-.Tn ISA
-cards, the driver looks for
-.Tn MSS
-cards at addresses
-.Dv 0x530
-and
-.Dv 0x604 .
-These values can be overridden in
-.Pa /boot/device.hints .
-Non-PnP sound cards require the following lines in
-.Xr device.hints 5 :
-.Bd -literal -offset indent
-hint.pcm.0.at="isa"
-hint.pcm.0.irq="5"
-hint.pcm.0.drq="1"
-hint.pcm.0.flags="0x0"
-.Ed
-.Pp
-Apart from the usual parameters, the flags field is used to specify
-the secondary
-.Tn DMA
-channel (generally used for capture in full duplex cards).
-Flags are set to 0 for cards not using a secondary
-.Tn DMA
-channel, or to 0x10 + C to specify channel C.
.Ss Boot Variables
In general, the module
.Pa snd_foo
@@ -196,16 +167,16 @@ This will mute the input channel per default.
Multichannel audio, popularly referred to as
.Dq surround sound
is supported and enabled by default.
-The FreeBSD multichannel matrix processor supports up to 18 interleaved
-channels, but the limit is currently set to 8 channels (as commonly used
-for 7.1 surround sound).
+The
+.Fx
+multichannel matrix processor supports up to 18 interleaved channels, but the
+limit is currently set to 8 channels (as commonly used for 7.1 surround sound).
The internal matrix mapping can handle reduction, expansion or
re-routing of channels.
This provides a base interface for related multichannel
.Fn ioctl
support.
-Multichannel audio works both with and without
-.Tn VCHANs .
+Multichannel audio works both with and without VCHANs.
.Pp
Most bridge device drivers are still missing multichannel matrixing
support, but in most cases this should be trivial to implement.
@@ -231,21 +202,18 @@ tunable.
Each device can optionally support more playback and recording channels
than physical hardware provides by using
.Dq virtual channels
-or
-.Tn VCHANs .
-.Tn VCHAN
-options can be configured via the
+or VCHANs.
+VCHAN options can be configured via the
.Xr sysctl 8
interface but can only be manipulated while the device is inactive.
.Ss VPC
-FreeBSD supports independent and individual volume controls for each active
+.Fx
+supports independent and individual volume controls for each active
application, without touching the master
.Nm
volume.
This is sometimes referred to as Volume Per Channel (VPC).
-The
-.Tn VPC
-feature is enabled by default.
+The VPC feature is enabled by default.
.Ss Loader Tunables
The following loader tunables are used to set driver configuration at the
.Xr loader 8
@@ -267,12 +235,9 @@ Enabling this will make bass and treble controls appear in mixer applications.
This tunable is undefined by default.
Equalizing is disabled by default.
.It Va hint.pcm.%d.vpc
-Set to 1 or 0 to explicitly enable (1) or disable (0) the
-.Tn VPC
-feature.
+Set to 1 or 0 to explicitly enable (1) or disable (0) the VPC feature.
This tunable is undefined by default.
-.Tn VPC
-is however enabled by default.
+VPC is however enabled by default.
.El
.Ss Runtime Configuration
There are a number of
@@ -394,16 +359,12 @@ in possible underruns if the application cannot keep up with a rapid irq
rate, especially during high workload.
The default value is 1, which is considered a moderate/safe latency profile.
.It Va hw.snd.maxautovchans
-Global
-.Tn VCHAN
-setting that only affects devices with at least one playback or recording channel available.
-The sound system will dynamically create up to this many
-.Tn VCHANs .
+Global VCHAN setting that only affects devices with at least one playback or
+recording channel available.
+The sound system will dynamically create up to this many VCHANs.
Set to
.Dq 0
-if no
-.Tn VCHANs
-are desired.
+if no VCHANs are desired.
Maximum value is 256.
.It Va hw.snd.report_soft_formats
Controls the internal format conversion if it is
@@ -448,13 +409,11 @@ This means that any changes to the volume will be lost.
Enabling this will preserve the volume, at the cost of possible confusion
when applications tries to re-open the same device.
.It Va hw.snd.vpc_mixer_bypass
-The recommended way to use the
-.Tn VPC
-feature is to teach applications to use
-the correct
+The recommended way to use the VPC feature is to teach applications to use the
+correct
.Fn ioctl :
-.Dv SNDCTL_DSP_GETPLAYVOL, SNDCTL_DSP_SETPLAYVOL,
-.Dv SNDCTL_DSP_SETRECVOL, SNDCTL_DSP_SETRECVOL.
+.Dv SNDCTL_DSP_GETPLAYVOL , SNDCTL_DSP_SETPLAYVOL ,
+.Dv SNDCTL_DSP_SETRECVOL , SNDCTL_DSP_SETRECVOL .
This is however not always possible.
Enable this to allow applications to use their own existing mixer logic
to control their own channel volume.
@@ -467,30 +426,19 @@ matrixing, rate converting and equalizing.
The pure
.Nm
stream will be fed directly to the hardware.
-If
-.Tn VCHANs
-are enabled, the bitperfect mode will use the
-.Tn VCHAN
-format/rate as the definitive format/rate target.
-The recommended way to use bitperfect mode is to disable
-.Tn VCHANs
-and enable this sysctl.
+If VCHANs are enabled, the bitperfect mode will use the VCHAN format/rate as
+the definitive format/rate target.
+The recommended way to use bitperfect mode is to disable VCHANs and enable this
+sysctl.
Default is disabled.
.It Va dev.pcm.%d.[play|rec].vchans
-The current number of
-.Tn VCHANs
-allocated per device.
-This can be set to preallocate a certain number of
-.Tn VCHANs .
+The current number of VCHANs allocated per device.
+This can be set to preallocate a certain number of VCHANs.
Setting this value to
.Dq 0
-will disable
-.Tn VCHANs
-for this device.
+will disable VCHANs for this device.
.It Va dev.pcm.%d.[play|rec].vchanformat
-Format for
-.Tn VCHAN
-mixing.
+Format for VCHAN mixing.
All playback paths will be converted to this format before the mixing
process begins.
By default only 2 channels are enabled.
@@ -520,8 +468,7 @@ Quadraphonic, 4 channels (front/rear left and right).
8 channels (4.0 + center + LFE + left and right side).
.El
.It Va dev.pcm.%d.[play|rec].vchanmode
-.Tn VCHAN
-format/rate selection.
+VCHAN format/rate selection.
Available options include:
.Bl -tag -width 2n
.It fixed
@@ -556,9 +503,7 @@ The downside is that the hardware DMA mode needs to be restarted, which may
cause annoying pops or clicks.
.El
.It Va dev.pcm.%d.[play|rec].vchanrate
-Sample rate speed for
-.Tn VCHAN
-mixing.
+Sample rate speed for VCHAN mixing.
All playback paths will be converted to this sample rate before the mixing
process begins.
.It Va dev.pcm.%d.polling
@@ -568,30 +513,17 @@ device state on each tick using a
mechanism.
Disabled by default and currently only available for a few device drivers.
.El
-.Ss Recording Channels
-On devices that have more than one recording source (ie: mic and line),
-there is a corresponding
-.Pa /dev/dsp%d.r%d
-device.
-The
-.Xr mixer 8
-utility can be used to start and stop recording from an specific device.
.Ss Statistics
Channel statistics are only kept while the device is open.
So with situations involving overruns and underruns, consider the output
while the errant application is open and running.
.Ss IOCTL Support
-The driver supports most of the
-.Tn OSS
+The driver supports most of the OSS
.Fn ioctl
functions, and most applications work unmodified.
A few differences exist, while memory mapped playback is
-supported natively and in
-.Tn Linux
-emulation, memory mapped recording is
-not due to
-.Tn VM
-system design.
+supported natively and in Linux emulation, memory mapped recording is not due
+to VM system design.
As a consequence, some applications may need to be recompiled
with a slightly modified audio module.
See
@@ -602,36 +534,24 @@ functions.
.Sh FILES
The
.Nm
-drivers may create the following
-device nodes:
+drivers may create the following device nodes:
.Pp
-.Bl -tag -width ".Pa /dev/audio%d.%d" -compact
-.It Pa /dev/audio%d.%d
-Sparc-compatible audio device.
-.It Pa /dev/dsp%d.%d
-Digitized voice device.
-.It Pa /dev/dspW%d.%d
-Like
-.Pa /dev/dsp ,
-but 16 bits per sample.
-.It Pa /dev/dsp%d.p%d
-Playback channel.
-.It Pa /dev/dsp%d.r%d
-Record channel.
-.It Pa /dev/dsp%d.vp%d
-Virtual playback channel.
-.It Pa /dev/dsp%d.vr%d
-Virtual recording channel.
+.Bl -tag -width ".Pa /dev/sndstat" -compact
+.It Pa /dev/dsp%d
+Audio device.
+The number represents the unit number of the device.
+.It Pa /dev/dsp
+Alias of
+.Pa /dev/dsp${hw.snd.default_unit} .
+Available only if
+.Pa hw.snd.basename_clone
+is set.
.It Pa /dev/sndstat
Current
.Nm
status, including all channels and drivers.
.El
.Pp
-The first number in the device node
-represents the unit number of the
-.Nm
-device.
All
.Nm
devices are listed
@@ -641,15 +561,6 @@ Additional messages are sometimes recorded when the
device is probed and attached, these messages can be viewed with the
.Xr dmesg 8
utility.
-.Pp
-The above device nodes are only created on demand through the dynamic
-.Xr devfs 5
-clone handler.
-Users are strongly discouraged to access them directly.
-For specific sound card access, please instead use
-.Pa /dev/dsp
-or
-.Pa /dev/dsp%d .
.Sh EXAMPLES
Use the sound metadriver to load all
.Nm
@@ -674,7 +585,7 @@ This is handy if there are multiple
.Nm
devices available:
.Pp
-.Dl sysctl hw.snd.default_unit=1
+.Dl mixer -d pcm1
.Sh DIAGNOSTICS
.Bl -diag
.It pcm%d:play:%d:dsp%d.p%d: play interrupt timeout, channel dead
diff --git a/share/man/man4/pf.4 b/share/man/man4/pf.4
index 133e4d300043..645f31e6e395 100644
--- a/share/man/man4/pf.4
+++ b/share/man/man4/pf.4
@@ -26,9 +26,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 7, 2021
+.Dd October 20, 2023
.Dt PF 4
.Os
.Sh NAME
@@ -89,6 +87,10 @@ Default value is 131072.
Size of hash table that store source nodes.
Should be power of 2.
Default value is 32768.
+.It Va net.pf.default_to_drop
+This value overrides
+.Cd "options PF_DEFAULT_TO_DROP"
+from kernel configuration file.
.El
.Pp
Read only
@@ -302,8 +304,10 @@ calls.
Nested anchors, since they are not directly attached to the given
anchor, will not be included.
This ioctl returns
-.Er EINVAL
-if the given anchor does not exist.
+.Er ENOENT
+if the parent anchor given at
+.Va path
+does not exist.
.It Dv DIOCGETRULESET Fa "struct pfioc_ruleset *pr"
Get a ruleset (i.e., an anchor)
.Va name
@@ -315,10 +319,14 @@ the maximum number of which can be obtained from a preceding
.Dv DIOCGETRULESETS
call.
This ioctl returns
-.Er EINVAL
-if the given anchor does not exist or
+.Er ENOENT
+if the parent anchor given by
+.Va path
+does not exist or
.Er EBUSY
-if another process is concurrently updating a ruleset.
+if the index passed in by
+.Va nr
+is greater than the number of anchors.
.It Dv DIOCADDSTATE Fa "struct pfioc_state *ps"
Add a state entry.
.Bd -literal
@@ -334,35 +342,40 @@ and
fields of the
.Va state
nvlist from the state table.
-.It Dv DIOCKILLSTATES Fa "struct pfioc_state_kill *psk"
+.It Dv DIOCKILLSTATESNV Fa "struct pfioc_nv nv"
Remove matching entries from the state table.
This ioctl returns the number of killed states in
-.Va psk_killed .
+.Va "killed" .
.Bd -literal
-struct pfioc_state_kill {
- struct pf_state_cmp psk_pfcmp;
- sa_family_t psk_af;
- int psk_proto;
- struct pf_rule_addr psk_src;
- struct pf_rule_addr psk_dst;
- char psk_ifname[IFNAMSIZ];
- char psk_label[PF_RULE_LABEL_SIZE];
- u_int psk_killed;
+nvlist pf_state_cmp {
+ number id;
+ number creatorid;
+ number direction;
+};
+
+nvlist pf_kill {
+ nvlist pf_state_cmp cmp;
+ number af;
+ number proto;
+ nvlist pf_rule_addr src;
+ nvlist pf_rule_addr dst;
+ string ifname[IFNAMSIZ];
+ string label[PF_RULE_LABEL_SIZE];
};
.Ed
-.It Dv DIOCCLRSTATES Fa "struct pfioc_state_kill *psk"
+.It Dv DIOCCLRSTATESNV Fa "struct pfioc_nv nv"
Clear all states.
It works like
-.Dv DIOCKILLSTATES ,
+.Dv DIOCKILLSTATESNV ,
but ignores the
-.Va psk_af ,
-.Va psk_proto ,
-.Va psk_src ,
+.Va af ,
+.Va proto ,
+.Va src ,
and
-.Va psk_dst
+.Va dst
fields of the
-.Vt pfioc_state_kill
-structure.
+.Vt pf_kill
+nvlist.
.It Dv DIOCSETSTATUSIF Fa "struct pfioc_if *pi"
Specify the interface for which statistics are accumulated.
.Bd -literal
@@ -415,65 +428,60 @@ Set the debug level.
enum { PF_DEBUG_NONE, PF_DEBUG_URGENT, PF_DEBUG_MISC,
PF_DEBUG_NOISY };
.Ed
-.It Dv DIOCGETSTATESNV Fa "struct pfioc_nv *nv"
+.It Dv DIOCGETSTATESV2 Fa "struct pfioc_states_v2 *ps"
Get state table entries.
.Bd -literal
-nvlist pf_state_key {
- nvlist pf_addr addr[2];
- number port[2];
- number af;
- number proto;
-};
-
-nvlist pf_state_scrub {
- bool timestamp;
- number ttl;
- number ts_mod;
-};
-
-nvlist pf_state_peer {
- nvlist pf_state_scrub scrub;
- number seqlo;
- number seqhi;
- number seqdiff;
- number max_win;
- number mss;
- number state;
- number wscale;
-};
-
-nvlist pf_state {
- number id;
- string ifname;
- nvlist pf_state_key stack_key;
- nvlist pf_state_key wire_key;
- nvlist pf_state_peer src;
- nvlist pf_state_peer dst;
- nvlist pf_addr rt_addr;
- number rule;
- number anchor;
- number nat_rule;
- number expire;
- number packets[2];
- number bytes[2];
- number creatorid;
- number direction;
- number log;
- number state_flags;
- number timeout;
- number sync_flags;
+struct pfioc_states_v2 {
+ int ps_len;
+ uint64_t ps_req_version;
+ union {
+ void *ps_buf;
+ struct pf_state_export *ps_states;
+ };
};
-nvlist pf_states {
- number count;
- nvlist pf_state states[];
+struct pf_state_export {
+ uint64_t version;
+ uint64_t id;
+ char ifname[IFNAMSIZ];
+ char orig_ifname[IFNAMSIZ];
+ struct pf_state_key_export key[2];
+ struct pf_state_peer_export src;
+ struct pf_state_peer_export dst;
+ struct pf_addr rt_addr;
+ uint32_t rule;
+ uint32_t anchor;
+ uint32_t nat_rule;
+ uint32_t creation;
+ uint32_t expire;
+ uint32_t spare0;
+ uint64_t packets[2];
+ uint64_t bytes[2];
+ uint32_t creatorid;
+ uint32_t spare1;
+ sa_family_t af;
+ uint8_t proto;
+ uint8_t direction;
+ uint8_t log;
+ uint8_t state_flags_compat;
+ uint8_t timeout;
+ uint8_t sync_flags;
+ uint8_t updates;
+ uint16_t state_flags;
+ uint16_t qid;
+ uint16_t pqid;
+ uint16_t dnpipe;
+ uint16_t dnrpipe;
+ int32_t rtableid;
+ uint8_t min_ttl;
+ uint8_t set_tos;
+ uint16_t max_mss;
+ uint8_t set_prio[2];
+ uint8_t rt;
+ char rt_ifname[IFNAMSIZ];
+ uint8_t spare[72];
};
.Ed
-.Pp
-If
-.Va pfioc_nv.size
-is insufficiently large, as many states as possible that can fit into this
-size will be copied into the supplied buffer.
.It Dv DIOCCHANGERULE Fa "struct pfioc_rule *pcr"
Add or remove the
.Va rule
@@ -1094,20 +1102,18 @@ The data is returned in the
structure described below:
.Bd -literal
struct pfi_kif {
- RB_ENTRY(pfi_kif) pfik_tree;
char pfik_name[IFNAMSIZ];
+ union {
+ RB_ENTRY(pfi_kif) pfik_tree;
+ LIST_ENTRY(pfi_kif) pfik_list;
+ };
u_int64_t pfik_packets[2][2][2];
u_int64_t pfik_bytes[2][2][2];
u_int32_t pfik_tzero;
- int pfik_flags;
- struct pf_state_tree_lan_ext pfik_lan_ext;
- struct pf_state_tree_ext_gwy pfik_ext_gwy;
- TAILQ_ENTRY(pfi_kif) pfik_w_states;
- void *pfik_ah_cookie;
+ u_int pfik_flags;
struct ifnet *pfik_ifp;
struct ifg_group *pfik_group;
- int pfik_states;
- int pfik_rules;
+ u_int pfik_rulerefs;
TAILQ_HEAD(, pfi_dynaddr) pfik_dynaddrs;
};
.Ed
@@ -1217,6 +1223,9 @@ and then
.Pp
This implementation is derived from
.Ox 4.5 .
+A number of individual features, improvements, bug fixes and security fixes
+have been ported from later versions of
+.Ox .
It has been heavily modified to be capable of running in multithreaded
.Fx
kernel and scale its performance on multiple CPUs.
diff --git a/share/man/man4/pflog.4 b/share/man/man4/pflog.4
index 19eb7012bca3..c665268ed04d 100644
--- a/share/man/man4/pflog.4
+++ b/share/man/man4/pflog.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 29, 2021
.Dt PFLOG 4
.Os
diff --git a/share/man/man4/pflow.4 b/share/man/man4/pflow.4
new file mode 100644
index 000000000000..320a7527dc2d
--- /dev/null
+++ b/share/man/man4/pflow.4
@@ -0,0 +1,123 @@
+.\" $OpenBSD: pflow.4,v 1.19 2014/03/29 11:26:03 florian Exp $
+.\"
+.\" Copyright (c) 2008 Henning Brauer <henning@openbsd.org>
+.\" Copyright (c) 2008 Joerg Goltermann <jg@osn.de>
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.Dd $Mdocdate: January 08 2024 $
+.Dt PFLOW 4
+.Os
+.Sh NAME
+.Nm pflow
+.Nd kernel interface for pflow data export
+.Sh SYNOPSIS
+.Cd "pseudo-device pflow"
+.Sh DESCRIPTION
+The
+.Nm
+subsystem exports
+.Nm
+accounting data from the kernel using
+.Xr udp 4
+packets.
+.Nm
+is compatible with netflow version 5 and IPFIX (10).
+The data is extracted from the
+.Xr pf 4
+state table.
+.Pp
+Multiple
+.Nm
+interfaces can be created at runtime using the
+.Ic pflowctl Ns Ar N Ic -c
+command.
+Each interface must be configured with a flow receiver IP address
+and a flow receiver port number.
+.Pp
+Only states created by a rule marked with the
+.Ar pflow
+keyword are exported by
+.Nm .
+.Pp
+.Nm
+will attempt to export multiple
+.Nm
+records in one
+UDP packet, but will not hold a record for longer than 30 seconds.
+.Pp
+Each packet seen on this interface has one header and a variable number of
+flows.
+The header indicates the version of the protocol, number of
+flows in the packet, a unique sequence number, system time, and an engine
+ID and type.
+Header and flow structs are defined in
+.In net/pflow.h .
+.Pp
+The
+.Nm
+source and destination addresses are controlled by
+.Xr pflowctl 8 .
+.Cm src
+is the sender IP address of the UDP packet which can be used
+to identify the source of the data on the
+.Nm
+collector.
+.Cm dst
+defines the collector IP address and the port.
+The
+.Cm dst
+IP address and port must be defined to enable the export of flows.
+.Pp
+For example, the following command sets 10.0.0.1 as the source
+and 10.0.0.2:1234 as destination:
+.Bd -literal -offset indent
+# pflowctl -s pflow0 src 10.0.0.1 dst 10.0.0.2:1234
+.Ed
+.Pp
+The protocol is set to IPFIX with the following command:
+.Bd -literal -offset indent
+# pflowctl -s pflow0 proto 10
+.Ed
+.Sh SEE ALSO
+.Xr netintro 4 ,
+.Xr pf 4 ,
+.Xr udp 4 ,
+.Xr pf.conf 5 ,
+.Xr pflowctl 8 ,
+.Xr tcpdump 8
+.Sh STANDARDS
+.Rs
+.%A B. Claise
+.%D January 2008
+.%R RFC 5101
+.%T "Specification of the IP Flow Information Export (IPFIX) Protocol for the Exchange of IP Traffic Flow Information"
+.Re
+.Sh HISTORY
+The
+.Nm
+device first appeared in
+.Ox 4.5
+and was imported into
+FreeBSD 15.0 .
+.Sh BUGS
+A state created by
+.Xr pfsync 4
+can have a creation or expiration time before the machine came up.
+In this case,
+.Nm
+pretends such flows were created or expired when the machine came up.
+.Pp
+The IPFIX implementation is incomplete:
+The required transport protocol SCTP is not supported.
+Transport over TCP and DTLS protected flow export is also not supported.
diff --git a/share/man/man4/pfsync.4 b/share/man/man4/pfsync.4
index 5b3159ff8292..96f498c7a7cb 100644
--- a/share/man/man4/pfsync.4
+++ b/share/man/man4/pfsync.4
@@ -24,14 +24,12 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 6, 2018
+.Dd November 08, 2023
.Dt PFSYNC 4
.Os
.Sh NAME
.Nm pfsync
-.Nd packet filter state table sychronisation interface
+.Nd packet filter state table synchronisation interface
.Sh SYNOPSIS
.Cd "device pfsync"
.Sh DESCRIPTION
@@ -115,6 +113,51 @@ dedicated to pfsync messages such as a crossover cable between two firewalls,
or specify a peer address and protect the traffic with
.Xr ipsec 4 .
.Pp
+Support for
+.Nm
+transport over IPv6 was introduced in
+.Fx 14.0 .
+To set up
+.Nm
+using multicast with IPv6 link-local addresses, the
+.Ic syncpeer
+must be set to the
+.Nm
+multicast address and the
+.Ic syncdev
+to the interface where
+.Nm
+traffic is expected.
+.Bd -literal -offset indent
+# ifconfig pfsync0 syncpeer ff12::f0 syncdev vtnet0
+.Ed
+.Pp
+When new features are introduced to
+.Xr pf 4
+the format of messages used by
+.Nm
+might change.
+.Nm
+will by default use the latest format.
+If synchronization with a peer running an older version of FreeBSD is needed the
+.Ar version
+parameter can be used.
+E.g.:
+.Bd -literal -offset indent
+# ifconfig pfsync0 version 1301
+.Ed
+.Pp
+.Bd
+Currently the following versions are supported:
+.Bl -tag -width indent
+.It Cm 1301
+FreeBSD releases 13.2 and older.
+Compatibility with FreeBSD 13.1 has been verified.
+.It Cm 1400
+FreeBSD release 14.0.
+.El
+.Ed
+.Pp
.Nm
has the following
.Xr sysctl 8
diff --git a/share/man/man4/pim.4 b/share/man/man4/pim.4
index 7e3046bfb4f9..695468bae8c4 100644
--- a/share/man/man4/pim.4
+++ b/share/man/man4/pim.4
@@ -23,8 +23,6 @@
.\" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
.\" DEALINGS IN THE SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 12, 2007
.Dt PIM 4
.Os
diff --git a/share/man/man4/pms.4 b/share/man/man4/pms.4
index 05dd7bc09634..bf5a3f450ac7 100644
--- a/share/man/man4/pms.4
+++ b/share/man/man4/pms.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 30, 2015
.Dt PMS 4
.Os
diff --git a/share/man/man4/polling.4 b/share/man/man4/polling.4
index eae6170f33b8..2556be2dd5dd 100644
--- a/share/man/man4/polling.4
+++ b/share/man/man4/polling.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2020
.Dt POLLING 4
.Os
diff --git a/share/man/man4/ppbus.4 b/share/man/man4/ppbus.4
index 41810757735c..a52e88006e7d 100644
--- a/share/man/man4/ppbus.4
+++ b/share/man/man4/ppbus.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 1, 1998
.Dt PPBUS 4
.Os
diff --git a/share/man/man4/ppc.4 b/share/man/man4/ppc.4
index 9b96625cb6ec..360ed538a0c6 100644
--- a/share/man/man4/ppc.4
+++ b/share/man/man4/ppc.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 5, 1998
.Dt PPC 4
.Os
diff --git a/share/man/man4/ppi.4 b/share/man/man4/ppi.4
index a4084ad63648..f812a87c7c22 100644
--- a/share/man/man4/ppi.4
+++ b/share/man/man4/ppi.4
@@ -23,8 +23,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 2, 1998
.Dt PPI 4
.Os
diff --git a/share/man/man4/procdesc.4 b/share/man/man4/procdesc.4
index 5252a23eda38..d0b99e5cbe07 100644
--- a/share/man/man4/procdesc.4
+++ b/share/man/man4/procdesc.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 15, 2020
.Dt PROCDESC 4
.Os
diff --git a/share/man/man4/proto.4 b/share/man/man4/proto.4
index bd861697c10d..889c07cdef81 100644
--- a/share/man/man4/proto.4
+++ b/share/man/man4/proto.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 7, 2015
.Dt PROTO 4
.Os
@@ -247,7 +245,7 @@ in the
and
.Va virt_size
fields.
-The number of contigous physical memory segments and the address of the first
+The number of contiguous physical memory segments and the address of the first
segment are returned in the
.Va phys_nsegs
and
@@ -263,8 +261,8 @@ fields.
The behaviour of this operation banks heavily on how
.Xr bus_dmamem_alloc 9
is implemented, which means that memory is currently always allocated as a
-single contigous region of physical memory.
-In practice this also tends to give a single contigous region in bus space.
+single contiguous region of physical memory.
+In practice this also tends to give a single contiguous region in bus space.
This may change over time.
.It PROTO_IOC_BUSDMA_MEM_FREE
Free previously allocated memory and destroy the memory descriptor.
@@ -295,7 +293,7 @@ Destroy the previously created memory descriptor specified by the
field.
When the memory descriptor is still loaded, it is unloaded first.
.It PROTO_IOC_BUSDMA_MD_LOAD
-Load a contigous region of memory in the memory descriptor specified by the
+Load a contiguous region of memory in the memory descriptor specified by the
.Va key
field.
The size and address in the process' virtual address space are specified
diff --git a/share/man/man4/ps4dshock.4 b/share/man/man4/ps4dshock.4
index e2295533989f..282a58c49e63 100644
--- a/share/man/man4/ps4dshock.4
+++ b/share/man/man4/ps4dshock.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 19, 2020
.Dt PS4DSHOCK 4
.Os
@@ -100,7 +98,7 @@ does not support force-feedback events.
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/psm.4 b/share/man/man4/psm.4
index 85d69b905162..50bcf53487a1 100644
--- a/share/man/man4/psm.4
+++ b/share/man/man4/psm.4
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 2, 2020
.Dt PSM 4
.Os
diff --git a/share/man/man4/pst.4 b/share/man/man4/pst.4
index 549757731313..0f23f1450aea 100644
--- a/share/man/man4/pst.4
+++ b/share/man/man4/pst.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 14, 2004
.Dt PST 4
.Os
diff --git a/share/man/man4/pt.4 b/share/man/man4/pt.4
index 4400af91a10b..e56c1a61b5cb 100644
--- a/share/man/man4/pt.4
+++ b/share/man/man4/pt.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 2, 1995
.Dt PT 4
.Os
diff --git a/share/man/man4/ptnet.4 b/share/man/man4/ptnet.4
index b4a1a537975a..71efb3cddf56 100644
--- a/share/man/man4/ptnet.4
+++ b/share/man/man4/ptnet.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 11, 2018
.Dt PTNET 4
.Os
diff --git a/share/man/man4/pts.4 b/share/man/man4/pts.4
index 2008482426ba..de04ca6e5b69 100644
--- a/share/man/man4/pts.4
+++ b/share/man/man4/pts.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)pty.4 8.2 (Berkeley) 11/30/93
-.\" $FreeBSD$
-.\"
.Dd August 20, 2008
.Dt PTS 4
.Os
diff --git a/share/man/man4/pty.4 b/share/man/man4/pty.4
index deceb62ab269..b9c5fce84ff4 100644
--- a/share/man/man4/pty.4
+++ b/share/man/man4/pty.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 28, 2019
.Dt PTY 4
.Os
diff --git a/share/man/man4/puc.4 b/share/man/man4/puc.4
index eb76c36f4aff..076fd2ad2d0e 100644
--- a/share/man/man4/puc.4
+++ b/share/man/man4/puc.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 24, 2008
.Dt PUC 4
.Os
diff --git a/share/man/man4/pvscsi.4 b/share/man/man4/pvscsi.4
index 1e9b08f10250..19ca6cc555da 100644
--- a/share/man/man4/pvscsi.4
+++ b/share/man/man4/pvscsi.4
@@ -1,8 +1,6 @@
.\" Copyright (c) 2018 VMware, Inc.
.\"
.\" SPDX-License-Identifier: (BSD-2-Clause OR GPL-2.0)
-.\"
-.\" $FreeBSD$
.Dd December 5, 2018
.Dt PVSCSI 4
.Os
diff --git a/share/man/man4/pwmc.4 b/share/man/man4/pwmc.4
index 06953d671a03..a3d6b1e93cdf 100644
--- a/share/man/man4/pwmc.4
+++ b/share/man/man4/pwmc.4
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 17, 2019
.Dt PWMC 4
.Os
diff --git a/share/man/man4/qat.4 b/share/man/man4/qat.4
index c6082f873a44..b0fa0b0cbc92 100644
--- a/share/man/man4/qat.4
+++ b/share/man/man4/qat.4
@@ -1,7 +1,6 @@
.\" SPDX-License-Identifier: BSD-3-Clause
.\" Copyright(c) 2007-2022 Intel Corporation
-.\" $FreeBSD$
-.Dd June 30, 2022
+.Dd May 4, 2023
.Dt QAT 4
.Os
.Sh NAME
@@ -30,6 +29,8 @@ qat_c62x_fw_load="YES"
.It
qat_dh895xcc_fw_load="YES"
.It
+qat_4xxx_fw_load="YES"
+.It
qat_load="YES"
.El
.Sh DESCRIPTION
@@ -53,6 +54,8 @@ Intel (R) QuickAssist Adapter 8960/Intel (R) QuickAssist Adapter 8970
Intel (R) Communications Chipset 8925 to 8955 Series
.It
Intel (R) Atom P5300 processor product family
+.It
+Intel (R) QAT 4xxx Series
.El
.Pp
The
@@ -61,8 +64,8 @@ driver supports cryptography and compression acceleration.
A complete API for offloading these operations is exposed in the kernel and may
be used by any other entity directly.
For details of usage and supported operations and algorithms refer to the
-following documentation available from
-.Lk 01.org :
+following documentation available from Intel Download Center
+.Lk https://downloadcenter.intel.com :
.Bl -bullet -compact
.It
.Rs
@@ -97,6 +100,61 @@ For details of usage and supported operations and algorithms refer to the
documentation mentioned above and
.Sx SEE ALSO
section.
+.Sh SYSCTL_VARIABLES
+Following variables may be used to reconfigure the QAT device.\&
+For configuration persistence those variables may be set before loading the driver, either via
+.Xr kenv 1
+or
+.Xr loader.conf(5).
+The device specific configuration options are prefixed with
+.Va dev.qat.X\&.
+where X is the device number.
+The specific device needs to be in "down" state before changing the configuration.
+.Bl -tag -width indent
+.It Va state
+Show current state of the device. Override the device state. Possible values: "down", "up".
+
+NOTE: If the symmetric services are used for device the qat_ocf driver needs to be disabled prior the device
+reconfiguration.
+Following variable may be used to enable/disable the QAT cryptographic framework connectivity
+.Va dev.qat_ocf.0.enable\&.
+Enabled by default.
+.It Va cfg_services
+Override the device services enabled: symmetric, asymmetric, data compression.
+Possible values: "sym", "asym", "dc", "sym;dc", "asym;dc", "sym;asym".
+Default services configured are "sym;asym" for even and "dc" for odd devices.
+.It Va cfg_mode
+Override the device mode configuration for kernel space and user space instances.
+Possible values: "ks", "us", "ks;us".
+Default value "ks;us".
+.It Va num_user_processes
+Override the number of uio user space processes that can connect to the QAT device.
+Default: 2
+.El
+.Pp
+The following
+.Xr sysctl 8
+variables are read-only:
+.Bl -tag -width indent
+.It Va frequency
+QAT device frequency value.
+.It Va mmp_version
+QAT MMP Library revision number.
+.It Va hw_version
+QAT hardware revision number.
+.It Va fw_version
+QAT firmware revision number.
+.It Va dev_cfg
+Summary of device specific configuration.
+.It Va heartbeat
+QAT device heartbeat status. Value '1' indicates that the device is operational.
+'0' value means that the device is not responsive. Device requires restart.
+.It Va heartbeat_failed
+Number of QAT heartbeat failures received.
+.It Va heartbeat_sent
+Number of QAT heartbeat requests sent.
+.El
+
.Sh COMPATIBILITY
The
.Nm
diff --git a/share/man/man4/qat_c2xxx.4 b/share/man/man4/qat_c2xxx.4
index 6f831fe94712..aad0c043e548 100644
--- a/share/man/man4/qat_c2xxx.4
+++ b/share/man/man4/qat_c2xxx.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2022
.Dt QAT_C2XXX 4
.Os
diff --git a/share/man/man4/qlnxe.4 b/share/man/man4/qlnxe.4
index c5846a36d182..f545235ec1ff 100644
--- a/share/man/man4/qlnxe.4
+++ b/share/man/man4/qlnxe.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 9, 2017
.Dt QLNXE 4
.Os
diff --git a/share/man/man4/qlxgb.4 b/share/man/man4/qlxgb.4
index c1e87e307d8b..4bf8000d15da 100644
--- a/share/man/man4/qlxgb.4
+++ b/share/man/man4/qlxgb.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 3, 2011
.Dt QLXGB 4
.Os
diff --git a/share/man/man4/qlxgbe.4 b/share/man/man4/qlxgbe.4
index 5082829e1dc3..486a5ec0f682 100644
--- a/share/man/man4/qlxgbe.4
+++ b/share/man/man4/qlxgbe.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 1, 2013
.Dt QLXGBE 4
.Os
diff --git a/share/man/man4/qlxge.4 b/share/man/man4/qlxge.4
index 2da3a8d68308..4723c56ff68b 100644
--- a/share/man/man4/qlxge.4
+++ b/share/man/man4/qlxge.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 21, 2013
.Dt QLXGE 4
.Os
diff --git a/share/man/man4/ral.4 b/share/man/man4/ral.4
index 5b84bea00153..dbdc017dc33a 100644
--- a/share/man/man4/ral.4
+++ b/share/man/man4/ral.4
@@ -12,8 +12,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 4, 2017
.Dt RAL 4
.Os
diff --git a/share/man/man4/random.4 b/share/man/man4/random.4
index fb851cdb7ba1..840bc0c3234b 100644
--- a/share/man/man4/random.4
+++ b/share/man/man4/random.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 19, 2019
.Dt RANDOM 4
.Os
diff --git a/share/man/man4/rccgpio.4 b/share/man/man4/rccgpio.4
index 6c7bc7871b03..f790b003d862 100644
--- a/share/man/man4/rccgpio.4
+++ b/share/man/man4/rccgpio.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 18, 2015
.Dt RCCGPIO 4
.Os
diff --git a/share/man/man4/rctl.4 b/share/man/man4/rctl.4
index 52e10994e045..12f0a8374a51 100644
--- a/share/man/man4/rctl.4
+++ b/share/man/man4/rctl.4
@@ -20,8 +20,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd May 28, 2017
.Dt RCTL 4
.Os
diff --git a/share/man/man4/re.4 b/share/man/man4/re.4
index 9b54c0c1f20b..ac33aa4c4e3c 100644
--- a/share/man/man4/re.4
+++ b/share/man/man4/re.4
@@ -28,9 +28,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd September 21, 2016
+.Dd November 7, 2022
.Dt RE 4
.Os
.Sh NAME
@@ -285,3 +283,6 @@ avoid this problem.
.Pp
The RealTek 8169, 8169S and 8110S chips appear to only be capable of
transmitting jumbo frames up to 7.5K in size.
+.Pp
+If this driver is causing problems then an updated driver from
+the vendor can be found in ports under net/realtek-re-kmod.
diff --git a/share/man/man4/rgephy.4 b/share/man/man4/rgephy.4
index f66856be05fc..2cc655aacb18 100644
--- a/share/man/man4/rgephy.4
+++ b/share/man/man4/rgephy.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 16, 2011
.Dt RGEPHY 4
.Os
diff --git a/share/man/man4/rights.4 b/share/man/man4/rights.4
index 5334f3fc3c67..2d44a1060006 100644
--- a/share/man/man4/rights.4
+++ b/share/man/man4/rights.4
@@ -30,9 +30,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd February 28, 2019
+.Dd March 22, 2024
.Dt RIGHTS 4
.Os
.Sh NAME
@@ -70,7 +68,12 @@ The
.Xr cap_rights_init 3
family of functions should be used to manage the structure.
.Sh RIGHTS
-The following rights may be specified in a rights mask:
+Note that rights are not simple bitmasks (and cannot be bitwise-ORed together).
+See
+.Xr cap_rights_init 3
+for details.
+.Pp
+The following rights are available:
.Bl -tag -width CAP_RENAMEAT_SOURCE
.It Dv CAP_ACCEPT
Permit
diff --git a/share/man/man4/rl.4 b/share/man/man4/rl.4
index 8fa7b251fabd..9323e046a5e1 100644
--- a/share/man/man4/rl.4
+++ b/share/man/man4/rl.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 16, 2013
.Dt RL 4
.Os
diff --git a/share/man/man4/rndtest.4 b/share/man/man4/rndtest.4
index fd69ee8245c5..9ed16caf3b87 100644
--- a/share/man/man4/rndtest.4
+++ b/share/man/man4/rndtest.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 11, 2020
.Dt RNDTEST 4
.Os
diff --git a/share/man/man4/route.4 b/share/man/man4/route.4
index f20e90dbd75a..5096c2784a12 100644
--- a/share/man/man4/route.4
+++ b/share/man/man4/route.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" From: @(#)route.4 8.6 (Berkeley) 4/19/94
-.\" $FreeBSD$
-.\"
.Dd November 4, 2004
.Dt ROUTE 4
.Os
diff --git a/share/man/man4/rsu.4 b/share/man/man4/rsu.4
index 1d38c4a1618d..b523bfe4aa0e 100644
--- a/share/man/man4/rsu.4
+++ b/share/man/man4/rsu.4
@@ -1,5 +1,4 @@
.\" $OpenBSD: rsu.4,v 1.11 2013/02/14 07:40:42 jmc Exp $
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2010 Damien Bergamini <damien.bergamini@free.fr>
.\"
@@ -110,7 +109,7 @@ which is loaded when an interface is attached:
.Sh HARDWARE
The
.Nm
-driver provices support for Realtek RTL8188SU/RTL8192SU USB IEEE 802.11b/g/n
+driver provides support for Realtek RTL8188SU/RTL8192SU USB IEEE 802.11b/g/n
wireless network adapters, including:
.Pp
.Bl -tag -width Ds -offset indent -compact
diff --git a/share/man/man4/rsufw.4 b/share/man/man4/rsufw.4
index ef282ec8a0c0..f80891ea18fc 100644
--- a/share/man/man4/rsufw.4
+++ b/share/man/man4/rsufw.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" Copyright (c) 2013 Idwer Vollering <vidwer@gmail.com>
.\"
.\" Permission to use, copy, modify, and distribute this software for any
diff --git a/share/man/man4/rtnetlink.4 b/share/man/man4/rtnetlink.4
new file mode 100644
index 000000000000..83521b50c9b5
--- /dev/null
+++ b/share/man/man4/rtnetlink.4
@@ -0,0 +1,539 @@
+.\"
+.\" Copyright (C) 2022 Alexander Chernikov <melifaro@FreeBSD.org>.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 1, 2022
+.Dt RTNETLINK 4
+.Os
+.Sh NAME
+.Nm RTNetlink
+.Nd Network configuration-specific Netlink family
+.Sh SYNOPSIS
+.In netlink/netlink.h
+.In netlink/netlink_route.h
+.Ft int
+.Fn socket AF_NETLINK SOCK_RAW NETLINK_ROUTE
+.Sh DESCRIPTION
+The
+.Dv NETLINK_ROUTE
+family aims to be the primary configuration mechanism for all
+network-related tasks.
+Currently it supports configuring interfaces, interface addresses, routes,
+nexthops and arp/ndp neighbors.
+.Sh ROUTES
+All route configuration messages share the common header:
+.Bd -literal
+struct rtmsg {
+ unsigned char rtm_family; /* address family */
+ unsigned char rtm_dst_len; /* Prefix length */
+ unsigned char rtm_src_len; /* Deprecated, set to 0 */
+ unsigned char rtm_tos; /* Type of service (not used) */
+ unsigned char rtm_table; /* deprecated, set to 0 */
+ unsigned char rtm_protocol; /* Routing protocol id (RTPROT_) */
+ unsigned char rtm_scope; /* Route distance (RT_SCOPE_) */
+ unsigned char rtm_type; /* Route type (RTN_) */
+ unsigned rtm_flags; /* Route flags (not supported) */
+};
+.Ed
+.Pp
+The
+.Va rtm_family
+specifies the route family to be operated on.
+Currently,
+.Dv AF_INET6
+and
+.Dv AF_INET
+are the only supported families.
+The route prefix length is stored in
+.Va rtm_dst_len
+.
+The caller should set the originator identity (one of the
+.Dv RTPROT_
+values) in
+.Va rtm_protocol
+.
+It is useful for users and for the application itself, allowing for easy
+identification of self-originated routes.
+The route scope has to be set via
+.Va rtm_scope
+field.
+The supported values are:
+.Bd -literal -offset indent -compact
+RT_SCOPE_UNIVERSE Global scope
+RT_SCOPE_LINK Link scope
+.Ed
+.Pp
+Route type needs to be set.
+The defined values are:
+.Bd -literal -offset indent -compact
+RTN_UNICAST Unicast route
+RTN_MULTICAST Multicast route
+RTN_BLACKHOLE Drops traffic towards destination
+RTN_PROHIBIT Drops traffic and sends reject
+.Ed
+.Pp
+The following messages are supported:
+.Ss RTM_NEWROUTE
+Adds a new route.
+All NL flags are supported.
+Extending a multipath route requires NLM_F_APPEND flag.
+.Ss RTM_DELROUTE
+Tries to delete a route.
+The route is specified using a combination of
+.Dv RTA_DST
+TLV and
+.Va rtm_dst_len .
+.Ss RTM_GETROUTE
+Fetches a single route or all routes in the current VNET, depending on the
+.Dv NLM_F_DUMP
+flag.
+Each route is reported as
+.Dv RTM_NEWROUTE
+message.
+The following filters are recognised by the kernel:
+.Pp
+.Bd -literal -offset indent -compact
+rtm_family required family or AF_UNSPEC
+RTA_TABLE fib number or RT_TABLE_UNSPEC to return all fibs
+.Ed
+.Ss TLVs
+.Bl -tag -width indent
+.It Dv RTA_DST
+(binary) IPv4/IPv6 address, depending on the
+.Va rtm_family .
+.It Dv RTA_OIF
+(uint32_t) transmit interface index.
+.It Dv RTA_GATEWAY
+(binary) IPv4/IPv6 gateway address, depending on the
+.Va rtm_family .
+.It Dv RTA_METRICS
+(nested) Container attribute, listing route properties.
+The only supported sub-attribute is
+.Dv RTAX_MTU , which stores path MTU as uint32_t.
+.It Dv RTA_MULTIPATH
+This attribute contains multipath route nexthops with their weights.
+These nexthops are represented as a sequence of
+.Va rtnexthop
+structures, each followed by
+.Dv RTA_GATEWAY
+or
+.Dv RTA_VIA
+attributes.
+.Bd -literal
+struct rtnexthop {
+ unsigned short rtnh_len;
+ unsigned char rtnh_flags;
+ unsigned char rtnh_hops; /* nexthop weight */
+ int rtnh_ifindex;
+};
+.Ed
+.Pp
+The
+.Va rtnh_len
+field specifies the total nexthop info length, including both
+.Va struct rtnexthop
+and the following TLVs.
+The
+.Va rtnh_hops
+field stores relative nexthop weight, used for load balancing between group
+members.
+The
+.Va rtnh_ifindex
+field contains the index of the transmit interface.
+.Pp
+The following TLVs can follow the structure:
+.Bd -literal -offset indent -compact
+RTA_GATEWAY IPv4/IPv6 nexthop address of the gateway
+RTA_VIA IPv6 nexthop address for IPv4 route
+RTA_KNH_ID Kernel-specific index of the nexthop
+.Ed
+.It Dv RTA_KNH_ID
+(uint32_t) (FreeBSD-specific) Auto-allocated kernel index of the nexthop.
+.It Dv RTA_RTFLAGS
+(uint32_t) (FreeBSD-specific) rtsock route flags.
+.It Dv RTA_TABLE
+(uint32_t) Fib number of the route.
+Default route table is
+.Dv RT_TABLE_MAIN .
+To explicitly specify "all tables" one needs to set the value to
+.Dv RT_TABLE_UNSPEC .
+.It Dv RTA_EXPIRES
+(uint32_t) seconds till path expiration.
+.It Dv RTA_NH_ID
+(uint32_t) useland nexthop or nexthop group index.
+.El
+.Ss Groups
+The following groups are defined:
+.Bd -literal -offset indent -compact
+RTNLGRP_IPV4_ROUTE Notifies on IPv4 route arrival/removal/change
+RTNLGRP_IPV6_ROUTE Notifies on IPv6 route arrival/removal/change
+.Ed
+.Sh NEXTHOPS
+All nexthop/nexthop group configuration messages share the common header:
+.Bd -literal
+struct nhmsg {
+ unsigned char nh_family; /* transport family */
+ unsigned char nh_scope; /* ignored on RX, filled by kernel */
+ unsigned char nh_protocol; /* Routing protocol that installed nh */
+ unsigned char resvd;
+ unsigned int nh_flags; /* RTNH_F_* flags from route.h */
+};
+.Ed
+The
+.Va nh_family
+specifies the gateway address family.
+It can be different from route address family for IPv4 routes with IPv6
+nexthops.
+The
+.Va nh_protocol
+is similar to
+.Va rtm_protocol
+field, which designates originator application identity.
+.Pp
+The following messages are supported:
+.Ss RTM_NEWNEXTHOP
+Creates a new nexthop or nexthop group.
+.Ss RTM_DELNEXTHOP
+Deletes nexthop or nexthhop group.
+The required object is specified by the
+.Dv RTA_NH_ID
+attribute.
+.Ss RTM_GETNEXTHOP
+Fetches a single nexthop or all nexthops/nexthop groups, depending on the
+.Dv NLM_F_DUMP
+flag.
+The following filters are recognised by the kernel:
+.Pp
+.Bd -literal -offset indent -compact
+RTA_NH_ID nexthop or nexthtop group id
+NHA_GROUPS match only nexthtop groups
+.Ed
+.Ss TLVs
+.Bl -tag -width indent
+.It Dv RTA_NH_ID
+(uint32_t) Nexthhop index used to identify particular nexthop or nexthop group.
+Should be provided by userland at the nexthtop creation time.
+.It Dv NHA_GROUP
+This attribute designates the nexthtop group and contains all of its nexthtops
+and their relative weights.
+The attribute consists of a list of
+.Va nexthop_grp
+structures:
+.Bd -literal
+struct nexthop_grp {
+ uint32_t id; /* nexhop userland index */
+ uint8_t weight; /* weight of this nexthop */
+ uint8_t resvd1;
+ uint16_t resvd2;
+};
+.Ed
+.It Dv NHA_GROUP_TYPE
+(uint16_t) Nexthtop group type, set to one of the following types:
+.Bd -literal -offset indent -compact
+NEXTHOP_GRP_TYPE_MPATH default multipath group
+.Ed
+.It Dv NHA_BLACKHOLE
+(flag) Marks the nexthtop as blackhole.
+.It Dv NHA_OIF
+(uint32_t) Transmit interface index of the nexthtop.
+.It Dv NHA_GATEWAY
+(binary) IPv4/IPv6 gateway address
+.It Dv NHA_GROUPS
+(flag) Matches nexthtop groups during dump.
+.El
+.Ss Groups
+The following groups are defined:
+.Bd -literal -offset indent -compact
+RTNLGRP_NEXTHOP Notifies on nexthop/groups arrival/removal/change
+.Ed
+.Sh INTERFACES
+All interface configuration messages share the common header:
+.Bd -literal
+struct ifinfomsg {
+ unsigned char ifi_family; /* not used, set to 0 */
+ unsigned char __ifi_pad;
+ unsigned short ifi_type; /* ARPHRD_* */
+ int ifi_index; /* Interface index */
+ unsigned ifi_flags; /* IFF_* flags */
+ unsigned ifi_change; /* IFF_* change mask */
+};
+.Ed
+.Ss RTM_NEWLINK
+Creates a new interface.
+The only mandatory TLV is
+.Dv IFLA_IFNAME .
+The following attributes are returned inside the nested
+.Dv NLMSGERR_ATTR_COOKIE :
+.Pp
+.Bd -literal -offset indent -compact
+IFLA_NEW_IFINDEX (uint32) created interface index
+IFLA_IFNAME (string) created interface name
+.Ed
+.Ss RTM_DELLINK
+Deletes the interface specified by
+.Dv IFLA_IFNAME .
+.Ss RTM_GETLINK
+Fetches a single interface or all interfaces in the current VNET, depending on the
+.Dv NLM_F_DUMP
+flag.
+Each interface is reported as a
+.Dv RTM_NEWLINK
+message.
+The following filters are recognised by the kernel:
+.Pp
+.Bd -literal -offset indent -compact
+ifi_index interface index
+IFLA_IFNAME interface name
+IFLA_ALT_IFNAME interface name
+.Ed
+.Ss TLVs
+.Bl -tag -width indent
+.It Dv IFLA_ADDRESS
+(binary) Llink-level interface address (MAC).
+.It Dv IFLA_BROADCAST
+(binary) (readonly) Link-level broadcast address.
+.It Dv IFLA_IFNAME
+(string) New interface name.
+.It Dv IFLA_IFALIAS
+(string) Interface description.
+.It Dv IFLA_LINK
+(uint32_t) (readonly) Interface index.
+.It Dv IFLA_MASTER
+(uint32_t) Parent interface index.
+.It Dv IFLA_LINKINFO
+(nested) Interface type-specific attributes:
+.Bd -literal -offset indent -compact
+IFLA_INFO_KIND (string) interface type ("vlan")
+IFLA_INFO_DATA (nested) custom attributes
+.Ed
+The following types and attributes are supported:
+.Bl -tag -width indent
+.It Dv vlan
+.Bd -literal -offset indent -compact
+IFLA_VLAN_ID (uint16_t) 802.1Q vlan id
+IFLA_VLAN_PROTOCOL (uint16_t) Protocol: ETHERTYPE_VLAN or ETHERTYPE_QINQ
+.Ed
+.El
+.It Dv IFLA_OPERSTATE
+(uint8_t) Interface operational state per RFC 2863.
+Can be one of the following:
+.Bd -literal -offset indent -compact
+IF_OPER_UNKNOWN status can not be determined
+IF_OPER_NOTPRESENT some (hardware) component not present
+IF_OPER_DOWN down
+IF_OPER_LOWERLAYERDOWN some lower-level interface is down
+IF_OPER_TESTING in some test mode
+IF_OPER_DORMANT "up" but waiting for some condition (802.1X)
+IF_OPER_UP ready to pass packets
+.Ed
+.It Dv IFLA_STATS64
+(readonly) Consists of the following 64-bit counters structure:
+.Bd -literal
+struct rtnl_link_stats64 {
+ uint64_t rx_packets; /* total RX packets (IFCOUNTER_IPACKETS) */
+ uint64_t tx_packets; /* total TX packets (IFCOUNTER_OPACKETS) */
+ uint64_t rx_bytes; /* total RX bytes (IFCOUNTER_IBYTES) */
+ uint64_t tx_bytes; /* total TX bytes (IFCOUNTER_OBYTES) */
+ uint64_t rx_errors; /* RX errors (IFCOUNTER_IERRORS) */
+ uint64_t tx_errors; /* RX errors (IFCOUNTER_OERRORS) */
+ uint64_t rx_dropped; /* RX drop (no space in ring/no bufs) (IFCOUNTER_IQDROPS) */
+ uint64_t tx_dropped; /* TX drop (IFCOUNTER_OQDROPS) */
+ uint64_t multicast; /* RX multicast packets (IFCOUNTER_IMCASTS) */
+ uint64_t collisions; /* not supported */
+ uint64_t rx_length_errors; /* not supported */
+ uint64_t rx_over_errors; /* not supported */
+ uint64_t rx_crc_errors; /* not supported */
+ uint64_t rx_frame_errors; /* not supported */
+ uint64_t rx_fifo_errors; /* not supported */
+ uint64_t rx_missed_errors; /* not supported */
+ uint64_t tx_aborted_errors; /* not supported */
+ uint64_t tx_carrier_errors; /* not supported */
+ uint64_t tx_fifo_errors; /* not supported */
+ uint64_t tx_heartbeat_errors; /* not supported */
+ uint64_t tx_window_errors; /* not supported */
+ uint64_t rx_compressed; /* not supported */
+ uint64_t tx_compressed; /* not supported */
+ uint64_t rx_nohandler; /* dropped due to no proto handler (IFCOUNTER_NOPROTO) */
+};
+.Ed
+.El
+.Ss Groups
+The following groups are defined:
+.Bd -literal -offset indent -compact
+RTNLGRP_LINK Notifies on interface arrival/removal/change
+.Ed
+.Sh INTERFACE ADDRESSES
+All interface address configuration messages share the common header:
+.Bd -literal
+struct ifaddrmsg {
+ uint8_t ifa_family; /* Address family */
+ uint8_t ifa_prefixlen; /* Prefix length */
+ uint8_t ifa_flags; /* Address-specific flags */
+ uint8_t ifa_scope; /* Address scope */
+ uint32_t ifa_index; /* Link ifindex */
+};
+.Ed
+.Pp
+The
+.Va ifa_family
+specifies the address family of the interface address.
+The
+.Va ifa_prefixlen
+specifies the prefix length if applicable for the address family.
+The
+.Va ifa_index
+specifies the interface index of the target interface.
+.Ss RTM_NEWADDR
+Not supported
+.Ss RTM_DELADDR
+Not supported
+.Ss RTM_GETADDR
+Fetches interface addresses in the current VNET matching conditions.
+Each address is reported as a
+.Dv RTM_NEWADDR
+message.
+The following filters are recognised by the kernel:
+.Pp
+.Bd -literal -offset indent -compact
+ifa_family required family or AF_UNSPEC
+ifa_index matching interface index or 0
+.Ed
+.Ss TLVs
+.Bl -tag -width indent
+.It Dv IFA_ADDRESS
+(binary) masked interface address or destination address for p2p interfaces.
+.It Dv IFA_LOCAL
+(binary) local interface address.
+Set for IPv4 and p2p addresses.
+.It Dv IFA_LABEL
+(string) interface name.
+.It Dv IFA_BROADCAST
+(binary) broadcast interface address.
+.El
+.Ss Groups
+The following groups are defined:
+.Bd -literal -offset indent -compact
+RTNLGRP_IPV4_IFADDR Notifies on IPv4 ifaddr arrival/removal/change
+RTNLGRP_IPV6_IFADDR Notifies on IPv6 ifaddr arrival/removal/change
+.Ed
+.Sh NEIGHBORS
+All neighbor configuration messages share the common header:
+.Bd -literal
+struct ndmsg {
+ uint8_t ndm_family;
+ uint8_t ndm_pad1;
+ uint16_t ndm_pad2;
+ int32_t ndm_ifindex;
+ uint16_t ndm_state;
+ uint8_t ndm_flags;
+ uint8_t ndm_type;
+};
+.Ed
+.Pp
+The
+.Va ndm_family
+field specifies the address family (IPv4 or IPv6) of the neighbor.
+The
+.Va ndm_ifindex
+specifies the interface to operate on.
+The
+.Va ndm_state
+represents the entry state according to the neighbor model.
+The state can be one of the following:
+.Bd -literal -offset indent -compact
+NUD_INCOMPLETE No lladdr, address resolution in progress
+NUD_REACHABLE reachable & recently resolved
+NUD_STALE has lladdr but it's stale
+NUD_DELAY has lladdr, is stale, probes delayed
+NUD_PROBE has lladdr, is stale, probes sent
+NUD_FAILED unused
+.Ed
+.Pp
+The
+.Va ndm_flags
+field stores the options specific to this entry.
+Available flags:
+.Bd -literal -offset indent -compact
+NTF_SELF local station (LLE_IFADDR)
+NTF_PROXY proxy entry (LLE_PUB)
+NTF_STICKY permanent entry (LLE_STATIC)
+NTF_ROUTER dst indicated itself as a router
+.Ed
+.Ss RTM_NEWNEIGH
+Creates new neighbor entry.
+The mandatory options are
+.Dv NDA_DST ,
+.Dv NDA_LLADDR
+and
+.Dv NDA_IFINDEX .
+.Ss RTM_DELNEIGH
+Deletes the neighbor entry.
+The entry is specified by the combination of
+.Dv NDA_DST
+and
+.Dv NDA_IFINDEX .
+.Ss RTM_GETNEIGH
+Fetches a single neighbor or all neighbors in the current VNET, depending on the
+.Dv NLM_F_DUMP
+flag.
+Each entry is reported as
+.Dv RTM_NEWNEIGH
+message.
+The following filters are recognised by the kernel:
+.Pp
+.Bd -literal -offset indent -compact
+ndm_family required family or AF_UNSPEC
+ndm_ifindex target ifindex
+NDA_IFINDEX target ifindex
+.Ed
+.Ss TLVs
+.Bl -tag -width indent
+.It Dv NDA_DST
+(binary) neighbor IPv4/IPv6 address.
+.It Dv NDA_LLADDR
+(binary) neighbor link-level address.
+.It Dv NDA_IFINDEX
+(uint32_t) interface index.
+.It Dv NDA_FLAGS_EXT
+(uint32_t) extended version of
+.Va ndm_flags .
+.El
+.Ss Groups
+The following groups are defined:
+.Bd -literal -offset indent -compact
+RTNLGRP_NEIGH Notifies on ARP/NDP neighbor arrival/removal/change
+.Ed
+.Sh SEE ALSO
+.Xr netlink 4 ,
+.Xr route 4
+.Sh HISTORY
+The
+.Dv NETLINK_ROUTE
+protocol family appeared in
+.Fx 13.2 .
+.Sh AUTHORS
+The netlink was implemented by
+.An -nosplit
+.An Alexander Chernikov Aq Mt melifaro@FreeBSD.org .
+It was derived from the Google Summer of Code 2021 project by
+.An Ng Peng Nam Sean .
diff --git a/share/man/man4/rtsx.4 b/share/man/man4/rtsx.4
index 61894b84e3e5..c9be7a6f21f4 100644
--- a/share/man/man4/rtsx.4
+++ b/share/man/man4/rtsx.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2022
.Dt RTSX 4
.Os
diff --git a/share/man/man4/rtw88.4 b/share/man/man4/rtw88.4
index 4508ab8ab4f7..a1a74db41b42 100644
--- a/share/man/man4/rtw88.4
+++ b/share/man/man4/rtw88.4
@@ -22,10 +22,8 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 7, 2022
-.Dt rtw88 4
+.Dd October 06, 2023
+.Dt RTW88 4
.Os
.Sh NAME
.Nm rtw88
@@ -44,10 +42,6 @@ to manually load the driver as a module at boot time:
kld_list="${kld_list} if_rtw88"
.Ed
.Pp
-The driver should automatically load any
-.Xr rtw88fw 4
-firmware needed for the particular chipset.
-.Pp
It is discouraged to load the driver from
.Xr loader 8 .
.Sh DESCRIPTION
@@ -63,13 +57,29 @@ the following chipsets:
.It Realtek 802.11ac wireless 8822ce (RTL8822CE)
.El
.Pp
+This driver requires firmware to be loaded before it will work.
+The package
+.Pa wifi-firmware-rtw88-kmod
+from the
+.Pa ports/net/wifi-firmware-rtw88-kmod
+port needs to be installed before the driver is loaded.
+Otherwise no
+.Xr wlan 4
+interface can be created using
+.Xr ifconfig 8 .
+One can use
+.Xr fwget 8
+to install the correct firmware package.
+.Pp
The driver uses the
.\" No LinuxKPI man pages so no .Xr here.
.Em linuxkpi_wlan
and
.Em linuxkpi
compat framework to bridge between the Linux and
-native FreeBSD driver code as well as to the native
+native
+.Fx
+driver code as well as to the native
.Xr net80211 4
wireless stack.
.Pp
@@ -102,10 +112,11 @@ section above.
.Sh SEE ALSO
.Xr rtw88fw 4 ,
.Xr wlan 4 ,
+.Xr fwget 8 ,
.Xr ifconfig 8 ,
.Xr wpa_supplicant 8
.Sh HISTORY
The
.Nm
driver first appeared in
-.Fx 14.0 .
+.Fx 13.2 .
diff --git a/share/man/man4/rtwn.4 b/share/man/man4/rtwn.4
index 1ffafc6dfcf9..cfebcc1bbffc 100644
--- a/share/man/man4/rtwn.4
+++ b/share/man/man4/rtwn.4
@@ -16,8 +16,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 2, 2019
.Dt RTWN 4
.Os
diff --git a/share/man/man4/rtwn_pci.4 b/share/man/man4/rtwn_pci.4
index 8e9bfd2efcea..c53500a0cae3 100644
--- a/share/man/man4/rtwn_pci.4
+++ b/share/man/man4/rtwn_pci.4
@@ -26,8 +26,6 @@
.\" IN CONTRACT, STRICT 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 DAMAGES.
-.\"
-.\" $FreeBSD$
.\"/
.Dd January 2, 2019
.Dt RTWN_PCI 4
diff --git a/share/man/man4/rtwn_usb.4 b/share/man/man4/rtwn_usb.4
index e6c2a2a89823..8d670839c3e3 100644
--- a/share/man/man4/rtwn_usb.4
+++ b/share/man/man4/rtwn_usb.4
@@ -26,8 +26,6 @@
.\" IN CONTRACT, STRICT 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 DAMAGES.
-.\"
-.\" $FreeBSD$
.\"/
.Dd November 1, 2021
.Dt RTWN_USB 4
diff --git a/share/man/man4/rtwnfw.4 b/share/man/man4/rtwnfw.4
index 7654eed6ea89..98e3ef0c13aa 100644
--- a/share/man/man4/rtwnfw.4
+++ b/share/man/man4/rtwnfw.4
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 3, 2019
.Dt RTWNFW 4
.Os
diff --git a/share/man/man4/rue.4 b/share/man/man4/rue.4
index ba85ae0c6c30..c30d8ca2c757 100644
--- a/share/man/man4/rue.4
+++ b/share/man/man4/rue.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 24, 2015
.Dt RUE 4
.Os
diff --git a/share/man/man4/rum.4 b/share/man/man4/rum.4
index fed7195a970f..814f312b291b 100644
--- a/share/man/man4/rum.4
+++ b/share/man/man4/rum.4
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 8, 2018
.Dt RUM 4
.Os
diff --git a/share/man/man4/run.4 b/share/man/man4/run.4
index d27bca4b10b4..03554d96e527 100644
--- a/share/man/man4/run.4
+++ b/share/man/man4/run.4
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 23, 2021
.Dt RUN 4
.Os
@@ -211,7 +209,7 @@ ifconfig wlan create wlandev run0 wlanmode adhoc ssid my_net \e
.Ed
.Sh DIAGNOSTICS
.Bl -diag
-.It "run%d: faild load firmware of file runfw"
+.It "run%d: failed load firmware of file runfw"
For some reason, the driver was unable to read the microcode file from the
filesystem.
The file might be missing or corrupted.
diff --git a/share/man/man4/runfw.4 b/share/man/man4/runfw.4
index 127a04431361..559429083cb3 100644
--- a/share/man/man4/runfw.4
+++ b/share/man/man4/runfw.4
@@ -16,8 +16,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 11, 2013
.Dt RUNFW 4
.Os
diff --git a/share/man/man4/sa.4 b/share/man/man4/sa.4
index 928bf5e90292..96b11ebe5360 100644
--- a/share/man/man4/sa.4
+++ b/share/man/man4/sa.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 18, 2022
.Dt SA 4
.Os
diff --git a/share/man/man4/safe.4 b/share/man/man4/safe.4
index 3d5cbec03784..61f2041ff333 100644
--- a/share/man/man4/safe.4
+++ b/share/man/man4/safe.4
@@ -22,8 +22,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.\"/
.Dd July 29, 2020
.Dt SAFE 4
diff --git a/share/man/man4/safexcel.4 b/share/man/man4/safexcel.4
index 774dfddfb053..d5e079822ecc 100644
--- a/share/man/man4/safexcel.4
+++ b/share/man/man4/safexcel.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 29, 2020
.Dt SAFEXCEL 4
.Os
diff --git a/share/man/man4/sbp.4 b/share/man/man4/sbp.4
index eeddd5da02c9..2255fa2993ae 100644
--- a/share/man/man4/sbp.4
+++ b/share/man/man4/sbp.4
@@ -29,8 +29,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 8, 2012
.Dt SBP 4
.Os
diff --git a/share/man/man4/sbp_targ.4 b/share/man/man4/sbp_targ.4
index 9a81a99a9b42..fe6451b61c20 100644
--- a/share/man/man4/sbp_targ.4
+++ b/share/man/man4/sbp_targ.4
@@ -29,8 +29,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 7, 2003
.Dt SBP_TARG 4
.Os
diff --git a/share/man/man4/scc.4 b/share/man/man4/scc.4
index e03f43011b07..05e9890a0bcc 100644
--- a/share/man/man4/scc.4
+++ b/share/man/man4/scc.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2020
.Dt SCC 4
.Os
diff --git a/share/man/man4/sched_4bsd.4 b/share/man/man4/sched_4bsd.4
index a02c40eb58a8..c8b3938fcbde 100644
--- a/share/man/man4/sched_4bsd.4
+++ b/share/man/man4/sched_4bsd.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 21, 2008
.Dt SCHED_4BSD 4
.Os
diff --git a/share/man/man4/sched_ule.4 b/share/man/man4/sched_ule.4
index 7ba18d361a38..764ff394c9f6 100644
--- a/share/man/man4/sched_ule.4
+++ b/share/man/man4/sched_ule.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 10, 2012
.Dt SCHED_ULE 4
.Os
diff --git a/share/man/man4/screen.4 b/share/man/man4/screen.4
index 2e08d28e9759..109aa2fe92b7 100644
--- a/share/man/man4/screen.4
+++ b/share/man/man4/screen.4
@@ -1,6 +1,4 @@
.\"
-.\" $FreeBSD$
-.\"
.Dd October 6, 2000
.Dt SCREEN 4
.Os
diff --git a/share/man/man4/scsi.4 b/share/man/man4/scsi.4
index 79e7ab322611..380768c2d7c1 100644
--- a/share/man/man4/scsi.4
+++ b/share/man/man4/scsi.4
@@ -22,9 +22,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.
-.\"
-.\" $FreeBSD$
-.Dd November 3, 2021
+.Dd December 11, 2023
.Dt CAM 4
.Os
.Sh NAME
@@ -192,30 +190,30 @@ Individual
bus numbers can be wired down to specific controllers with
a config line similar to the following:
.Bd -literal -offset indent
-hint.scbus.0.at="ahd1"
+hint.scbus.0.at="mpr1"
.Ed
.Pp
This assigns
.Nm
bus number 0 to the
-.Em ahd1
+.Em mpr1
driver instance.
For controllers supporting more than one bus, a particular bus can be assigned
as follows:
.Bd -literal -offset indent
-hint.scbus.0.at="ahc1"
+hint.scbus.0.at="ahci1"
hint.scbus.0.bus="1"
.Ed
.Pp
This assigns
.Nm
bus 0 to the bus 1 instance on
-.Em ahc1 .
+.Em ahci1 .
Peripheral drivers can be wired to a specific bus, target, and lun as so:
.Bd -literal -offset indent
hint.da.0.at="scbus0"
hint.da.0.target="0"
-hint.da.0.unit="0"
+hint.da.0.lun="0"
.Ed
.Pp
This assigns
@@ -230,19 +228,19 @@ wired to any particular controller, bus, target, and/or unit instance.
.Pp
This also works with
.Xr nvme 4
-drives as well.
+drives.
.Bd -literal -offset indent
hint.nvme.4.at="pci7:0:0"
hint.scbus.10.at="nvme4"
hint.nda.10.at="scbus10"
hint.nda.10.target="1"
-hint.nda.10.unit="12"
+hint.nda.10.lun="12"
hint.nda.11.at="scbus10"
hint.nda.11.target="1"
-hint.nda.11.unit="2"
+hint.nda.11.lun="2"
.Ed
.Pp
-This assigns the NVMe card living at PCI bus 7 slot 0 function 1 to scbus 10.
+This assigns the NVMe card at PCI bus 7 slot 0 function 1 to scbus 10.
The target for
.Xr nda 4
devices is always 1.
@@ -281,7 +279,7 @@ or
bus and the system.
The maximum size of a transfer is governed by the
adapter.
-Most adapters can transfer 64KB in a single operation, however
+Most adapters can transfer 1MB in a single operation, however
many can transfer larger amounts.
.Sh TARGET MODE
Some adapters support
@@ -369,7 +367,7 @@ SIM used to stand for SCSI Interface Module.
Now it is just SIM because it understands protocols other than SCSI.
There are two types of SIM drivers: virtual and physical.
Physical SIMs are typically called host bus adapters (HBA), but not universally.
-Virtual SIM drivers are for communicating with virtual machine hosts.
+Virtual SIM drivers are for communicating with network or virtual machine hosts.
.Sh FILES
see other
.Nm
diff --git a/share/man/man4/sctp.4 b/share/man/man4/sctp.4
index 2c47c5b5dcd3..287e16f3b599 100644
--- a/share/man/man4/sctp.4
+++ b/share/man/man4/sctp.4
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 9, 2020
+.Dd June 21, 2023
.Dt SCTP 4
.Os
.Sh NAME
@@ -299,12 +297,13 @@ This option lets the caller set it to a smaller value.
Note that while the user can change this value, if the P-MTU
is smaller than the value set by the user, then the P-MTU
value will override any user setting.
-.It Dv SCTP_DELAYED_ACK_TIME
+.It Dv SCTP_DELAYED_SACK
This option lets the user both set and get the
-delayed ack time (in milliseconds) that
+delayed ack time (in milliseconds) and the ack frequency that
.Tn SCTP
is using.
-The default is 200 milliseconds.
+The default delayed ack time is 200 milliseconds and the default
+ack frequency is 2.
.It Dv SCTP_PARTIAL_DELIVERY_POINT
.Tn SCTP
at times may need to start delivery of a
diff --git a/share/man/man4/sdhci.4 b/share/man/man4/sdhci.4
index 676122fa6d1b..4a4e02539acd 100644
--- a/share/man/man4/sdhci.4
+++ b/share/man/man4/sdhci.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 25, 2020
.Dt SDHCI 4
.Os
diff --git a/share/man/man4/sem.4 b/share/man/man4/sem.4
index 2767dc72a200..f2331738ff2d 100644
--- a/share/man/man4/sem.4
+++ b/share/man/man4/sem.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 7, 2014
.Dt SEM 4
.Os
diff --git a/share/man/man4/send.4 b/share/man/man4/send.4
index e69e6e35ca4b..06e04f3c924d 100644
--- a/share/man/man4/send.4
+++ b/share/man/man4/send.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 19, 2010
.Dt SEND 4
.Os
diff --git a/share/man/man4/ses.4 b/share/man/man4/ses.4
index 3d3f370270b2..8de664c8d7a2 100644
--- a/share/man/man4/ses.4
+++ b/share/man/man4/ses.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 12, 2019
.Dt SES 4
.Os
diff --git a/share/man/man4/sfxge.4 b/share/man/man4/sfxge.4
index 0c6ac4f8db22..a9724074581e 100644
--- a/share/man/man4/sfxge.4
+++ b/share/man/man4/sfxge.4
@@ -26,8 +26,6 @@
.\" those of the authors and should not be interpreted as representing official
.\" policies, either expressed or implied, of the FreeBSD Project.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 22, 2015
.Dt SFXGE 4
.Os
diff --git a/share/man/man4/sge.4 b/share/man/man4/sge.4
index 0322169b6e74..cdcedc81b86e 100644
--- a/share/man/man4/sge.4
+++ b/share/man/man4/sge.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 16, 2011
.Dt SGE 4
.Os
diff --git a/share/man/man4/siba.4 b/share/man/man4/siba.4
index 13fd3dc936f0..4191971da325 100644
--- a/share/man/man4/siba.4
+++ b/share/man/man4/siba.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 13, 2017
.Dt SIBA 4
.Os
diff --git a/share/man/man4/siftr.4 b/share/man/man4/siftr.4
index be5bf7d5411b..719ba0e3d280 100644
--- a/share/man/man4/siftr.4
+++ b/share/man/man4/siftr.4
@@ -27,9 +27,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 7, 2022
+.Dd May 29, 2023
.Dt SIFTR 4
.Os
.Sh NAME
@@ -83,10 +81,7 @@ In the IPv4-only (default) mode, standard dotted decimal notation (e.g.
"136.186.229.95") is used to format IPv4 addresses for logging.
In IPv6 mode, standard dotted decimal notation is used to format IPv4 addresses,
and standard colon-separated hex notation (see RFC 4291) is used to format IPv6
-addresses for logging.
-Note that SIFTR uses uncompressed notation to format IPv6 addresses.
-For example, the address "fe80::20f:feff:fea2:531b" would be logged as
-"fe80:0:0:0:20f:feff:fea2:531b".
+addresses (e.g. "fd00::2") for logging.
.Ss Run-time Configuration
.Nm
utilises the
@@ -122,18 +117,10 @@ By default, the file /var/log/siftr.log is used.
The path can be changed at any time, even while the module is enabled.
.El
.Bl -tag -offset indent -width Va
-.It Va net.inet.siftr.genhashes
-controls whether a hash is generated for each TCP packet seen by
-.Nm .
-By default, the value is set to 0, which means no hashes are generated.
-The hashes are useful to correlate which TCP packet triggered the generation of
-a particular log message, but calculating them adds additional computational
-overhead into the fast path.
-.El
-.Bl -tag -offset indent -width Va
.It Va net.inet.siftr.port_filter
-controls on which source or destination port siftr should capture
-.Nm .
+controls on which source or destination port
+.Nm
+should capture.
By default, the value is set to 0, which means all ports are eligible for logging.
Set to any other value, only packets where either the source or destination
port is equal to this number are logged.
@@ -155,9 +142,8 @@ The text below shows an example module enable log.
The fields are tab delimited key-value
pairs which describe some basic information about the system.
.Bd -literal -offset indent
-enable_time_secs=1238556193 enable_time_usecs=462104 \\
-siftrver=1.2.2 hz=1000 tcp_rtt_scale=32 \\
-sysname=FreeBSD sysver=604000 ipmode=4
+enable_time_secs=1685191807 enable_time_usecs=160752 \\
+siftrver=1.3.0 sysname=FreeBSD sysver=1400089 ipmode=4
.Ed
.Pp
Field descriptions are as follows:
@@ -175,14 +161,6 @@ version of
.Nm .
.El
.Bl -tag -offset indent -width Va
-.It Va hz
-tick rate of the kernel in ticks per second.
-.El
-.Bl -tag -offset indent -width Va
-.It Va tcp_rtt_scale
-smoothed RTT estimate scaling factor.
-.El
-.Bl -tag -offset indent -width Va
.It Va sysname
operating system name.
.El
@@ -207,9 +185,9 @@ The text below shows an example data log triggered by an IPv4
TCP/IP packet.
The data is CSV formatted.
.Bd -literal -offset indent
-o,0xbec491a5,1238556193.463551,172.16.7.28,22,172.16.2.5,55931, \\
-1073725440,172312,34,66560,66608,8,1,4,1448,936,1,996,255, \\
-33304,208,66608,0,208,0
+o,1685191814.185109,10.1.1.2,32291,10.1.1.3,5001,1073725440, \\
+14480,2,65160,65700,7,9,4,1460,1000,1,16778209,230000,33580,0, \\
+65700,0,0,0,86707916,130
.Ed
.Pp
Field descriptions are as follows:
@@ -224,127 +202,115 @@ for out.
.El
.Bl -tag -offset indent -width Va
.It Va 2
-Hash of the packet that triggered the log message.
-.El
-.Bl -tag -offset indent -width Va
-.It Va 3
Time at which the packet that triggered the log message was processed by
the
.Xr pfil 9
hook function, in seconds and microseconds since the UNIX epoch.
.El
.Bl -tag -offset indent -width Va
-.It Va 4
+.It Va 3
The IPv4 or IPv6 address of the local host, in dotted quad (IPv4 packet)
or colon-separated hex (IPv6 packet) notation.
.El
.Bl -tag -offset indent -width Va
-.It Va 5
+.It Va 4
The TCP port that the local host is communicating via.
.El
.Bl -tag -offset indent -width Va
-.It Va 6
+.It Va 5
The IPv4 or IPv6 address of the foreign host, in dotted quad (IPv4 packet)
or colon-separated hex (IPv6 packet) notation.
.El
.Bl -tag -offset indent -width Va
-.It Va 7
+.It Va 6
The TCP port that the foreign host is communicating via.
.El
.Bl -tag -offset indent -width Va
-.It Va 8
+.It Va 7
The slow start threshold for the flow, in bytes.
.El
.Bl -tag -offset indent -width Va
-.It Va 9
+.It Va 8
The current congestion window for the flow, in bytes.
.El
.Bl -tag -offset indent -width Va
-.It Va 10
+.It Va 9
The current state of the t_flags2 field for the flow.
.El
.Bl -tag -offset indent -width Va
-.It Va 11
+.It Va 10
The current sending window for the flow, in bytes.
-The post scaled value is reported, except during the initial handshake (first
-few packets), during which time the unscaled value is reported.
+The post scaled value is reported.
.El
.Bl -tag -offset indent -width Va
-.It Va 12
+.It Va 11
The current receive window for the flow, in bytes.
The post scaled value is always reported.
.El
.Bl -tag -offset indent -width Va
-.It Va 13
+.It Va 12
The current window scaling factor for the sending window.
.El
.Bl -tag -offset indent -width Va
-.It Va 14
+.It Va 13
The current window scaling factor for the receiving window.
.El
.Bl -tag -offset indent -width Va
-.It Va 15
+.It Va 14
The current state of the TCP finite state machine, as defined
in
.Aq Pa netinet/tcp_fsm.h .
.El
.Bl -tag -offset indent -width Va
-.It Va 16
+.It Va 15
The maximum segment size for the flow, in bytes.
.El
.Bl -tag -offset indent -width Va
-.It Va 17
-The current smoothed RTT estimate for the flow, in units of TCP_RTT_SCALE * HZ,
-where TCP_RTT_SCALE is a define found in tcp_var.h, and HZ is the kernel's tick
-timer.
-Divide by TCP_RTT_SCALE * HZ to get the RTT in secs.
-TCP_RTT_SCALE and HZ are reported in the enable log message.
+.It Va 16
+The current smoothed RTT estimate for the flow, in units of microsecond.
.El
.Bl -tag -offset indent -width Va
-.It Va 18
+.It Va 17
SACK enabled indicator. 1 if SACK enabled, 0 otherwise.
.El
.Bl -tag -offset indent -width Va
-.It Va 19
+.It Va 18
The current state of the TCP flags for the flow.
See
.Aq Pa netinet/tcp_var.h
for information about the various flags.
.El
.Bl -tag -offset indent -width Va
-.It Va 20
-The current retransmission timeout length for the flow, in units of HZ, where HZ
-is the kernel's tick timer.
-Divide by HZ to get the timeout length in seconds.
-HZ is reported in the enable log message.
+.It Va 19
+The current retransmission timeout length for the flow, in units microsecond.
.El
.Bl -tag -offset indent -width Va
-.It Va 21
+.It Va 20
The current size of the socket send buffer in bytes.
.El
.Bl -tag -offset indent -width Va
-.It Va 22
+.It Va 21
The current number of bytes in the socket send buffer.
.El
.Bl -tag -offset indent -width Va
-.It Va 23
+.It Va 22
The current size of the socket receive buffer in bytes.
.El
.Bl -tag -offset indent -width Va
-.It Va 24
+.It Va 23
The current number of bytes in the socket receive buffer.
.El
.Bl -tag -offset indent -width Va
-.It Va 25
+.It Va 24
The current number of unacknowledged bytes in-flight.
Bytes acknowledged via SACK are not excluded from this count.
.El
.Bl -tag -offset indent -width Va
-.It Va 26
+.It Va 25
The current number of segments in the reassembly queue.
.El
.Bl -tag -offset indent -width Va
-.It Va 27
+.It Va 26
Flowid for the connection.
A caveat: Zero '0' either represents a valid flowid or a default value when it's
not being set.
@@ -352,7 +318,7 @@ There is no easy way to differentiate without looking at actual
network interface card and drivers being used.
.El
.Bl -tag -offset indent -width Va
-.It Va 28
+.It Va 27
Flow type for the connection.
Flowtype defines which protocol fields are hashed to produce the flowid.
A complete listing is available in
@@ -367,14 +333,13 @@ The text below shows an example module disable log.
The fields are tab delimited key-value pairs which provide statistics about
operations since the module was most recently enabled.
.Bd -literal -offset indent
-disable_time_secs=1238556197 disable_time_usecs=933607 \\
-num_inbound_tcp_pkts=356 num_outbound_tcp_pkts=627 \\
-total_tcp_pkts=983 num_inbound_skipped_pkts_malloc=0 \\
-num_outbound_skipped_pkts_malloc=0 num_inbound_skipped_pkts_mtx=0 \\
-num_outbound_skipped_pkts_mtx=0 num_inbound_skipped_pkts_tcb=0 \\
-num_outbound_skipped_pkts_tcb=0 num_inbound_skipped_pkts_icb=0 \\
-num_outbound_skipped_pkts_icb=0 total_skipped_tcp_pkts=0 \\
-flow_list=172.16.7.28;22-172.16.2.5;55931,
+disable_time_secs=1685191816 disable_time_usecs=629397 \\
+num_inbound_tcp_pkts=10 num_outbound_tcp_pkts=10 \\
+total_tcp_pkts=20 num_inbound_skipped_pkts_malloc=0 \\
+num_outbound_skipped_pkts_malloc=0 num_inbound_skipped_pkts_tcpcb=2 \\
+num_outbound_skipped_pkts_tcpcb=2 num_inbound_skipped_pkts_inpcb=0 \\
+num_outbound_skipped_pkts_inpcb=0 total_skipped_tcp_pkts=4 \\
+flow_list=10.1.1.2;32291-10.1.1.3;5001,10.1.1.2;58544-10.1.1.3;5001,
.Ed
.Pp
Field descriptions are as follows:
@@ -417,32 +382,22 @@ Number of outbound packets that were not processed because of failed
calls.
.El
.Bl -tag -offset indent -width Va
-.It Va num_inbound_skipped_pkts_mtx
-Number of inbound packets that were not processed because of failure to add the
-packet to the packet processing queue.
-.El
-.Bl -tag -offset indent -width Va
-.It Va num_outbound_skipped_pkts_mtx
-Number of outbound packets that were not processed because of failure to add the
-packet to the packet processing queue.
-.El
-.Bl -tag -offset indent -width Va
-.It Va num_inbound_skipped_pkts_tcb
+.It Va num_inbound_skipped_pkts_tcpcb
Number of inbound packets that were not processed because of failure to find the
TCP control block associated with the packet.
.El
.Bl -tag -offset indent -width Va
-.It Va num_outbound_skipped_pkts_tcb
+.It Va num_outbound_skipped_pkts_tcpcb
Number of outbound packets that were not processed because of failure to find
the TCP control block associated with the packet.
.El
.Bl -tag -offset indent -width Va
-.It Va num_inbound_skipped_pkts_icb
+.It Va num_inbound_skipped_pkts_inpcb
Number of inbound packets that were not processed because of failure to find the
IP control block associated with the packet.
.El
.Bl -tag -offset indent -width Va
-.It Va num_outbound_skipped_pkts_icb
+.It Va num_outbound_skipped_pkts_inpcb
Number of outbound packets that were not processed because of failure to find
the IP control block associated with the packet.
.El
@@ -555,8 +510,9 @@ As a result of needing to interrogate the TCP control block, certain packets
during the lifecycle of a connection are unable to trigger a
.Nm
log message.
-The initial handshake takes place without the existence of a control block and
-the final ACK is exchanged when the connection is in the TIMEWAIT state.
+The initial handshake takes place without the existence of a control block or
+the complete initialization of the control block, and the final ACK is
+exchanged when the connection is in the TIMEWAIT state.
.Pp
.Nm
was designed to minimise the delay introduced to packets traversing the network
@@ -785,9 +741,4 @@ value logged by
does not take into account bytes that have been
.No SACK Ap ed
by the receiving host.
-.It
-Packet hash generation does not currently work for IPv6 based TCP packets.
-.It
-Compressed notation is not used for IPv6 address representation.
-This consumes more bytes than is necessary in log output.
.El
diff --git a/share/man/man4/siis.4 b/share/man/man4/siis.4
index dca87f5bf93a..3ba7cd1b7bec 100644
--- a/share/man/man4/siis.4
+++ b/share/man/man4/siis.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 23, 2015
.Dt SIIS 4
.Os
diff --git a/share/man/man4/simplebus.4 b/share/man/man4/simplebus.4
index 42d97dd33d03..78cb8d77f61b 100644
--- a/share/man/man4/simplebus.4
+++ b/share/man/man4/simplebus.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 12, 2010
.Dt SIMPLEBUS 4
.Os
diff --git a/share/man/man4/sis.4 b/share/man/man4/sis.4
index ebaddc33517e..87c8e059e53a 100644
--- a/share/man/man4/sis.4
+++ b/share/man/man4/sis.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 2, 2010
.Dt SIS 4
.Os
diff --git a/share/man/man4/sk.4 b/share/man/man4/sk.4
index b24d18fe6e76..17ca8beb5e18 100644
--- a/share/man/man4/sk.4
+++ b/share/man/man4/sk.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 29, 2012
.Dt SK 4
.Os
diff --git a/share/man/man4/smartpqi.4 b/share/man/man4/smartpqi.4
index fbe435ca3a7f..5b7ea923e13e 100644
--- a/share/man/man4/smartpqi.4
+++ b/share/man/man4/smartpqi.4
@@ -1,5 +1,7 @@
-.\" Copyright (c) 2018 Murthy Bhat
-.\" All rights reserved.
+.\" Copyright (C) 2019-2023, Microchip Technology Inc. and its subsidiaries
+.\" Copyright (C) 2016-2018, Microsemi Corporation
+.\" Copyright (C) 2016, PMC-Sierra, Inc.
+.\" Written by John Hall <john.hall@microchip.com>
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -22,25 +24,22 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$ stable/10/share/man/man4/smartpqi.4 195614 2017-01-11 08:10:18Z jkim $
-.Dd April 6, 2018
+.Dd August 24, 2023
.Dt SMARTPQI 4
.Os
.Sh NAME
.Nm smartpqi
-.Nd Microsemi smartpqi SCSI driver for PQI controllers
+.Nd "Microchip Smart Storage SCSI driver"
.Sh SYNOPSIS
-To compile this driver into the kernel,
-place the following lines in your
-kernel configuration file:
+To compile this driver into the kernel, place these lines in the kernel
+configuration file:
.Bd -ragged -offset indent
.Cd device pci
.Cd device scbus
.Cd device smartpqi
.Ed
.Pp
-Alternatively, to load the driver as a
-module at boot time, place the following line in
+The driver can be loaded as a module at boot time by placing this line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
smartpqi_load="YES"
@@ -48,36 +47,33 @@ smartpqi_load="YES"
.Sh DESCRIPTION
The
.Nm
-SCSI driver provides support for the new generation of PQI controllers from
-Microsemi.
-The
-.Nm
-driver is the first SCSI driver to implement the PQI queuing model.
-.Pp
-The
-.Nm
-driver will replace the aacraid driver for Adaptec Series 9 controllers.
-.Pp
-The
-.Pa /dev/smartpqi?
-device nodes provide access to the management interface of the controller.
-One node exists per installed card.
+driver provides support for Microchip Technology Inc. / Adaptec SmartRaid and
+SmartHBA SATA/SAS/NVME PCIe controllers
.Sh HARDWARE
Controllers supported by the
.Nm
-driver include:
+driver include, but not limited to:
.Pp
.Bl -bullet -compact
.It
HPE Gen10 Smart Array Controller Family
.It
-OEM Controllers based on the Microsemi Chipset
+Adaptec SmartRaid and SmartHBA Controllers
+.It
+OEM Controllers based on the Microchip Technology Inc. SmartROC
+and SmartIOC Chipsets
.El
.Sh FILES
-.Bl -tag -width /boot/kernel/aac.ko -compact
+.Bl -tag -width /boot/kernel/smartpqi.ko -compact
.It Pa /dev/smartpqi?
smartpqi management interface
.El
+.Sh NOTES
+.Ss Configuration
+To configure a Microchip Smart Storage controller,
+refer to the User Guide for the controller,
+which can be found by searching for the specific controller at
+https://www.microchip.com/design-centers/storage
.Sh SEE ALSO
.Xr kld 4 ,
.Xr linux 4 ,
@@ -87,17 +83,13 @@ smartpqi management interface
.Xr loader.conf 5 ,
.Xr camcontrol 8 ,
.Xr kldload 8
-.Rs
-.%T "Microsemi Website"
-.%U https://www.microsemi.com/
-.Re
.Sh HISTORY
The
.Nm
driver first appeared in
.Fx 11.1 .
.Sh AUTHORS
-.An Murthy Bhat
-.Aq murthy.bhat@microsemi.com
+.An John Hall
+.Aq john.hall@microchip.com
.Sh BUGS
The controller is not actually paused on suspend/resume.
diff --git a/share/man/man4/smb.4 b/share/man/man4/smb.4
index 20fb70341acd..d2a1c3b9a618 100644
--- a/share/man/man4/smb.4
+++ b/share/man/man4/smb.4
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 25, 2015
.Dt SMB 4
.Os
diff --git a/share/man/man4/smbios.4 b/share/man/man4/smbios.4
index 036ffc5ab291..0b7101903f24 100644
--- a/share/man/man4/smbios.4
+++ b/share/man/man4/smbios.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 22, 2020
.Dt SMBIOS 4
.Os
diff --git a/share/man/man4/smbus.4 b/share/man/man4/smbus.4
index 1a117d52fd8a..250017defd36 100644
--- a/share/man/man4/smbus.4
+++ b/share/man/man4/smbus.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 7, 2021
.Dt SMBUS 4
.Os
diff --git a/share/man/man4/smp.4 b/share/man/man4/smp.4
index 408f417ace7c..a02d69b0dc4f 100644
--- a/share/man/man4/smp.4
+++ b/share/man/man4/smp.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 4, 2019
.Dt SMP 4
.Os
diff --git a/share/man/man4/smsc.4 b/share/man/man4/smsc.4
index dac2864adb27..56c1556e5f83 100644
--- a/share/man/man4/smsc.4
+++ b/share/man/man4/smsc.4
@@ -25,8 +25,6 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 24, 2015
.Dt SMSC 4
.Os
diff --git a/share/man/man4/snd_als4000.4 b/share/man/man4/snd_als4000.4
index fbf63f4a5de0..7df6868cacd3 100644
--- a/share/man/man4/snd_als4000.4
+++ b/share/man/man4/snd_als4000.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 15, 2005
.Dt SND_ALS4000 4
.Os
diff --git a/share/man/man4/snd_atiixp.4 b/share/man/man4/snd_atiixp.4
index 45c65f984989..1b83a969a625 100644
--- a/share/man/man4/snd_atiixp.4
+++ b/share/man/man4/snd_atiixp.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 29, 2006
.Dt SND_ATIIXP 4
.Os
diff --git a/share/man/man4/snd_cmi.4 b/share/man/man4/snd_cmi.4
index 35aded63bbd5..5f233ec9b1c2 100644
--- a/share/man/man4/snd_cmi.4
+++ b/share/man/man4/snd_cmi.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 15, 2005
.Dt SND_CMI 4
.Os
diff --git a/share/man/man4/snd_cs4281.4 b/share/man/man4/snd_cs4281.4
index ee7b4ddc0891..a05ac3997e29 100644
--- a/share/man/man4/snd_cs4281.4
+++ b/share/man/man4/snd_cs4281.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 15, 2005
.Dt SND_CS4281 4
.Os
diff --git a/share/man/man4/snd_csa.4 b/share/man/man4/snd_csa.4
index ed0fb76dd006..8422387c906f 100644
--- a/share/man/man4/snd_csa.4
+++ b/share/man/man4/snd_csa.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 15, 2005
.Dt SND_CSA 4
.Os
diff --git a/share/man/man4/snd_emu10k1.4 b/share/man/man4/snd_emu10k1.4
index 1d4a8603a4ec..5ced043cf0cf 100644
--- a/share/man/man4/snd_emu10k1.4
+++ b/share/man/man4/snd_emu10k1.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 15, 2005
.Dt SND_EMU10K1 4
.Os
diff --git a/share/man/man4/snd_emu10kx.4 b/share/man/man4/snd_emu10kx.4
index 690727416f54..cdfe3f03cd95 100644
--- a/share/man/man4/snd_emu10kx.4
+++ b/share/man/man4/snd_emu10kx.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 28, 2008
.Dt SND_EMU10KX 4
.Os
diff --git a/share/man/man4/snd_envy24.4 b/share/man/man4/snd_envy24.4
index 5844d920cf04..fe65004a70d2 100644
--- a/share/man/man4/snd_envy24.4
+++ b/share/man/man4/snd_envy24.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 1, 2014
.Dt SND_ENVY24 4
.Os
diff --git a/share/man/man4/snd_envy24ht.4 b/share/man/man4/snd_envy24ht.4
index a4f8084807b9..f909afc73284 100644
--- a/share/man/man4/snd_envy24ht.4
+++ b/share/man/man4/snd_envy24ht.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 11, 2018
.Dt SND_ENVY24HT 4
.Os
diff --git a/share/man/man4/snd_es137x.4 b/share/man/man4/snd_es137x.4
index d00ea5fb9a35..e503df44acd1 100644
--- a/share/man/man4/snd_es137x.4
+++ b/share/man/man4/snd_es137x.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 29, 2006
.Dt SND_ES137X 4
.Os
diff --git a/share/man/man4/snd_fm801.4 b/share/man/man4/snd_fm801.4
index 48807ec3a2f3..e72c07b23f4c 100644
--- a/share/man/man4/snd_fm801.4
+++ b/share/man/man4/snd_fm801.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2005
.Dt SND_FM801 4
.Os
diff --git a/share/man/man4/snd_hda.4 b/share/man/man4/snd_hda.4
index ba7941633b44..45ad2ee132ca 100644
--- a/share/man/man4/snd_hda.4
+++ b/share/man/man4/snd_hda.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 16, 2019
.Dt SND_HDA 4
.Os
diff --git a/share/man/man4/snd_hdspe.4 b/share/man/man4/snd_hdspe.4
index 676b945b8002..a8c7be538dd1 100644
--- a/share/man/man4/snd_hdspe.4
+++ b/share/man/man4/snd_hdspe.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd February 13, 2012
+.Dd February 9, 2024
.Dt SND_HDSPE 4
.Os
.Sh NAME
@@ -61,6 +59,82 @@ RME HDSPe AIO
.It
RME HDSPe RayDAT
.El
+.Pp
+By default, each
+.Xr pcm 4
+device corresponds to a physical port on the sound card.
+For ADAT ports, 8 channel, 4 channel and 2 channel formats are supported.
+The effective number of ADAT channels is 8 channels at single speed
+(32kHz-48kHz), 4 channels at double speed (64kHz-96kHz), and 2 channels at
+quad speed (128kHz-192kHz).
+Depending on sample rate and channel format selected, not all pcm channels can
+be mapped to ADAT channels and vice versa.
+.Sh LOADER TUNABLES
+These settings can be entered at the
+.Xr loader 8
+prompt or in
+.Xr loader.conf 5 .
+.Bl -tag -width indent
+.It Va hw.hdspe.unified_pcm
+If set to 1, all physical ports are combined into one unified pcm device.
+When opened in multi-channel audio software, this makes all ports available
+at the same time, and fully synchronized.
+For resulting channel numbers consult the following table:
+.El
+.Bl -column "HDSPe RayDAT" "Single Speed" "Double Speed" "Quad Speed"
+.Sy "Sound Card" Ta Sy "Single Speed" Ta Sy "Double Speed" Ta Sy "Quad Speed"
+.It "" Ta "Play | Rec" Ta "Play | Rec" Ta "Play | Rec"
+.It HDSPe AIO Ta " 16 | 14" Ta " 12 | 10" Ta " 10 | 8"
+.It HDSPe RayDAT Ta " 36 | 36" Ta " 20 | 20" Ta " 12 | 12"
+.El
+.Sh SYSCTL TUNABLES
+These settings and informational values can be accessed at runtime with the
+.Xr sysctl 8
+command.
+If multiple RME HDSPe sound cards are installed, each device has a separate
+configuration.
+To adjust the following sysctl identifiers for a specific sound card, insert
+the respective device number in place of
+.Ql 0 .
+.Bl -tag -width indent
+.It Va dev.hdspe.0.sample_rate
+Set a fixed sample rate from 32000, 44100, 48000, up to 192000.
+This is usually required for digital connections (AES, S/PDIF, ADAT).
+The default value of 0 adjusts the sample rate according to pcm device settings.
+.It Va dev.hdspe.0.period
+The number of samples processed per interrupt, from 32, 64, 128, up to 4096.
+Setting a lower value here results in less latency, but increases system load
+due to frequent interrupt processing.
+Extreme values may cause audio gaps and glitches.
+.It Va dev.hdspe.0.clock_list
+Lists possible clock sources to sync with, depending on the hardware model.
+This includes internal and external master clocks as well as incoming digital
+audio signals like AES, S/PDIF and ADAT.
+.It Va dev.hdspe.0.clock_preference
+Select a preferred clock source from the clock list.
+HDSPe cards will sync to this clock source when available, but fall back to
+auto-sync with any other digital clock signal they receive.
+Set this to
+.Ql internal
+if the HDSPe card should act as master clock.
+.It Va dev.hdspe.0.clock_source
+Shows the actual clock source in use (read only).
+This differs from what is set as clock preference when in auto-sync mode.
+.It Va dev.hdspe.0.sync_status
+Display the current sync status of all external clock sources.
+Status indications are
+.Ql none
+for no signal at all,
+.Ql lock
+for when a valid signal is present, and
+.Ql sync
+for accurately synchronized signals (required for recording digital
+audio).
+.El
+.Pp
+Where appropriate these sysctl values are modeled after official RME software on
+other platforms, and adopt their terminology.
+Consult the RME user manuals for additional information.
.Sh SEE ALSO
.Xr sound 4
.Sh HISTORY
@@ -74,3 +148,5 @@ The
.Nm
driver was written by
.An Ruslan Bukin <br@bsdpad.com> .
+.An Florian Walpen <dev@submerge.ch>
+contributed clock source settings and restructured the pcm device mapping.
diff --git a/share/man/man4/snd_ich.4 b/share/man/man4/snd_ich.4
index b03a0fd5569f..77e425f57ab6 100644
--- a/share/man/man4/snd_ich.4
+++ b/share/man/man4/snd_ich.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 6, 2009
.Dt SND_ICH 4
.Os
diff --git a/share/man/man4/snd_maestro3.4 b/share/man/man4/snd_maestro3.4
index fa61a5b6f37f..3637f7406978 100644
--- a/share/man/man4/snd_maestro3.4
+++ b/share/man/man4/snd_maestro3.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 15, 2005
.Dt SND_MAESTRO3 4
.Os
diff --git a/share/man/man4/snd_neomagic.4 b/share/man/man4/snd_neomagic.4
index 2865bbba344c..5a42e9e33811 100644
--- a/share/man/man4/snd_neomagic.4
+++ b/share/man/man4/snd_neomagic.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2005
.Dt SND_NEOMAGIC 4
.Os
diff --git a/share/man/man4/snd_solo.4 b/share/man/man4/snd_solo.4
index 697611f32204..eed773edd36d 100644
--- a/share/man/man4/snd_solo.4
+++ b/share/man/man4/snd_solo.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 28, 2005
.Dt SND_SOLO 4
.Os
diff --git a/share/man/man4/snd_spicds.4 b/share/man/man4/snd_spicds.4
index aea0c56e0935..15abc8f53319 100644
--- a/share/man/man4/snd_spicds.4
+++ b/share/man/man4/snd_spicds.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 28, 2007
.Dt SND_SPICDS 4
.Os
diff --git a/share/man/man4/snd_t4dwave.4 b/share/man/man4/snd_t4dwave.4
index c96eefb1b6d7..ccf9dc022f56 100644
--- a/share/man/man4/snd_t4dwave.4
+++ b/share/man/man4/snd_t4dwave.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2005
.Dt SND_T4DWAVE 4
.Os
diff --git a/share/man/man4/snd_uaudio.4 b/share/man/man4/snd_uaudio.4
index 17780692a669..6e2509b8f2ac 100644
--- a/share/man/man4/snd_uaudio.4
+++ b/share/man/man4/snd_uaudio.4
@@ -27,9 +27,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 12, 2016
+.Dd March 26, 2024
.Dt SND_UAUDIO 4
.Os
.Sh NAME
@@ -53,24 +51,94 @@ snd_uaudio_load="YES"
.Sh DESCRIPTION
The
.Nm
-driver provides support for
-.Tn USB
-audio class devices and
-.Tn USB
-MIDI class devices.
+driver provides support for USB audio class devices and USB MIDI class devices.
+.Pp
+A USB audio device consists of a number of components: input terminals (e.g.\&
+USB digital input), output terminals (e.g.\& speakers), and a number of units
+in between (e.g.\& volume control).
.Pp
-A
-.Tn USB
-audio device consists of a number of components:
-input terminals (e.g.\& USB digital input), output terminals (e.g.\&
-speakers), and a number of units in between (e.g.\& volume control).
+If the device supports multiple configurations, and there have been no
+user-supplied values specified through the
+.Xr sysctl 8
+interface, the driver will select the best matching configuration supported by
+the device during attach.
+"Best" means the configuration with the most channels and highest quality in
+sample rate and sample size.
.Pp
Refer to the
.Ql USB Audio Class Specification
for more information.
+.Sh SYSCTL VARIABLES
+The following settings can be entered at the
+.Xr loader 8
+prompt or in
+.Xr loader.conf 5
+and can also be changed at runtime with the
+.Xr sysctl 8
+command.
+For a change to take effect during runtime, the device has to be re-attached.
+.Bl -tag -width indent
+.It Va hw.usb.uaudio.buffer_ms
+Period of audio data processed at once, in milliseconds, from 1 to 8 (default
+is 4).
+Lower values mean less latency, but this can result in audible gaps due to
+frequent CPU wakeups.
+.It Va hw.usb.uaudio.default_bits
+Preferred sample size in bits, from 0 to 32 (default is 0).
+A value of 0 sets the sample size to the maximum supported sample size.
+.Pp
+Set this to select a smaller sample size if the device supports multiple sample
+sizes.
+.It Va hw.usb.uaudio.default_channels
+Preferred number of sample channels, from 0 to 64 (default is 0).
+USB 1.1 devices are limited to 4 channels due to bandwidth constraints, unless
+a higher value is explicitly requested.
+A value of 0 sets the sample channels to the maximum supported channel number.
+.Pp
+Set this to select a smaller channel number if the device supports multiple
+channel configurations.
+.It Va hw.usb.uaudio.default_rate
+Preferred sample rate in Hz (default is 0).
+If set to 0, the device's highest supported sample rate will be used.
+.Pp
+Note that if VCHANs are enabled, the sample rate will be overridden by
+.Pa dev.pcm.%d.[play|rec].vchanrate
+(see
+.Xr sound 4 ) ,
+which can also be used to adjust the sample rate during runtime.
+.Pp
+If
+.Pa hw.usb.uaudio.default_rate
+is non-zero,
+.Pa dev.pcm.%d.[play|rec].vchanrate
+will use it as its maximum allowed value.
+.It Va hw.usb.uaudio.handle_hid
+Let
+.Nm
+handle HID volume keys, if any (default is 1).
+.Bl -tag -width 2n
+.It 0
+Disabled.
+.It 1
+Enabled.
+.El
+.El
+.Pp
+If
+.Xr usb 4
+has been compiled with
+.Va USB_DEBUG
+on, the following setting is also available:
+.Bl -tag -width indent
+.It Va hw.usb.uaudio.debug
+Debug output level (default is 0).
+.El
.Sh SEE ALSO
.Xr sound 4 ,
-.Xr usb 4
+.Xr usb 4 ,
+.Xr loader.conf 5 ,
+.Xr loader 8 ,
+.Xr sysctl 8
.Rs
.%T "USB Audio Class Specifications"
.%U http://www.usb.org/developers/docs/devclass_docs/
@@ -88,17 +156,6 @@ and modified for
by
.An Hiten Pandya Aq Mt hmp@FreeBSD.org .
.Sh BUGS
-The
-.Tn PCM
-framework in
-.Fx
-only supports synchronous device detach.
-That means all mixer and DSP character devices belonging to a given
-USB audio device must be closed when receiving an error on a DSP read,
-a DSP write or a DSP IOCTL request.
-Else the USB audio driver will wait for this to happen, preventing
-enumeration of new devices on the parenting USB controller.
-.Pp
Some USB audio devices might refuse to work properly unless the sample
rate is configured the same for both recording and playback, even if
only simplex is used.
@@ -106,12 +163,9 @@ See the
.Va dev.pcm.%d.[play|rec].vchanrate
sysctls.
.Pp
-The
-.Tn PCM
-framework in
+The PCM framework in
.Fx
-currently doesn't support the full set of USB audio mixer
-controls.
+currently does not support the full set of USB audio mixer controls.
Some mixer controls are only available as
.Va dev.pcm.%d.mixer
sysctls.
diff --git a/share/man/man4/snd_via8233.4 b/share/man/man4/snd_via8233.4
index 5637701beb37..5495854ac0e7 100644
--- a/share/man/man4/snd_via8233.4
+++ b/share/man/man4/snd_via8233.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 29, 2006
.Dt SND_VIA8233 4
.Os
diff --git a/share/man/man4/snd_via82c686.4 b/share/man/man4/snd_via82c686.4
index 85c6c18e0b8d..4aa791215e7d 100644
--- a/share/man/man4/snd_via82c686.4
+++ b/share/man/man4/snd_via82c686.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2005
.Dt SND_VIA82C686 4
.Os
diff --git a/share/man/man4/snd_vibes.4 b/share/man/man4/snd_vibes.4
index 9db6f0fe5b64..df6e3b754dfa 100644
--- a/share/man/man4/snd_vibes.4
+++ b/share/man/man4/snd_vibes.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2005
.Dt SND_VIBES 4
.Os
diff --git a/share/man/man4/sndstat.4 b/share/man/man4/sndstat.4
index 92e17d86116a..8325490da162 100644
--- a/share/man/man4/sndstat.4
+++ b/share/man/man4/sndstat.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" This software was developed by Ka Ho Ng
.\" under sponsorship from the FreeBSD Foundation.
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.\" Note: The date here should be updated whenever a non-trivial
.\" change is made to the manual page.
.Dd April 15, 2021
@@ -91,7 +89,7 @@ The device identification in the form of subsystem plus a unit number.
.It Dv devnode
The PCM audio device node relative path in devfs.
.It Dv desc
-The descripton of the PCM audio device.
+The description of the PCM audio device.
.It Dv pchan
The number of playback channels supported by hardware.
This can be 0 if this PCM audio device does not support playback at all.
diff --git a/share/man/man4/snp.4 b/share/man/man4/snp.4
index ce0ef66c5721..3a42b93351e8 100644
--- a/share/man/man4/snp.4
+++ b/share/man/man4/snp.4
@@ -1,7 +1,5 @@
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 5, 2008
+.Dd September 24, 2022
.Dt SNP 4
.Os
.Sh NAME
@@ -58,8 +56,6 @@ ioctl returns a positive value equal to the number of characters
in a read buffer.
Special values defined are:
.Bl -tag -width ".Dv SNP_TTYCLOSE"
-.It Dv SNP_OFLOW
-device overflow occurred, device detached.
.It Dv SNP_TTYCLOSE
tty not attached.
.It Dv SNP_DETACH
@@ -89,11 +85,3 @@ Previous versions of
.Nm
were based on code written by
.An Ugen J.S. Antsilevich Aq Mt ugen@NetVision.net.il .
-.Sh BUGS
-This version of
-.Nm
-does not return proper error codes when calling
-.Dv FIONREAD .
-It also does not allow
-.Dv SNPSTTY
-to detach itself from the TTY.
diff --git a/share/man/man4/spigen.4 b/share/man/man4/spigen.4
index 8a8cc556be81..5ca5ef6b1329 100644
--- a/share/man/man4/spigen.4
+++ b/share/man/man4/spigen.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 21, 2020
.Dt SPIGEN 4
.Os
diff --git a/share/man/man4/spkr.4 b/share/man/man4/spkr.4
index c1f0894cd5df..64dfee278de4 100644
--- a/share/man/man4/spkr.4
+++ b/share/man/man4/spkr.4
@@ -1,6 +1,4 @@
.\"
-.\" $FreeBSD$
-.\"
.Dd November 10, 2005
.Dt SPKR 4
.Os
diff --git a/share/man/man4/splash.4 b/share/man/man4/splash.4
index fdc770f65ea8..b6d93287286c 100644
--- a/share/man/man4/splash.4
+++ b/share/man/man4/splash.4
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 31, 2015
.Dt SPLASH 4
.Os
diff --git a/share/man/man4/ste.4 b/share/man/man4/ste.4
index 2839b00f43f9..ba82e22efd29 100644
--- a/share/man/man4/ste.4
+++ b/share/man/man4/ste.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 24, 2009
.Dt STE 4
.Os
diff --git a/share/man/man4/stf.4 b/share/man/man4/stf.4
index 8ffd2481a08b..2c0296b204d9 100644
--- a/share/man/man4/stf.4
+++ b/share/man/man4/stf.4
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 16, 2021
.Dt STF 4
.Os
diff --git a/share/man/man4/stge.4 b/share/man/man4/stge.4
index 527d241aa815..2dbaf70bc219 100644
--- a/share/man/man4/stge.4
+++ b/share/man/man4/stge.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 23, 2010
.Dt STGE 4
.Os
diff --git a/share/man/man4/sume.4 b/share/man/man4/sume.4
index 66c221cc2d08..219328a4f4c4 100644
--- a/share/man/man4/sume.4
+++ b/share/man/man4/sume.4
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2020 Denis Salopek
.\"
@@ -24,8 +24,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 30, 2020
.Dt SUME 4
.Os
diff --git a/share/man/man4/superio.4 b/share/man/man4/superio.4
index e242875e3b09..cee5e1640a0b 100644
--- a/share/man/man4/superio.4
+++ b/share/man/man4/superio.4
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2019 Andriy Gapon <avg@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 11, 2019
.Dt SUPERIO 4
.Os
@@ -50,6 +48,7 @@ superio_load="YES"
Super I/O is an I/O controller that combines various low-bandwidth devices
that can be functionally unrelated otherwise.
A typical Super I/O can contain devices such as
+.Pp
.Bl -bullet -compact
.It
a floppy disk controller
@@ -101,7 +100,46 @@ controllers and a bus driver for supported devices in those controllers.
The
.Nm
driver supports a multitude of Super I/O controllers produced by Nuvoton,
-formerly known as Winbond, and ITE.
+formerly known as Winbond, and ITE, namely:
+.Pp
+.Bl -bullet -compact
+.It
+Fintek F81803
+.It
+Fintek F81865
+.It
+Nuvoton NCT5104D/NCT6102D/NCT6106D rev. A and B+
+.It
+Nuvoton NCT5585D
+.It
+Nuvoton NCT6116D
+.It
+Nuvoton NCT6775
+.It
+Nuvoton NCT6776
+.It
+Nuvoton NCT6779
+.It
+Nuvoton NCT6791
+.It
+Nuvoton NCT6792
+.It
+Nuvoton NCT6793
+.It
+Nuvoton NCT6795
+.It
+Nuvoton NCT6796D-E
+.It
+Winbond 83627HF/F/HG/G/S/THF/EHF/DHG/UHG/DHG-P
+.It
+Winbond 83637HF
+.It
+Winbond 83667HG/HG-B
+.It
+Winbond 83687THF
+.It
+Winbond 83697HF/UG
+.El
.Sh SEE ALSO
.Xr superio 9
.Sh HISTORY
diff --git a/share/man/man4/sym.4 b/share/man/man4/sym.4
index 222f3f54e96e..14eb1624ca2c 100644
--- a/share/man/man4/sym.4
+++ b/share/man/man4/sym.4
@@ -54,8 +54,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2020
.Dt SYM 4
.Os
diff --git a/share/man/man4/syncache.4 b/share/man/man4/syncache.4
index 87b1bf35b8eb..e92502fd15ff 100644
--- a/share/man/man4/syncache.4
+++ b/share/man/man4/syncache.4
@@ -10,8 +10,6 @@
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 12, 2021
.Dt SYNCACHE 4
.Os
diff --git a/share/man/man4/syncer.4 b/share/man/man4/syncer.4
index 30b38e40ee4a..326f14edae0f 100644
--- a/share/man/man4/syncer.4
+++ b/share/man/man4/syncer.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 14, 2000
.Dt SYNCER 4
.Os
diff --git a/share/man/man4/syscons.4 b/share/man/man4/syscons.4
index bbc370ecd0d2..19ecd5e3746e 100644
--- a/share/man/man4/syscons.4
+++ b/share/man/man4/syscons.4
@@ -24,15 +24,13 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 25, 2022
.Dt SYSCONS 4
.Os
.Sh NAME
.Nm syscons ,
.Nm sc
-.Nd the console driver
+.Nd the legacy console driver
.Sh SYNOPSIS
.Cd "options MAXCONS=N"
.Cd "options SC_ALT_MOUSE_IMAGE"
diff --git a/share/man/man4/sysmouse.4 b/share/man/man4/sysmouse.4
index e33021c15534..2955fbbf0e3d 100644
--- a/share/man/man4/sysmouse.4
+++ b/share/man/man4/sysmouse.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 25, 2014
.Dt SYSMOUSE 4
.Os
diff --git a/share/man/man4/tap.4 b/share/man/man4/tap.4
index b7cfb9448da5..95a681a923d2 100644
--- a/share/man/man4/tap.4
+++ b/share/man/man4/tap.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" Based on PR#2411
.\"
.Dd January 13, 2020
diff --git a/share/man/man4/targ.4 b/share/man/man4/targ.4
index 45d5e59990b0..543597c81b18 100644
--- a/share/man/man4/targ.4
+++ b/share/man/man4/targ.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 13, 2011
.Dt TARG 4
.Os
diff --git a/share/man/man4/tcp.4 b/share/man/man4/tcp.4
index cdb58c7cbacc..39db12752937 100644
--- a/share/man/man4/tcp.4
+++ b/share/man/man4/tcp.4
@@ -31,10 +31,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" From: @(#)tcp.4 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
-.Dd August 1, 2022
+.Dd November 30, 2023
.Dt TCP 4
.Os
.Sh NAME
@@ -175,7 +172,7 @@ socket option set.
.Pp
In addition to the facilities defined in RFC7413, this implementation supports a
pre-shared key (PSK) mode of operation in which the TFO server requires the
-client to be in posession of a shared secret in order for the client to be able
+client to be in possession of a shared secret in order for the client to be able
to successfully open TFO connections with the server.
This is useful, for example, in environments where TFO servers are exposed to
both internal and external clients and only wish to allow TFO connections from
@@ -282,6 +279,7 @@ this packetization may cause significant delays.
The boolean option
.Dv TCP_NODELAY
defeats this algorithm.
+
.It Dv TCP_MAXSEG
By default, a sender- and
.No receiver- Ns Tn TCP
@@ -291,6 +289,17 @@ The
.Dv TCP_MAXSEG
option allows the user to determine the result of this negotiation,
and to reduce it if desired.
+.It Dv TCP_MAXUNACKTIME
+This
+.Xr setsockopt 2
+option accepts an argument of
+.Vt "u_int"
+to set the per-socket interval, in seconds, in which the connection must
+make progress. Progress is defined by at least 1 byte being acknowledged within
+the set time period. If a connection fails to make progress, then the
+.Tn TCP
+stack will terminate the connection with a reset. Note that the default
+value for this is zero which indicates no progress checks should be made.
.It Dv TCP_NOOPT
.Tn TCP
usually sends a number of options in each packet, corresponding to
@@ -371,7 +380,7 @@ Changes NUMA affinity filtering for an established TCP listen
socket.
This option takes a single integer argument which specifies
the NUMA domain to filter on for this listen socket.
-The argument can also have the follwing special values:
+The argument can also have the following special values:
.Bl -tag -width "Dv TCP_REUSPORT_LB_NUMA"
.It Dv TCP_REUSPORT_LB_NUMA_NODOM
Remove NUMA filtering for this listen socket.
@@ -455,13 +464,6 @@ See
Maximum amount of time, in milliseconds, before a delayed ACK is sent.
.It Va delayed_ack
Delay ACK to try and piggyback it onto a data packet or another ACK.
-.It Va do_lrd
-Enable Lost Retransmission Detection for SACK-enabled sessions, disabled by
-default.
-Under severe congestion, a retransmission can be lost which then leads to a
-mandatory Retransmission Timeout (RTO), followed by slow-start.
-LRD will try to resend the repeatedly lost packet, preventing the time-consuming
-RTO and performance reducing slow-start.
.It Va do_prr
Perform SACK loss recovery using the Proportional Rate Reduction (PRR) algorithm
described in RFC6937.
@@ -469,12 +471,6 @@ This improves the effectiveness of retransmissions particular in environments
with ACK thinning or burst loss events, as chances to run out of the ACK clock
are reduced, preventing lengthy and performance reducing RTO based loss recovery
(default is true).
-.It Va do_prr_conservative
-While doing Proportional Rate Reduction, remain strictly in a packet conserving
-mode, sending only one new packet for each ACK received.
-Helpful when a misconfigured token bucket traffic policer causes persistent
-high losses leading to RTO, but reduces PRR effectiveness in more common settings
-(default is false).
.It Va do_tcpdrain
Flush packets in the
.Tn TCP
@@ -495,6 +491,13 @@ Outgoing connections will request ECN.
Allow incoming connections to request ECN.
Outgoing connections will not request ECN.
(default)
+.It 3
+Negotiate on incoming connection for Accurate ECN, ECN, or no ECN.
+Outgoing connections will request Accurate ECN and fall back to
+ECN depending on the capabilities of the server.
+.It 4
+Negotiate on incoming connection for Accurate ECN, ECN, or no ECN.
+Outgoing connections will not request ECN.
.El
.It Va ecn.maxretries
Number of retries (SYN or SYN/ACK retransmits) before disabling ECN on a
@@ -659,7 +662,7 @@ cache.
Time in seconds between pruning expired host cache entries.
Defaults to 300 (5 minutes).
.It Va hostcache.purge
-Expire all entires on next pruning of host cache entries.
+Expire all entries on next pruning of host cache entries.
Any non-zero setting will be reset to zero, once the purge
is running.
.Bl -tag -compact
@@ -734,23 +737,6 @@ A value of 2 results in any
packets to closed ports being logged.
Any value not listed above disables the logging
(default is 0, i.e., the logging is disabled).
-.It Va maxtcptw
-When a TCP connection enters the
-.Dv TIME_WAIT
-state, its associated socket structure is freed, since it is of
-negligible size and use, and a new structure is allocated to contain a
-minimal amount of information necessary for sustaining a connection in
-this state, called the compressed TCP
-.Dv TIME_WAIT
-state.
-Since this structure is smaller than a socket structure, it can save
-a significant amount of system memory.
-The
-.Va net.inet.tcp.maxtcptw
-MIB variable controls the maximum number of these structures allocated.
-By default, it is initialized to
-.Va kern.ipc.maxsockets
-/ 5.
.It Va minmss
Minimum TCP Maximum Segment Size; used to prevent a denial of service attack
from an unreasonably low MSS.
@@ -767,14 +753,14 @@ application limited and the network bandwidth is not utilized completely.
That prevents self-inflicted packet losses once the application starts to
transmit data at a higher speed.
.It Va nolocaltimewait
-Suppress creation of compressed TCP
+Suppress creation of TCP
.Dv TIME_WAIT
states for connections in
which both endpoints are local.
.It Va path_mtu_discovery
Enable Path MTU Discovery.
.It Va pcbcount
-Number of active process control blocks
+Number of active protocol control blocks
(read-only).
.It Va perconn_stats_enable
Controls the default collection of statistics for all connections using the
@@ -841,10 +827,9 @@ Maximum size of automatic receive buffer.
Initial
.Tn TCP
receive window (buffer size).
-.It Va require_unique_port
-Require unique ephemeral port for outgoing connections;
-otherwise, the 4-tuple of local and remote ports and addresses must be unique.
-Requiring a unique port limits the number of outgoing connections.
+.It Va retries
+Maximum number of consecutive timer based retransmits sent after a data
+segment is lost (default and maximum is 12).
.It Va rexmit_drop_options
Drop TCP options from third and later retransmitted SYN segments
of a connection.
@@ -873,7 +858,18 @@ minimum, which gives us an effective minimum of 200ms (similar to
The initial value is used before an RTT measurement has been performed.
.It Va rfc1323
Implement the window scaling and timestamp options of RFC 1323/RFC 7323
-(default is true).
+(default is 1).
+Settings:
+.Bl -tag -compact
+.It 0
+Disable window scaling and timestamp option.
+.It 1
+Enable window scaling and timestamp option.
+.It 2
+Enable only window scaling.
+.It 3
+Enable only timestamp option.
+.El
.It Va rfc3042
Enable the Limited Transmit algorithm as described in RFC 3042.
It helps avoid timeouts on lossy links and also when the congestion window
@@ -898,6 +894,13 @@ Global number of TCP SACK holes currently allocated.
.It Va sack.globalmaxholes
Maximum number of SACK holes per system, across all connections.
Defaults to 65536.
+.It Va sack.lrd
+Enable Lost Retransmission Detection for SACK-enabled sessions, enabled by
+default.
+Under severe congestion, a retransmission can be lost which then leads to a
+mandatory Retransmission Timeout (RTO), followed by slow-start.
+LRD will try to resend the repeatedly lost packet, preventing the time-consuming
+RTO and performance reducing slow-start or purge of the SACK scoreboard.
.It Va sack.maxholes
Maximum number of SACK holes per connection.
Defaults to 128.
@@ -1041,6 +1044,7 @@ when trying to use a TCP function block that is not available;
.Xr siftr 4 ,
.Xr syncache 4 ,
.Xr tcp_bbr 4 ,
+.Xr tcp_rack 4 ,
.Xr setkey 8 ,
.Xr sysctl 8 ,
.Xr tcp_functions 9
diff --git a/share/man/man4/tcp_bbr.4 b/share/man/man4/tcp_bbr.4
index 604e205820fb..fb1023dc81c6 100644
--- a/share/man/man4/tcp_bbr.4
+++ b/share/man/man4/tcp_bbr.4
@@ -1,5 +1,5 @@
.\"
-.\" Copyright (c) 2020, Gordon Bergling
+.\" Copyright (c) 2020, Gordon Bergling <gbe@FreeBSD.org>
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -22,21 +22,13 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd September 24, 2020
+.Dd December 17, 2023
.Dt TCP_BBR 4
.Os
.Sh NAME
.Nm tcp_bbr
.Nd TCP Bottleneck Bandwidth and Round-Trip Time Algorithm
.Sh SYNOPSIS
-To use this TCP stack you have to place the following line in your
-kernel configuration file:
-.Bd -ragged -offset indent
-.Cd "options TCPHPTS"
-.Ed
-.Pp
To load the driver as a module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
@@ -129,6 +121,7 @@ Minimum RTO in ms.
.Xr h_ertt 4 ,
.Xr mod_cc 4 ,
.Xr tcp 4 ,
+.Xr tcp_rack 4 ,
.Xr mod_cc 9
.Rs
.%A "Neal Cardwell"
diff --git a/share/man/man4/tcp_rack.4 b/share/man/man4/tcp_rack.4
new file mode 100644
index 000000000000..73995d930a9a
--- /dev/null
+++ b/share/man/man4/tcp_rack.4
@@ -0,0 +1,162 @@
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2022, Gordon Bergling <gbe@FreeBSD.org>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR
+.\" ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 March 18, 2024
+.Dt TCP_RACK 4
+.Os
+.Sh NAME
+.Nm tcp_rack
+.Nd TCP RACK-TLP Loss Detection Algorithm for TCP
+.Sh SYNOPSIS
+To load the TCP stack as a module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+tcp_rack_load="YES"
+.Ed
+.Pp
+To enable the TCP stack, place the following line in the
+.Xr sysctl.conf 5 :
+.Bd -literal -offset indent
+net.inet.tcp.functions_default=rack
+.Ed
+.Sh DESCRIPTION
+RACK-TLP uses per-segment transmit timestamps and selective
+acknowledgments (SACKs) and has two parts.
+Recent Acknowledgment (RACK) starts fast recovery quickly
+using time-based inferences derived from acknowledgment (ACK)
+feedback, and Tail Loss Probe (TLP) leverages RACK
+and sends a probe packet to trigger ACK feedback to avoid
+retransmission timeout (RTO) events.
+.Pp
+Compared to the widely used duplicate acknowledgment (DupAck)
+threshold approach, RACK-TLP detects losses more efficiently
+when there are application-limited flights of data, lost
+retransmissions, or data packet reordering events.
+.Pp
+It is intended to be an alternative to the
+DupAck threshold approach.
+.Sh MIB Variables
+The algorithm exposes the following scopes in the
+.Va net.inet.tcp.rack
+branch of the
+.Xr sysctl 3
+MIB:
+.Bl -tag -width indent
+.It Va net.inet.tcp.rack.misc
+Misc related controls
+.It Va net.inet.tcp.rack.features
+Feature controls
+.It Va net.inet.tcp.rack.measure
+Measure related controls
+.It Va net.inet.tcp.rack.timers
+Timer related controls
+.It Va net.inet.tcp.rack.tlp
+TLP and Rack related Controls
+.It Va net.inet.tcp.rack.timely
+Rack Timely RTT Controls
+.It Va net.inet.tcp.rack.hdwr_pacing
+Pacing related Controls
+.It Va net.inet.tcp.rack.pacing
+Pacing related Controls
+.It Va net.inet.tcp.rack.tp
+Rack tracepoint facility
+.It Va net.inet.tcp.rack.probertt
+ProbeRTT related Controls
+.It Va net.inet.tcp.rack.stats
+Rack Counters
+.It Va net.inet.tcp.rack.sack_attack
+Rack Sack Attack Counters and Controls
+.El
+.Pp
+Besides the variables within the above scopes the following
+variables are also exposed in the
+.Va net.inet.tcp.rack
+branch:
+.Bl -tag -width indent
+.It Va net.inet.tcp.rack.clear
+Clear counters
+.It Va net.inet.tcp.rack.opts
+RACK Option Stats
+.It Va net.inet.tcp.rack.outsize
+MSS send sizes
+.It Va net.inet.tcp.rack.req_measure_cnt
+If doing dynamic pacing, how many measurements
+must be in before we start pacing?
+.It Va net.inet.tcp.rack.use_pacing
+If set we use pacing, if clear we use only the original burst mitigation
+.It Va net.inet.tcp.rack.rate_sample_method
+What method should we use for rate sampling 0=high, 1=low
+.El
+.Sh SEE ALSO
+.Xr cc_chd 4 ,
+.Xr cc_cubic 4 ,
+.Xr cc_hd 4 ,
+.Xr cc_htcp 4 ,
+.Xr cc_newreno 4 ,
+.Xr cc_vegas 4 ,
+.Xr h_ertt 4 ,
+.Xr mod_cc 4 ,
+.Xr tcp 4 ,
+.Xr tcp_bbr 4 ,
+.Xr mod_cc 9
+.Rs
+.%A "Neal Cardwell"
+.%A "Yuchung Cheng"
+.%A "Nandita Dukkipati"
+.%A "Priyaranjan Jha"
+.%T "The RACK-TLP Loss Detection Algorithm for TCP"
+.%O "RFC 8985"
+.%D "February 2021"
+.Re
+.Rs
+.%A "M. Allman"
+.%A "V. Paxson"
+.%A "E. Blanton"
+.%T "TCP Congestion Control"
+.%O "RFC 5681"
+.%D "September 2009"
+.Re
+.Rs
+.%A "M. Mathis"
+.%A "Nandita Dukkipati"
+.%A "Yuchung Cheng"
+.%T "Proportional Rate Reduction for TCP"
+.%O "RFC 6937"
+.%D "May 2013"
+.Re
+.Sh HISTORY
+The
+.Nm
+congestion control module first appeared in
+.Fx 13.0 .
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+congestion control module was written by
+.An Randall Stewart Aq Mt rrs@FreeBSD.org
+and sponsored by Netflix, Inc.
+This manual page was written by
+.An Gordon Bergling Aq Mt gbe@FreeBSD.org .
diff --git a/share/man/man4/tdfx.4 b/share/man/man4/tdfx.4
index 76dbdd3d2f29..663cd5827ce3 100644
--- a/share/man/man4/tdfx.4
+++ b/share/man/man4/tdfx.4
@@ -1,6 +1,4 @@
.\"
-.\" $FreeBSD$
-.\"
.Dd February 19, 2001
.Dt TDFX 4
.Os
diff --git a/share/man/man4/termios.4 b/share/man/man4/termios.4
index c9993a6dc14c..08b0b81126c3 100644
--- a/share/man/man4/termios.4
+++ b/share/man/man4/termios.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)termios.4 8.4 (Berkeley) 4/19/94
-.\" $FreeBSD$
-.\"
.Dd June 28, 2020
.Dt TERMIOS 4
.Os
@@ -885,6 +882,8 @@ following masks:
/* any char will restart after stop */
.It Dv IMAXBEL
/* ring bell on input queue full */
+.It Dv IUTF8
+/* assume input is UTF-8 encoded */
.El
.Pp
In the context of asynchronous serial data transmission, a break
diff --git a/share/man/man4/textdump.4 b/share/man/man4/textdump.4
index 9b8f88359a4a..bd479d6a6d05 100644
--- a/share/man/man4/textdump.4
+++ b/share/man/man4/textdump.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 18, 2019
.Dt TEXTDUMP 4
.Os
diff --git a/share/man/man4/ti.4 b/share/man/man4/ti.4
index a589ec048ebf..bc22963330a0 100644
--- a/share/man/man4/ti.4
+++ b/share/man/man4/ti.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 14, 2011
.Dt TI 4
.Os
@@ -299,7 +297,7 @@ driver also includes a character device interface that can be used for
additional diagnostics, configuration and debugging.
With this character
device interface, and a specially patched version of
-.Xr gdb 1 ,
+.Xr gdb 1 Pq Pa ports/devel/gdb ,
the user can
debug firmware running on the Tigon board.
.Pp
diff --git a/share/man/man4/timecounters.4 b/share/man/man4/timecounters.4
index 52c68d7b44a5..998bb95d8928 100644
--- a/share/man/man4/timecounters.4
+++ b/share/man/man4/timecounters.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 12, 2015
.Dt TIMECOUNTERS 4
.Os
diff --git a/share/man/man4/tpm.4 b/share/man/man4/tpm.4
index e493c7232d4c..8736d24d1ee1 100644
--- a/share/man/man4/tpm.4
+++ b/share/man/man4/tpm.4
@@ -13,8 +13,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 31, 2018
.Dt TPM 4
.Os
diff --git a/share/man/man4/tslog.4 b/share/man/man4/tslog.4
index 5b0f5fbb1264..e7f69a8d6f3f 100644
--- a/share/man/man4/tslog.4
+++ b/share/man/man4/tslog.4
@@ -1,4 +1,4 @@
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2022 Mateusz Piotrowski <0mp@FreeBSD.org>
.\"
@@ -101,13 +101,13 @@ first appeared in
.Fx 12.0 .
Support for tracing boot loaders and userland process
was added in
-.Fx 14.0 .
+.Fx 13.2 .
.Ss TSLOG vs. Boottrace
.Nm
is oriented towards system developers while
.Xr boottrace 4
is meant to be easy to use by system administrators.
-Both faciliities provide an overview of timing and resource usage of the boot
+Both facilities provide an overview of timing and resource usage of the boot
process.
.Ss TSLOG vs. DTrace
.Xr dtrace 1
diff --git a/share/man/man4/tty.4 b/share/man/man4/tty.4
index 593920d807b7..331c0c42f476 100644
--- a/share/man/man4/tty.4
+++ b/share/man/man4/tty.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)tty.4 8.3 (Berkeley) 4/19/94
-.\" $FreeBSD$
-.\"
.Dd April 3, 2022
.Dt TTY 4
.Os
diff --git a/share/man/man4/tun.4 b/share/man/man4/tun.4
index a0c60647e86c..58f67cb20acb 100644
--- a/share/man/man4/tun.4
+++ b/share/man/man4/tun.4
@@ -1,5 +1,4 @@
.\" $NetBSD: tun.4,v 1.1 1996/06/25 22:17:37 pk Exp $
-.\" $FreeBSD$
.\" Based on PR#2411
.\"
.Dd March 17, 2020
diff --git a/share/man/man4/twe.4 b/share/man/man4/twe.4
index 9f2eadfb2662..03a51b7b6a50 100644
--- a/share/man/man4/twe.4
+++ b/share/man/man4/twe.4
@@ -22,9 +22,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 15, 2004
+.Dd May 7, 2023
.Dt TWE 4
.Os
.Sh NAME
@@ -45,6 +43,11 @@ module at boot time, place the following line in
.Bd -literal -offset indent
twe_load="YES"
.Ed
+.Sh DEPRECATION NOTICE
+The
+.Nm
+driver is not present in
+.Fx 14.0 .
.Sh DESCRIPTION
The
.Nm
diff --git a/share/man/man4/tws.4 b/share/man/man4/tws.4
index 40e49bd88121..35ac30910cd1 100644
--- a/share/man/man4/tws.4
+++ b/share/man/man4/tws.4
@@ -24,8 +24,6 @@
.\"OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\"SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 4, 2011
.Dt TWS 4
.Os
diff --git a/share/man/man4/u3g.4 b/share/man/man4/u3g.4
index 53094929074f..234b5a4b3277 100644
--- a/share/man/man4/u3g.4
+++ b/share/man/man4/u3g.4
@@ -16,14 +16,12 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 15, 2021
+.Dd February 4, 2023
.Dt U3G 4
.Os
.Sh NAME
.Nm u3g
-.Nd USB support for 3G datacards
+.Nd USB support for 3G and 4G datacards
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following lines in your
@@ -72,9 +70,11 @@ Qualcomm Inc. CDMA MSM
.It
Qualcomm Inc. GOBI 1000, 2000 and 3000 devices with MDM1000 or MDM2000 chipsets
.It
-QUECTEL EC25, EM05, EM12-G.
+QUECTEL BGX, ECX, EGX, EMX, EPX, RGX series.
+.It
+Quectel EM160R (see CAVEATS)
.It
-Huawei B190, E180v, E220 ('<Huawei Mobile>')
+Huawei B190, E180v, E220, E3372, E3372v153, E5573Cs322, ('<Huawei Mobile>')
.It
Novatel U740, MC950D, X950D, etc.
.It
@@ -149,6 +149,14 @@ driver was written by
and
.An Nick Hibma Aq Mt n_hibma@FreeBSD.org .
Hardware for testing was provided by AnyWi Technologies, Leiden, NL.
+.Sh CAVEATS
+The Quectel EM160R is not officially supported in PPP mode.
+In order to use it in PPP mode, the ctsrts option needs to be turned off,
+for example, by adding:
+.Dl set ctsrts off
+to
+.Pa /etc/ppp/ppp.conf
+in the correct section.
.Sh BUGS
The automatic mode switch from disk mode to modem mode does not work unless
the driver is either built into the kernel or loaded before the device is
diff --git a/share/man/man4/uark.4 b/share/man/man4/uark.4
index 77d2d9d6c638..7c16921e0eb8 100644
--- a/share/man/man4/uark.4
+++ b/share/man/man4/uark.4
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UARK 4
.Os
diff --git a/share/man/man4/uart.4 b/share/man/man4/uart.4
index 2fe7bb4175d5..90ab2fd4cb57 100644
--- a/share/man/man4/uart.4
+++ b/share/man/man4/uart.4
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 11, 2020
.Dt UART 4
.Os
diff --git a/share/man/man4/uath.4 b/share/man/man4/uath.4
index 57d9e222f92e..7d9632fe8e0f 100644
--- a/share/man/man4/uath.4
+++ b/share/man/man4/uath.4
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 7, 2009
.Dt UATH 4
.Os
diff --git a/share/man/man4/ubsa.4 b/share/man/man4/ubsa.4
index ddc492a9bde5..094f3ad1bdbf 100644
--- a/share/man/man4/ubsa.4
+++ b/share/man/man4/ubsa.4
@@ -26,8 +26,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UBSA 4
.Os
diff --git a/share/man/man4/ubser.4 b/share/man/man4/ubser.4
index d4b8bc7cb6e2..58a24c3e8b04 100644
--- a/share/man/man4/ubser.4
+++ b/share/man/man4/ubser.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UBSER 4
.Os
diff --git a/share/man/man4/ubtbcmfw.4 b/share/man/man4/ubtbcmfw.4
index 0337124e2387..ec1ee6cf2c83 100644
--- a/share/man/man4/ubtbcmfw.4
+++ b/share/man/man4/ubtbcmfw.4
@@ -23,7 +23,6 @@
.\" SUCH DAMAGE.
.\"
.\" $Id: ubtbcmfw.4,v 1.3 2003/05/21 19:37:35 max Exp $
-.\" $FreeBSD$
.\"
.Dd November 22, 2006
.Dt UBTBCMFW 4
diff --git a/share/man/man4/uchcom.4 b/share/man/man4/uchcom.4
index d55f116a354c..d5efe83286ba 100644
--- a/share/man/man4/uchcom.4
+++ b/share/man/man4/uchcom.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UCHCOM 4
.Os
diff --git a/share/man/man4/ucom.4 b/share/man/man4/ucom.4
index 32b9574e96e7..b9f40777bc94 100644
--- a/share/man/man4/ucom.4
+++ b/share/man/man4/ucom.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 11, 2020
.Dt UCOM 4
.Os
diff --git a/share/man/man4/ucycom.4 b/share/man/man4/ucycom.4
index ec410ab0ff78..4f4790f51c03 100644
--- a/share/man/man4/ucycom.4
+++ b/share/man/man4/ucycom.4
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2004 Dag-Erling Coïdan Smørgrav
+.\" Copyright (c) 2004 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UCYCOM 4
.Os
diff --git a/share/man/man4/udav.4 b/share/man/man4/udav.4
index da527f0ad9e2..f85c88494d9e 100644
--- a/share/man/man4/udav.4
+++ b/share/man/man4/udav.4
@@ -30,8 +30,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 24, 2015
.Dt UDAV 4
.Os
diff --git a/share/man/man4/udbp.4 b/share/man/man4/udbp.4
index eaa9283d8050..f6ec43ae8b2d 100644
--- a/share/man/man4/udbp.4
+++ b/share/man/man4/udbp.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 20, 2017
.Dt UDBP 4
.Os
diff --git a/share/man/man4/udl.4 b/share/man/man4/udl.4
index 572fe8f37a25..b2cfeba2489c 100644
--- a/share/man/man4/udl.4
+++ b/share/man/man4/udl.4
@@ -1,5 +1,4 @@
.\" $OpenBSD: udl.4,v 1.20 2012/09/18 17:11:41 jasper Exp $
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2009 Marcus Glocker <mglocker@openbsd.org>
.\"
@@ -15,7 +14,7 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd February 15, 2015
+.Dd September 9, 2023
.Dt UDL 4
.Os
.Sh NAME
@@ -23,10 +22,11 @@
.Nd DisplayLink DL-120 / DL-160 USB display devices
.Sh SYNOPSIS
To compile this driver into the kernel,
-place the following line in your
+place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
.Cd "device udl"
+.Cd "device videomode"
.Ed
.Pp
Alternatively, to load the driver as a
diff --git a/share/man/man4/udp.4 b/share/man/man4/udp.4
index 7249e9db9c60..178adfe06b9f 100644
--- a/share/man/man4/udp.4
+++ b/share/man/man4/udp.4
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)udp.4 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd August 1, 2022
.Dt UDP 4
.Os
diff --git a/share/man/man4/udplite.4 b/share/man/man4/udplite.4
index 859c9667629e..38c0691a0f90 100644
--- a/share/man/man4/udplite.4
+++ b/share/man/man4/udplite.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 1, 2014
.Dt UDPLITE 4
.Os
diff --git a/share/man/man4/uep.4 b/share/man/man4/uep.4
index bfc48e1e51da..321d2f1e9514 100644
--- a/share/man/man4/uep.4
+++ b/share/man/man4/uep.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 5, 2018
.Dt UEP 4
.Os
@@ -63,12 +61,12 @@ Depending on compile-time kernel options it supports either native
or evdev operation modes.
.Pp
To get the mouse working in
-.Xr X 7
+.Xr X 7 Pq Pa ports/x11/xorg-docs
in native mode, install
.Pa ports/x11-drivers/xf86-input-egalax .
.Pp
To get the mouse working in
-.Xr X 7
+.Xr X 7 Pq Pa ports/x11/xorg-docs
in evdev mode, install
.Pa ports/x11-drivers/xf86-input-evdev .
.Sh FILES
diff --git a/share/man/man4/ufoma.4 b/share/man/man4/ufoma.4
index 19028d99eb03..609a9b1f831c 100644
--- a/share/man/man4/ufoma.4
+++ b/share/man/man4/ufoma.4
@@ -25,8 +25,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 20, 2011
.Dt UFOMA 4
.Os
diff --git a/share/man/man4/uftdi.4 b/share/man/man4/uftdi.4
index ddddce5deccd..9bd3d4a4a293 100644
--- a/share/man/man4/uftdi.4
+++ b/share/man/man4/uftdi.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UFTDI 4
.Os
diff --git a/share/man/man4/ugen.4 b/share/man/man4/ugen.4
index 35580e8aa88b..bd387b0ee884 100644
--- a/share/man/man4/ugen.4
+++ b/share/man/man4/ugen.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 14, 2021
.Dt UGEN 4
.Os
diff --git a/share/man/man4/ugold.4 b/share/man/man4/ugold.4
index 79d2e5749f2d..d8b2f456fa65 100644
--- a/share/man/man4/ugold.4
+++ b/share/man/man4/ugold.4
@@ -15,8 +15,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 11, 2015
.Dt UGOLD 4
.Os
diff --git a/share/man/man4/uhci.4 b/share/man/man4/uhci.4
index 871d78ef92d9..689dc4b8b5b8 100644
--- a/share/man/man4/uhci.4
+++ b/share/man/man4/uhci.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 24, 2018
.Dt UHCI 4
.Os
diff --git a/share/man/man4/uhid.4 b/share/man/man4/uhid.4
index 491a2e871e76..f7c8a22a634c 100644
--- a/share/man/man4/uhid.4
+++ b/share/man/man4/uhid.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd Oct 31, 2020
.Dt UHID 4
.Os
diff --git a/share/man/man4/uhso.4 b/share/man/man4/uhso.4
index 37f7dc352a67..d88c925212eb 100644
--- a/share/man/man4/uhso.4
+++ b/share/man/man4/uhso.4
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 20, 2010
.Dt UHSO 4
.Os
diff --git a/share/man/man4/uipaq.4 b/share/man/man4/uipaq.4
index 26bf35bf2d7e..86f3da36f9dc 100644
--- a/share/man/man4/uipaq.4
+++ b/share/man/man4/uipaq.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UIPAQ 4
.Os
diff --git a/share/man/man4/ukbd.4 b/share/man/man4/ukbd.4
index f443f51ce8e1..14d6cca51e6f 100644
--- a/share/man/man4/ukbd.4
+++ b/share/man/man4/ukbd.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 24, 2018
.Dt UKBD 4
.Os
@@ -136,6 +134,15 @@ or
.D1 Cd "options KBD_DISABLE_KEYMAP_LOADING"
.Pp
Do not allow the user to change the keymap.
+.Pp
+.D1 Cd "options KBD_DELAY1=200"
+.Pp
+Set the keyboard initial key repeat delay.
+.Pp
+.D1 Cd "options KBD_DELAY2=15"
+.Pp
+Set the keyboard key repeat delay.
+.Pp
Note that these options also affect the AT keyboard driver,
.Xr atkbd 4 .
.Sh SYSCTL VARIABLES
diff --git a/share/man/man4/uled.4 b/share/man/man4/uled.4
index 6202737bd14a..99deb90bb0bd 100644
--- a/share/man/man4/uled.4
+++ b/share/man/man4/uled.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 31, 2017
.Dt ULED 4
.Os
diff --git a/share/man/man4/ulpt.4 b/share/man/man4/ulpt.4
index 894211bf6ff7..4dbe34945f38 100644
--- a/share/man/man4/ulpt.4
+++ b/share/man/man4/ulpt.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 22, 2006
.Dt ULPT 4
.Os
diff --git a/share/man/man4/umass.4 b/share/man/man4/umass.4
index 1a3ff2845be1..03e8b6ff6ef1 100644
--- a/share/man/man4/umass.4
+++ b/share/man/man4/umass.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 27, 2020
.Dt UMASS 4
.Os
diff --git a/share/man/man4/umcs.4 b/share/man/man4/umcs.4
index 5586e90a489f..0ed778066a6e 100644
--- a/share/man/man4/umcs.4
+++ b/share/man/man4/umcs.4
@@ -26,8 +26,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UMCS 4
.Os
diff --git a/share/man/man4/umct.4 b/share/man/man4/umct.4
index 35676c64cf40..53e9a4555dc9 100644
--- a/share/man/man4/umct.4
+++ b/share/man/man4/umct.4
@@ -23,8 +23,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UMCT 4
.Os
diff --git a/share/man/man4/umodem.4 b/share/man/man4/umodem.4
index e06da5afab0f..793f820f561f 100644
--- a/share/man/man4/umodem.4
+++ b/share/man/man4/umodem.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UMODEM 4
.Os
diff --git a/share/man/man4/umoscom.4 b/share/man/man4/umoscom.4
index f2b6aec225a7..faad33bf9c4f 100644
--- a/share/man/man4/umoscom.4
+++ b/share/man/man4/umoscom.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UMOSCOM 4
.Os
diff --git a/share/man/man4/ums.4 b/share/man/man4/ums.4
index b27c55cef738..4e5ead6b0503 100644
--- a/share/man/man4/ums.4
+++ b/share/man/man4/ums.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 24, 2018
.Dt UMS 4
.Os
diff --git a/share/man/man4/unix.4 b/share/man/man4/unix.4
index 3de5f875fd09..5ac9ccd5514f 100644
--- a/share/man/man4/unix.4
+++ b/share/man/man4/unix.4
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)unix.4 8.1 (Berkeley) 6/9/93
-.\" $FreeBSD$
-.\"
-.Dd June 24, 2022
+.Dd February 1, 2022
.Dt UNIX 4
.Os
.Sh NAME
@@ -335,14 +332,6 @@ The
and
.Dv LOCAL_CREDS_PERSISTENT
options are mutually exclusive.
-.It Dv LOCAL_CONNWAIT
-Used with
-.Dv SOCK_STREAM
-sockets, this option causes the
-.Xr connect 2
-function to block until
-.Xr accept 2
-has been called on the listening socket.
.It Dv LOCAL_PEERCRED
Requested via
.Xr getsockopt 2
diff --git a/share/man/man4/upgt.4 b/share/man/man4/upgt.4
index e0512e73b979..805d045e61dd 100644
--- a/share/man/man4/upgt.4
+++ b/share/man/man4/upgt.4
@@ -1,5 +1,4 @@
.\" $OpenBSD: upgt.4,v 1.6 2008/04/17 14:01:22 jmc Exp $
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2007 Marcus Glocker <mglocker@openbsd.org>
.\" Copyright (c) 2005-2007
diff --git a/share/man/man4/uplcom.4 b/share/man/man4/uplcom.4
index 85822d7d0dc6..49c6fb42e231 100644
--- a/share/man/man4/uplcom.4
+++ b/share/man/man4/uplcom.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 7, 2021
.Dt UPLCOM 4
.Os
diff --git a/share/man/man4/ural.4 b/share/man/man4/ural.4
index ceb0eee26ef4..141777e14168 100644
--- a/share/man/man4/ural.4
+++ b/share/man/man4/ural.4
@@ -13,8 +13,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 13, 2008
.Dt URAL 4
.Os
diff --git a/share/man/man4/ure.4 b/share/man/man4/ure.4
index cf483dca9d11..18b68ec9bc8a 100644
--- a/share/man/man4/ure.4
+++ b/share/man/man4/ure.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 31, 2016
.Dt URE 4
.Os
diff --git a/share/man/man4/urio.4 b/share/man/man4/urio.4
index 30048c14f16a..b7ad71e86b20 100644
--- a/share/man/man4/urio.4
+++ b/share/man/man4/urio.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 22, 2006
.Dt URIO 4
.Os
diff --git a/share/man/man4/urndis.4 b/share/man/man4/urndis.4
index e03d620c9698..88e312d6370e 100644
--- a/share/man/man4/urndis.4
+++ b/share/man/man4/urndis.4
@@ -27,8 +27,6 @@
.\"
.\" $OpenBSD: urndis.4,v 1.15 2013/07/16 16:05:49 schwarze Exp $
.\"
-.\" $FreeBSD$
-.\"
.Dd November 24, 2015
.Dt URNDIS 4
.Os
@@ -105,4 +103,4 @@ and
It was ported to
.Fx
by
-.An Hans Petter Selasky Aq Mt hps@FreeBSD.org .
+.An Hans Petter Selasky Aq Mt hselasky@FreeBSD.org .
diff --git a/share/man/man4/urtw.4 b/share/man/man4/urtw.4
index d5b3624d6813..7036aaa24df6 100644
--- a/share/man/man4/urtw.4
+++ b/share/man/man4/urtw.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 17, 2009
.Dt URTW 4
.Os
diff --git a/share/man/man4/usb.4 b/share/man/man4/usb.4
index 6b7fbfb8e0a1..40cb8675b185 100644
--- a/share/man/man4/usb.4
+++ b/share/man/man4/usb.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 7, 2020
.Dt USB 4
.Os
diff --git a/share/man/man4/usb_quirk.4 b/share/man/man4/usb_quirk.4
index 8751807f9dec..15f5a9718c8f 100644
--- a/share/man/man4/usb_quirk.4
+++ b/share/man/man4/usb_quirk.4
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 19, 2017
.Dt USB_QUIRK 4
.Os
@@ -78,6 +76,8 @@ does not identify properly
mouse sends an unknown leading byte
.It UQ_MS_REVZ
mouse has Z-axis reversed
+.It UQ_MS_VENDOR_BTN
+mouse has buttons in vendor usage page
.It UQ_NO_STRINGS
string descriptors are broken
.It UQ_POWER_CLAIM
@@ -98,6 +98,8 @@ select configuration index 4 by default
select configuration index 0 by default
.It UQ_ASSUME_CM_OVER_DATA
assume cm over data feature
+.It UQ_IGNORE_CDC_CM
+ignore cm descriptor
.It UQ_WMT_IGNORE
device should be ignored by wmt driver
.El
diff --git a/share/man/man4/usb_template.4 b/share/man/man4/usb_template.4
index 4a73389884d5..9e87ccb27b3a 100644
--- a/share/man/man4/usb_template.4
+++ b/share/man/man4/usb_template.4
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\"
.\" Copyright (c) 2008 Hans Petter Selasky. All rights reserved.
.\"
diff --git a/share/man/man4/usbhid.4 b/share/man/man4/usbhid.4
index 1b9e61ce1cad..c47afaff3534 100644
--- a/share/man/man4/usbhid.4
+++ b/share/man/man4/usbhid.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 12, 2021
.Dt USBHID 4
.Os
@@ -77,7 +75,7 @@ Default is 0.
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/usfs.4 b/share/man/man4/usfs.4
index 815839fce312..98465fc9a211 100644
--- a/share/man/man4/usfs.4
+++ b/share/man/man4/usfs.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 17, 2018
.Dt USFS 4
.Os
diff --git a/share/man/man4/uslcom.4 b/share/man/man4/uslcom.4
index 6465054f1208..3805cdb444d1 100644
--- a/share/man/man4/uslcom.4
+++ b/share/man/man4/uslcom.4
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 9, 2019
.Dt USLCOM 4
.Os
diff --git a/share/man/man4/uvisor.4 b/share/man/man4/uvisor.4
index 4412dd6bdc9d..21170d88d2b4 100644
--- a/share/man/man4/uvisor.4
+++ b/share/man/man4/uvisor.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UVISOR 4
.Os
diff --git a/share/man/man4/uvscom.4 b/share/man/man4/uvscom.4
index 1dc5b93c5350..cabad068b3af 100644
--- a/share/man/man4/uvscom.4
+++ b/share/man/man4/uvscom.4
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2017
.Dt UVSCOM 4
.Os
diff --git a/share/man/man4/vale.4 b/share/man/man4/vale.4
index f805b1b4031b..77e4433d2742 100644
--- a/share/man/man4/vale.4
+++ b/share/man/man4/vale.4
@@ -24,8 +24,6 @@
.\"
.\" This document is derived in part from the enet man page (enet.4)
.\" distributed with 4.3BSD Unix.
-.\"
-.\" $FreeBSD$
.\" $Id: $
.\"
.Dd March 6, 2022
diff --git a/share/man/man4/vga.4 b/share/man/man4/vga.4
index cf4179b72bfa..1cfe3414fe49 100644
--- a/share/man/man4/vga.4
+++ b/share/man/man4/vga.4
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 30, 1999
.Dt VGA 4
.Os
diff --git a/share/man/man4/vge.4 b/share/man/man4/vge.4
index 7363b95a46ea..9c0a89a1034d 100644
--- a/share/man/man4/vge.4
+++ b/share/man/man4/vge.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 29, 2011
.Dt VGE 4
.Os
diff --git a/share/man/man4/viapm.4 b/share/man/man4/viapm.4
index a155e91f8230..becb4f6ae4ed 100644
--- a/share/man/man4/viapm.4
+++ b/share/man/man4/viapm.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 20, 2002
.Dt VIAPM 4
.Os
diff --git a/share/man/man4/viawd.4 b/share/man/man4/viawd.4
index e579bf0887af..730c8afd68f2 100644
--- a/share/man/man4/viawd.4
+++ b/share/man/man4/viawd.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 7, 2011
.Dt VIAWD 4
.Os
diff --git a/share/man/man4/virtio.4 b/share/man/man4/virtio.4
index 75fec148a076..1e5ea0e4a7da 100644
--- a/share/man/man4/virtio.4
+++ b/share/man/man4/virtio.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 26, 2019
.Dt VIRTIO 4
.Os
@@ -85,6 +83,10 @@ A pseudo-device to allow the VM to release memory back to the hypervisor is
provided by the
.Xr virtio_balloon 4
device driver.
+.It Sy GPU
+Graphics support is provided by the
+.Xr virtio_gpu 4
+device driver.
.It Sy SCSI
An emulated SCSI HBA is provided by the
.Xr virtio_scsi 4
@@ -94,6 +96,7 @@ device driver.
.Xr virtio_balloon 4 ,
.Xr virtio_blk 4 ,
.Xr virtio_console 4 ,
+.Xr virtio_gpu 4 ,
.Xr virtio_random 4 ,
.Xr virtio_scsi 4 ,
.Xr vtnet 4
diff --git a/share/man/man4/virtio_balloon.4 b/share/man/man4/virtio_balloon.4
index b7ce0ed13cbb..1d680435313d 100644
--- a/share/man/man4/virtio_balloon.4
+++ b/share/man/man4/virtio_balloon.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 22, 2012
.Dt VIRTIO_BALLOON 4
.Os
diff --git a/share/man/man4/virtio_blk.4 b/share/man/man4/virtio_blk.4
index 579fb4a9745e..64be2164d52a 100644
--- a/share/man/man4/virtio_blk.4
+++ b/share/man/man4/virtio_blk.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 2, 2013
.Dt VIRTIO_BLK 4
.Os
diff --git a/share/man/man4/virtio_console.4 b/share/man/man4/virtio_console.4
index 542c8458c038..901c8bfc2564 100644
--- a/share/man/man4/virtio_console.4
+++ b/share/man/man4/virtio_console.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 22, 2014
.Dt VIRTIO_CONSOLE 4
.Os
diff --git a/share/man/man4/virtio_gpu.4 b/share/man/man4/virtio_gpu.4
new file mode 100644
index 000000000000..bb34ec419df6
--- /dev/null
+++ b/share/man/man4/virtio_gpu.4
@@ -0,0 +1,54 @@
+.\"-
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2014 Bryan Venteicher
+.\" All rights reserved.
+.\" Copyright (c) 2023 Arm Ltd
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 August 14, 2023
+.Dt VIRTIO_GPU 4
+.Os
+.Sh NAME
+.Nm virtio_gpu
+.Nd VirtIO GPU 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 virtio_gpu"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+device driver provides support for VirtIO gpu devices to create a
+.Xr vt 4
+console.
+.Sh SEE ALSO
+.Xr virtio 4
+.Xr vt 4
+.Sh HISTORY
+The
+.Nm
+driver first appeared in FreeBSD 14.0.
diff --git a/share/man/man4/virtio_random.4 b/share/man/man4/virtio_random.4
index d44b08d482f7..74852c2730c1 100644
--- a/share/man/man4/virtio_random.4
+++ b/share/man/man4/virtio_random.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 28, 2013
.Dt VIRTIO_RANDOM 4
.Os
diff --git a/share/man/man4/virtio_scsi.4 b/share/man/man4/virtio_scsi.4
index 3828eef7eec8..0e62cd8f7ac9 100644
--- a/share/man/man4/virtio_scsi.4
+++ b/share/man/man4/virtio_scsi.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 24, 2012
.Dt VIRTIO_SCSI 4
.Os
diff --git a/share/man/man4/vkbd.4 b/share/man/man4/vkbd.4
index c70d22620b5c..b6487ee576c9 100644
--- a/share/man/man4/vkbd.4
+++ b/share/man/man4/vkbd.4
@@ -1,5 +1,4 @@
.\" $Id: vkbd.4,v 1.4 2004/11/16 16:49:39 max Exp $
-.\" $FreeBSD$
.\"
.Dd August 12, 2004
.Dt VKBD 4
diff --git a/share/man/man4/vlan.4 b/share/man/man4/vlan.4
index da5467d8588e..775eb3235c07 100644
--- a/share/man/man4/vlan.4
+++ b/share/man/man4/vlan.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2020
.Dt VLAN 4
.Os
diff --git a/share/man/man4/vmci.4 b/share/man/man4/vmci.4
index a216787e982e..8feea98ab337 100644
--- a/share/man/man4/vmci.4
+++ b/share/man/man4/vmci.4
@@ -1,8 +1,6 @@
.\" Copyright (c) 2018 VMware, Inc.
.\"
.\" SPDX-License-Identifier: (BSD-2-Clause OR GPL-2.0)
-.\"
-.\" $FreeBSD$
.Dd February 10, 2018
.Dt VMCI 4
.Os
diff --git a/share/man/man4/vmd.4 b/share/man/man4/vmd.4
index 74419fd87ffe..2d6a06bc10e3 100644
--- a/share/man/man4/vmd.4
+++ b/share/man/man4/vmd.4
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 Alexander Motin <mav@FreeBSD.org>
.\" Copyright 2019 Cisco Systems, Inc.
@@ -25,9 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 31, 2021
+.Dd October 6, 2022
.Dt VMD 4
.Os
.Sh NAME
@@ -57,6 +55,11 @@ The following tunables are settable via
or
.Xr sysctl 8 :
.Bl -tag -width indent
+.It Va hw.vmd.bypass_msi
+By default all VMD devices remap children MSI/MSI-X interrupts into their
+own. It creates additional isolation, but also complicates things due to
+sharing, etc. Fortunately some VMD devices can bypass the remapping.
+Defaults to 1.
.It Va hw.vmd.max_msi
Limits number of Message Signaled Interrupt (MSI) vectors allowed to each
child device.
diff --git a/share/man/man4/vmm.4 b/share/man/man4/vmm.4
index 5f2ebcd8c9c0..dfd7ad26fb98 100644
--- a/share/man/man4/vmm.4
+++ b/share/man/man4/vmm.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 19, 2013
+.Dd March 6, 2024
.Dt VMM 4
.Os
.Sh NAME
@@ -72,6 +70,19 @@ See the
.Sx EXAMPLES
section below for sample usage.
.Pp
+Note that
+.Nm vmm
+must be given first the right of refusal to all
+.Xr pci 4
+devices it may need to claim.
+As a result, the
+.Nm vmm
+kernel module almost certainly needs to be loaded from
+.Xr loader.conf 5
+rather than by adding it to
+.Va kld_list in
+.Xr rc.conf 5 .
+.Pp
A large number of PCI device entries may require a string longer than the
128-character limit of
.Xr loader.conf 5
@@ -81,6 +92,16 @@ The
and
.Va pptdevs3
variables can be used for additional entries.
+.Sh LOADER TUNABLES
+Tunables can be set at the
+.Xr loader 8
+prompt before booting the kernel or stored in
+.Xr loader.conf 5 .
+.Bl -tag -width indent
+.It Va hw.vmm.maxcpu
+Maximum number of virtual CPUs.
+The default is the number of physical CPUs in the system.
+.El
.Sh EXAMPLES
Reserve three PCI devices for use by the hypervisor: bus 10 slot 0 function 0,
bus 6 slot 5 function 0, and bus 6 slot 5 function 1.
diff --git a/share/man/man4/vmx.4 b/share/man/man4/vmx.4
index b42eda327ef0..339c7d9047d7 100644
--- a/share/man/man4/vmx.4
+++ b/share/man/man4/vmx.4
@@ -15,8 +15,6 @@
.\"
.\" $OpenBSD: src/share/man/man4/vmx.4,v 1.1 2013/05/31 20:18:44 reyk Exp $
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2020
.Dt VMX 4
.Os
diff --git a/share/man/man4/vr.4 b/share/man/man4/vr.4
index da4ee5bcbc1c..c18133b57b0a 100644
--- a/share/man/man4/vr.4
+++ b/share/man/man4/vr.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 25, 2012
.Dt VR 4
.Os
diff --git a/share/man/man4/vt.4 b/share/man/man4/vt.4
index 65d8bc05f7a4..ed4da98df673 100644
--- a/share/man/man4/vt.4
+++ b/share/man/man4/vt.4
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 21, 2022
+.Dd May 8, 2023
.Dt "VT" 4
.Os
.Sh NAME
@@ -49,6 +47,7 @@ In
.Cd kern.vt.color.<colornum>.rgb="<colorspec>"
.Cd kern.vt.fb.default_mode="<X>x<Y>"
.Cd kern.vt.fb.modes.<connector>="<X>x<Y>"
+.Cd screen.font="<X>x<Y>"
.Pp
In
.Xr loader.conf 5 or
@@ -58,6 +57,7 @@ In
.Cd kern.vt.kbd_reboot=1
.Cd kern.vt.kbd_debug=1
.Cd kern.vt.kbd_panic=0
+.Cd kern.vt.enable_altgr=0
.Cd kern.vt.enable_bell=1
.Sh DESCRIPTION
The
@@ -258,6 +258,11 @@ It will contain a list of connectors and their associated tunables.
This is currently only supported by the
.Cm vt_fb
backend when it is paired with a KMS video driver.
+.It Va screen.font
+Set this value to the base name of the desired font file located in
+.Pa /boot/fonts .
+Fonts can be converted for use with
+.Xr vtfontcvt 8 .
.El
.Sh KEYBOARD SYSCTL TUNABLES
These settings control whether certain special key combinations are enabled or
@@ -274,6 +279,8 @@ and can also be changed at runtime with the
.Xr sysctl 8
command.
.Bl -tag -width indent
+.It Va kern.vt.enable_altgr
+Enable AltGr key (do not assume right Alt key as Alt).
.It Va kern.vt.kbd_halt
Enable halt keyboard combination.
.It Va kern.vt.kbd_poweroff
@@ -357,6 +364,14 @@ To set black and white colors of console palette
.Pp
.Dl kern.vt.color.0.rgb="10,10,10"
.Dl kern.vt.color.15.rgb="#f0f0f0"
+.Pp
+Load the 8x16 font in
+.Xr loader.conf 5
+from
+.Pa /boot/fonts/*.fnt[.gz]
+at boot:
+.Pp
+.Dl screen.font="8x16"
.Sh SEE ALSO
.Xr kbdcontrol 1 ,
.Xr login 1 ,
@@ -370,6 +385,7 @@ To set black and white colors of console palette
.Xr syscons 4 ,
.Xr ukbd 4 ,
.Xr kbdmap 5 ,
+.Xr loader.conf 5 ,
.Xr rc.conf 5 ,
.Xr ttys 5 ,
.Xr config 8 ,
diff --git a/share/man/man4/vte.4 b/share/man/man4/vte.4
index 23080a0e2789..293c2cbbc2cd 100644
--- a/share/man/man4/vte.4
+++ b/share/man/man4/vte.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 30, 2010
.Dt VTE 4
.Os
diff --git a/share/man/man4/vtnet.4 b/share/man/man4/vtnet.4
index 5779a682d166..e45a47ff6c87 100644
--- a/share/man/man4/vtnet.4
+++ b/share/man/man4/vtnet.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 22, 2012
.Dt VTNET 4
.Os
diff --git a/share/man/man4/vxlan.4 b/share/man/man4/vxlan.4
index 99f3411c02d2..5f2bd4695101 100644
--- a/share/man/man4/vxlan.4
+++ b/share/man/man4/vxlan.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 30, 2021
.Dt VXLAN 4
.Os
diff --git a/share/man/man4/watchdog.4 b/share/man/man4/watchdog.4
index b61172335930..2cd66bb8ba85 100644
--- a/share/man/man4/watchdog.4
+++ b/share/man/man4/watchdog.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 2, 2018
.Dt WATCHDOG 4
.Os
@@ -110,7 +108,7 @@ Use an internal software watchdog instead of hardware.
There is also an external software watchdog, which is used by default
if no hardware watchdog was attached.
.It Dv WDIOC_SETSOFTTIMEOUTACT Fa int
-Set the action whan a soft timeout occurs.
+Set the action when a soft timeout occurs.
.El
.Pp
The actions that may be specified for the pre-timeout or the internal software
diff --git a/share/man/man4/wbwd.4 b/share/man/man4/wbwd.4
index a148ab4227cf..30800b4a1495 100644
--- a/share/man/man4/wbwd.4
+++ b/share/man/man4/wbwd.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 16, 2019
.Dt WBWD 4
.Os
diff --git a/share/man/man4/wdatwd.4 b/share/man/man4/wdatwd.4
new file mode 100644
index 000000000000..48cd5d183505
--- /dev/null
+++ b/share/man/man4/wdatwd.4
@@ -0,0 +1,91 @@
+.\"-
+.\" Copyright (c) 2022 Tetsuya Uemura <t_uemura@macome.co.jp>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 18, 2022
+.Dt WDATWD 4
+.Os
+.Sh NAME
+.Nm wdatwd
+.Nd device driver for the ACPI WDAT based watchdog interrupt timer
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following line in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device wdatwd"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+wdatwd_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides
+.Xr watchdog 4
+support for the watchdog interrupt timer in ACPI WDAT (Watchdog Action Table).
+.Pp
+Since WDAT itself is an abstraction for the real hardware such as ICH WDT, it
+must be noted that only one driver can be used at a time, either the real
+hardware specific driver or this driver.
+.Sh SYSCTL VARIABLES
+The following read-only
+.Xr sysctl 8
+variables are available:
+.Bl -tag -width indent
+.It Va dev.wdatwd.%d.running
+The status of the watchdog timer. 0 if not running, or 1 if running.
+.It Va dev.wdatwd.%d.timeout
+The current value of the watchdog timeout in millisecond.
+This can be 0 on some systems, and the zero value means that the default
+timeout is used.
+.It Va dev.wdatwd.%d.timeout_configurable
+Whether the timeout is configurable or not.
+It is 0 if configurable or any positive value if not.
+.It Va dev.wdatwd.%d.timeout_default
+The default value of the watchdog timeout in millisecond if any.
+.El
+.Sh SEE ALSO
+.Xr ichwd 4 ,
+.Xr watchdog 4 ,
+.Xr watchdog 8 ,
+.Xr watchdogd 8 ,
+.Xr watchdog 9
+.Rs
+.%T Hardware Watchdog Timers Design Specification
+.%R Requirements for Hardware Watchdog Timers Supported by Microsoft(R) Windows Vista(R) and Microsoft Windows Server(R) 2008 Operating Systems
+.%A Microsoft Corporation
+.%U http://msdn.microsoft.com/en-us/windows/hardware/gg463320.aspx
+.%D 2006
+.Re
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+driver was written by
+.An Tetsuya Uemura Aq Mt t_uemura@macome.co.jp
+of MACOME, Corporation.
diff --git a/share/man/man4/wg.4 b/share/man/man4/wg.4
new file mode 100644
index 000000000000..2f758c2a8e11
--- /dev/null
+++ b/share/man/man4/wg.4
@@ -0,0 +1,231 @@
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2020 Gordon Bergling <gbe@FreeBSD.org>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 June 12, 2023
+.Dt WG 4
+.Os
+.Sh NAME
+.Nm wg
+.Nd "WireGuard protocol driver"
+.Sh SYNOPSIS
+To load the driver as a module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+if_wg_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides Virtual Private Network (VPN) interfaces for the secure
+exchange of layer 3 traffic with other WireGuard peers using the WireGuard
+protocol.
+.Pp
+A
+.Nm
+interface recognizes one or more peers, establishes a secure tunnel with
+each on demand, and tracks each peer's UDP endpoint for exchanging encrypted
+traffic with.
+.Pp
+The interfaces can be created at runtime using the
+.Ic ifconfig Cm wg Ns Ar N Cm create
+command.
+The interface itself can be configured with
+.Xr wg 8 .
+.Pp
+The following glossary provides a brief overview of WireGuard
+terminology:
+.Bl -tag -width indent -offset 3n
+.It Peer
+Peers exchange IPv4 or IPv6 traffic over secure tunnels.
+Each
+.Nm
+interface may be configured to recognize one or more peers.
+.It Key
+Each peer uses its private key and corresponding public key to
+identify itself to others.
+A peer configures a
+.Nm
+interface with its own private key and with the public keys of its peers.
+.It Pre-shared key
+In addition to the public keys, each peer pair may be configured with a
+unique pre-shared symmetric key.
+This is used in their handshake to guard against future compromise of the
+peers' encrypted tunnel if an attack on their
+Diffie-Hellman exchange becomes feasible.
+It is optional, but recommended.
+.It Allowed IP addresses
+A single
+.Nm
+interface may maintain concurrent tunnels connecting diverse networks.
+The interface therefore implements rudimentary routing and reverse-path
+filtering functions for its tunneled traffic.
+These functions reference a set of allowed IP address ranges configured
+against each peer.
+.Pp
+The interface will route outbound tunneled traffic to the peer configured
+with the most specific matching allowed IP address range, or drop it
+if no such match exists.
+.Pp
+The interface will accept tunneled traffic only from the peer
+configured with the most specific matching allowed IP address range
+for the incoming traffic, or drop it if no such match exists.
+That is, tunneled traffic routed to a given peer cannot return through
+another peer of the same
+.Nm
+interface.
+This ensures that peers cannot spoof one another's traffic.
+.It Handshake
+Two peers handshake to mutually authenticate each other and to
+establish a shared series of secret ephemeral encryption keys.
+Either peer may initiate a handshake.
+Handshakes occur only when there is traffic to send, and recur every
+two minutes during transfers.
+.It Connectionless
+Due to the handshake behavior, there is no connected or disconnected
+state.
+.El
+.Ss Keys
+Private keys for WireGuard can be generated from any sufficiently
+secure random source.
+The Curve25519 keys and the pre-shared keys are both 32 bytes
+long and are commonly encoded in base64 for ease of use.
+.Pp
+Keys can be generated with
+.Xr wg 8
+as follows:
+.Pp
+.Dl $ wg genkey
+.Pp
+Although a valid Curve25519 key must have 5 bits set to
+specific values, this is done by the interface and so it
+will accept any random 32-byte base64 string.
+.Sh NETMAP
+.Xr netmap 4
+applications may open a WireGuard interface in emulated mode.
+The netmap application will receive decrypted, unencapsulated packets prepended
+by a dummy Ethernet header.
+The Ethertype field will be one of
+.Dv ETHERTYPE_IP
+or
+.Dv ETHERTYPE_IPV6
+depending on the address family of the packet.
+Packets transmitted by the application should similarly begin with a dummy
+Ethernet header; this header will be stripped before the packet is encrypted
+and tunneled.
+.Sh EXAMPLES
+Create a
+.Nm
+interface and set random private key.
+.Bd -literal -offset indent
+# ifconfig wg0 create
+# wg genkey | wg set wg0 listen-port 54321 private-key /dev/stdin
+.Ed
+.Pp
+Retrieve the associated public key from a
+.Nm
+interface.
+.Bd -literal -offset indent
+$ wg show wg0 public-key
+.Ed
+.Pp
+Connect to a specific endpoint using its public-key and set the allowed IP address
+.Bd -literal -offset indent
+# wg set wg0 peer '7lWtsDdqaGB3EY9WNxRN3hVaHMtu1zXw71+bOjNOVUw=' endpoint 10.0.1.100:54321 allowed-ips 192.168.2.100/32
+.Ed
+.Pp
+Remove a peer
+.Bd -literal -offset indent
+# wg set wg0 peer '7lWtsDdqaGB3EY9WNxRN3hVaHMtu1zXw71+bOjNOVUw=' remove
+.Ed
+.Sh DIAGNOSTICS
+The
+.Nm
+interface supports runtime debugging, which can be enabled with:
+.Pp
+.D1 Ic ifconfig Cm wg Ns Ar N Cm debug
+.Pp
+Some common error messages include:
+.Bl -diag
+.It "Handshake for peer X did not complete after 5 seconds, retrying"
+Peer X did not reply to our initiation packet, for example because:
+.Bl -bullet
+.It
+The peer does not have the local interface configured as a peer.
+Peers must be able to mutually authenticate each other.
+.It
+The peer endpoint IP address is incorrectly configured.
+.It
+There are firewall rules preventing communication between hosts.
+.El
+.It "Invalid handshake initiation"
+The incoming handshake packet could not be processed.
+This is likely due to the local interface not containing
+the correct public key for the peer.
+.It "Invalid initiation MAC"
+The incoming handshake initiation packet had an invalid MAC.
+This is likely because the initiation sender has the wrong public key
+for the handshake receiver.
+.It "Packet has unallowed src IP from peer X"
+After decryption, an incoming data packet has a source IP address that
+is not assigned to the allowed IPs of Peer X.
+.El
+.Sh SEE ALSO
+.Xr inet 4 ,
+.Xr ip 4 ,
+.Xr ipsec 4 ,
+.Xr netintro 4 ,
+.Xr netmap 4 ,
+.Xr ovpn 4 ,
+.Xr ipf 5 ,
+.Xr pf.conf 5 ,
+.Xr ifconfig 8 ,
+.Xr ipfw 8 ,
+.Xr wg 8
+.Rs
+.%T WireGuard whitepaper
+.%U https://www.wireguard.com/papers/wireguard.pdf
+.Re
+.Sh HISTORY
+The
+.Nm
+device driver first appeared in
+.Fx 13.2 .
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+device driver was written by
+.An Jason A. Donenfeld Aq Mt Jason@zx2c4.com ,
+.An Matt Dunwoodie Aq Mt ncon@nconroy.net ,
+.An Kyle Evans Aq Mt kevans@FreeBSD.org ,
+and
+.An Matt Macy Aq Mt mmacy@FreeBSD.org .
+.Pp
+This manual page was written by
+.An Gordon Bergling Aq Mt gbe@FreeBSD.org
+and is based on the
+.Ox
+manual page written by
+.An David Gwynne Aq Mt dlg@openbsd.org .
diff --git a/share/man/man4/witness.4 b/share/man/man4/witness.4
index 5deb9dcfa94a..ab23eb49d9fe 100644
--- a/share/man/man4/witness.4
+++ b/share/man/man4/witness.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 18, 2015
.Dt WITNESS 4
.Os
diff --git a/share/man/man4/wlan.4 b/share/man/man4/wlan.4
index d7a186a34efd..4cd1bfbdc9d5 100644
--- a/share/man/man4/wlan.4
+++ b/share/man/man4/wlan.4
@@ -23,14 +23,12 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 26, 2021
+.Dd May 5, 2023
.Dt WLAN 4
.Os
.Sh NAME
.Nm wlan
-.Nd generic 802.11 link-layer support
+.Nd generic WiFi 802.11 link-layer support
.Sh SYNOPSIS
.Cd "device wlan"
.Sh DESCRIPTION
@@ -168,12 +166,12 @@ not ratified and subject to change.
Be aware that this specification is incompatible with earlier drafts.
Stations implementing earlier drafts (e.g., Linux) may be incompatible.
.Sh SEE ALSO
-.Xr an 4 ,
.Xr ath 4 ,
.Xr bwi 4 ,
.Xr bwn 4 ,
.Xr ipw 4 ,
.Xr iwi 4 ,
+.Xr iwlwifi 4 ,
.Xr iwm 4 ,
.Xr iwn 4 ,
.Xr malo 4 ,
@@ -182,6 +180,7 @@ Stations implementing earlier drafts (e.g., Linux) may be incompatible.
.Xr otus 4 ,
.Xr ral 4 ,
.Xr rsu 4 ,
+.Xr rtw88 4 ,
.Xr rtwn 4 ,
.Xr rum 4 ,
.Xr run 4 ,
diff --git a/share/man/man4/wlan_acl.4 b/share/man/man4/wlan_acl.4
index 25314bd6a38f..0cd5c16a6f94 100644
--- a/share/man/man4/wlan_acl.4
+++ b/share/man/man4/wlan_acl.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 7, 2004
.Dt WLAN_ACL 4
.Os
diff --git a/share/man/man4/wlan_amrr.4 b/share/man/man4/wlan_amrr.4
index 92477677ffdb..4b7830b008de 100644
--- a/share/man/man4/wlan_amrr.4
+++ b/share/man/man4/wlan_amrr.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 13, 2008
.Dt WLAN_AMRR 4
.Os
diff --git a/share/man/man4/wlan_ccmp.4 b/share/man/man4/wlan_ccmp.4
index ccf7a2720635..f0efa86d2fdb 100644
--- a/share/man/man4/wlan_ccmp.4
+++ b/share/man/man4/wlan_ccmp.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 7, 2004
.Dt WLAN_CCMP 4
.Os
diff --git a/share/man/man4/wlan_tkip.4 b/share/man/man4/wlan_tkip.4
index 2a2a254fd329..2e812ceffe9a 100644
--- a/share/man/man4/wlan_tkip.4
+++ b/share/man/man4/wlan_tkip.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 7, 2004
.Dt WLAN_TKIP 4
.Os
diff --git a/share/man/man4/wlan_wep.4 b/share/man/man4/wlan_wep.4
index 3bf1040d34b5..4e5887bbc35e 100644
--- a/share/man/man4/wlan_wep.4
+++ b/share/man/man4/wlan_wep.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 7, 2004
.Dt WLAN_WEP 4
.Os
diff --git a/share/man/man4/wlan_xauth.4 b/share/man/man4/wlan_xauth.4
index b1fdfc5d4fd0..9c89648d65e4 100644
--- a/share/man/man4/wlan_xauth.4
+++ b/share/man/man4/wlan_xauth.4
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 7, 2004
.Dt WLAN_XAUTH 4
.Os
diff --git a/share/man/man4/wmt.4 b/share/man/man4/wmt.4
index e09fc5286fe2..b9320371119f 100644
--- a/share/man/man4/wmt.4
+++ b/share/man/man4/wmt.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 19, 2017
.Dt WMT 4
.Os
@@ -53,7 +51,7 @@ driver provides support for the MS Windows 7/8/10 - compatible USB HID
multi-touch devices found in many laptops.
.Pp
To get multi-touch device working in
-.Xr X 7 ,
+.Xr X 7 Pq Pa ports/x11/xorg-docs ,
install
.Pa ports/x11-drivers/xf86-input-evdev .
.Sh FILES
diff --git a/share/man/man4/wpi.4 b/share/man/man4/wpi.4
index 7a5143f572ff..8fe52cdc58eb 100644
--- a/share/man/man4/wpi.4
+++ b/share/man/man4/wpi.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 31, 2016
.Dt WPI 4
.Os
diff --git a/share/man/man4/wsp.4 b/share/man/man4/wsp.4
index 847c79c71f29..39660a53ee9a 100644
--- a/share/man/man4/wsp.4
+++ b/share/man/man4/wsp.4
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 9, 2021
.Dt WSP 4
.Os
diff --git a/share/man/man4/xb360gp.4 b/share/man/man4/xb360gp.4
index b19334cc3a0b..4e8d4b65fcfd 100644
--- a/share/man/man4/xb360gp.4
+++ b/share/man/man4/xb360gp.4
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 16, 2020
.Dt XB360GP 4
.Os
@@ -86,13 +84,13 @@ input event device node.
The
.Nm
driver first appeared in
-.Fx 13.0.
+.Fx 13.0 .
.Sh AUTHORS
.An -nosplit
The
.Nm
driver was written by
-.An Greg V Aq Mt greg@unrelenting.technology .
+.An Val Packett Aq Mt val@packett.cool .
.Pp
This manual page was written by
.An Vladimir Kondratyev Aq Mt wulf@FreeBSD.org .
diff --git a/share/man/man4/xdma.4 b/share/man/man4/xdma.4
index f45efda8d12a..674da75d187b 100644
--- a/share/man/man4/xdma.4
+++ b/share/man/man4/xdma.4
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 12, 2016
.Dt XDMA 4
.Os
diff --git a/share/man/man4/xen.4 b/share/man/man4/xen.4
index c2b1f5be2cbf..15312866dae6 100644
--- a/share/man/man4/xen.4
+++ b/share/man/man4/xen.4
@@ -26,21 +26,19 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 30, 2015
+.Dd January 8, 2024
.Dt XEN 4
.Os
.Sh NAME
.Nm xen
-.Nd Xen Hypervisor Guest (DomU) Support
+.Nd Xen Hypervisor Support
.Sh SYNOPSIS
-To compile hardware-assisted virtualization (HVM) Xen guest support with
-para-virtualized drivers into an amd64 or i386 kernel,
-place the following lines in your kernel configuration file:
-.Bd -ragged -offset indent
-.Cd "options XENHVM"
-.Cd "device xenpci"
+FreeBSD supports running both as a Xen guest and host on amd64 hardware.
+Guest support is limited to HVM and PVH modes, while host support is limited to
+PVH mode only.
+.Pp
+Xen support is built by default in the i386 and amd64 GENERIC kernels; note
+however that host mode is only available on amd64.
.Ed
.Sh DESCRIPTION
The Xen Hypervisor allows multiple virtual machines to be run on a single
@@ -54,20 +52,18 @@ to access resources such as virtual network interfaces and disk devices.
.Pp
With later instruction set extensions from AMD and Intel to support fully
virtualizable instructions, unmodified virtual memory systems can also be
-supported; this is referred to as hardware-assisted virtualization (HVM).
+supported; this is referred to as hardware-assisted virtualization (HVM and PVH).
HVM configurations may either rely on transparently emulated hardware
peripherals, or para-virtualized drivers, which are aware of virtualization,
and hence able to optimize certain behaviors to improve performance or
semantics.
+PVH configurations rely on para-virtualized drivers exclusively for IO.
.Pp
.Fx
-supports hardware-assisted virtualization (HVM) on both i386 and amd64
-kernels.
-.Pp
Para-virtualized device drivers are required in order to support certain
functionality, such as processing management requests, returning idle
physical memory pages to the hypervisor, etc.
-.Ss Xen DomU device drivers
+.Ss Xen device drivers
These para-virtualized drivers are supported:
.Bl -hang -offset indent -width blkfront
.It Nm balloon
@@ -89,6 +85,10 @@ suspend, crash, and halt requests.
Expose Xen events via the
.Pa /dev/xen/evtchn
special device.
+.It Nm gntdev
+Allow access to the grant table interface via the
+.Pa /dev/xen/gntdev
+special device.
.It Nm netback
Export local network interfaces to other Xen domains where they can be
imported via
@@ -96,35 +96,30 @@ imported via
.It Nm netfront
Import network interfaces from other Xen domains as local network interfaces,
which may be used for IPv4, IPv6, etc.
-.It Nm pcifront
-Allow physical PCI devices to be passed through into a PV domain.
+.It Nm privcmd
+Allow issuing hypercalls via the
+.Pa /dev/xen/privcmd
+special device.
+.It Nm timer
+Implementation of a one-shot high resolution per-CPU timer using the hypercall
+interface.
+.It Nm acpi cpu
+When running as a host forwards power management related information from ACPI
+to the hypervisor for better performance management.
.It Nm xenpci
Represents the Xen PCI device, an emulated PCI device that is exposed to
HVM domains.
This device allows detection of the Xen hypervisor, and provides interrupt
and shared memory services required to interact with the hypervisor.
+.It Nm xenstore
+Information storage space shared between domains.
.El
-.Ss Performance considerations
-In general, PV drivers will perform better than emulated hardware, and are
-the recommended configuration for HVM installations.
-.Pp
-Using a hypervisor introduces a second layer of scheduling that may limit the
-effectiveness of certain
-.Fx
-scheduling optimisations.
-Among these is adaptive locking, which is no longer able to determine whether
-a thread holding a lock is in execution.
-It is recommended that adaptive locking be disabled when using Xen:
-.Bd -unfilled -offset indent
-.Cd "options NO_ADAPTIVE_MUTEXES"
-.Cd "options NO_ADAPTIVE_RWLOCKS"
-.Cd "options NO_ADAPTIVE_SX"
-.Ed
.Sh HISTORY
Support for
.Nm
first appeared in
.Fx 8.1 .
+Support for host mode was added in 11.0 .
.Sh AUTHORS
.An -nosplit
.Fx
@@ -135,15 +130,10 @@ and
Further refinements were made by
.An Justin Gibbs Aq Mt gibbs@FreeBSD.org ,
.An Adrian Chadd Aq Mt adrian@FreeBSD.org ,
+.An Colin Percival Aq Mt cperciva@FreeBSD.org ,
and
-.An Colin Percival Aq Mt cperciva@FreeBSD.org .
+.An Roger Pau Monné Aq Mt royger@FreeBSD.org .
This manual page was written by
-.An Robert Watson Aq Mt rwatson@FreeBSD.org .
-.Sh BUGS
-.Fx
-is only able to run as a Xen guest (DomU) and not as a Xen host (Dom0).
-.Pp
-As of this release, Xen PV DomU support is not heavily tested; instability
-has been reported during VM migration of PV kernels.
-.Pp
-Certain PV driver features, such as the balloon driver, are under-exercised.
+.An Robert Watson Aq Mt rwatson@FreeBSD.org ,
+and
+.An Roger Pau Monné Aq Mt royger@FreeBSD.org .
diff --git a/share/man/man4/xhci.4 b/share/man/man4/xhci.4
index d475c5e502fc..1f9aae5c56a0 100644
--- a/share/man/man4/xhci.4
+++ b/share/man/man4/xhci.4
@@ -1,5 +1,5 @@
.\"
-.\" Copyright (c) 2011 Hans Petter Selasky. All rights reserved.
+.\" Copyright (c) 2011-2022 Hans Petter Selasky. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -22,15 +22,14 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 24, 2018
+.Dd October 21, 2022
.Dt XHCI 4
.Os
.Sh NAME
.Nm xhci
.Nd USB eXtensible Host Controller driver
.Sh SYNOPSIS
+.Cd "options USB_DEBUG"
.Cd "device xhci"
.Sh DESCRIPTION
The
@@ -48,7 +47,8 @@ The
.Tn XHCI
controller supports
.Tn USB
-connection speeds up to 5.0Gbps when using a USB 3.0 compliant device.
+connection speeds from 5.0Gbps and above when using USB 3.x
+compliant devices.
.Sh HARDWARE
The
.Nm
@@ -64,14 +64,37 @@ variables and
tunables:
.Bl -tag -width indent
.It Va hw.usb.xhci.debug
-Debug output level, where 0 is debugging disabled and larger values increase
-debug message verbosity.
-Default is 0.
+Set debug output level, where 0 is debugging disabled and larger
+values increase debug message verbosity.
+The default value is 0.
+.It Va hw.usb.xhci.dcepquirk
+Set to enable quirk for deconfiguration of endpoints.
+The default value is 0.
+.It Va hw.usb.xhci.ctlquirk
+Set to submit full USB control request as one job, up to 64kBytes.
+Else the USB control request will be split into multiple smaller
+requests.
+The default value is 1.
+.It Va hw.usb.xhci.streams
+Set to enable USB streams support.
+The default value is 0.
+.It Va hw.usb.xhci.route
+Set bitmap for switching EHCI ports to the XHCI controller.
+The default value is 0.
+.It Va hw.usb.xhci.polling
+Set to use a timer to poll the interrupt handler.
+The default value is 0.
+.It Va hw.usb.xhci.dma32
+Set to only use 32-bit DMA for the XHCI controller.
+The default value is 0.
+.It Va hw.usb.xhci.ctlstep
+Set to enable control endpoint status state stepping.
+The default value is 0.
.El
.Sh SEE ALSO
.Xr ehci 4 ,
.Xr ohci 4 ,
-.Xr uhci 4 ,
+.Xr uhci 4 and
.Xr usb 4
.Sh HISTORY
The
diff --git a/share/man/man4/xl.4 b/share/man/man4/xl.4
index 81cf711a446c..309434154f4e 100644
--- a/share/man/man4/xl.4
+++ b/share/man/man4/xl.4
@@ -28,8 +28,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 23, 2008
.Dt XL 4
.Os
diff --git a/share/man/man4/xnb.4 b/share/man/man4/xnb.4
index a23547d68ef0..31eaed8587f9 100644
--- a/share/man/man4/xnb.4
+++ b/share/man/man4/xnb.4
@@ -28,8 +28,6 @@
.\"
.\" Authors: Alan Somers (Spectra Logic Corporation)
.\"
-.\" $FreeBSD$
-.\"
.Dd June 6, 2014
.Dt XNB 4
.Os
diff --git a/share/man/man4/xpt.4 b/share/man/man4/xpt.4
index c15ca4b55c4c..8faa40cfd561 100644
--- a/share/man/man4/xpt.4
+++ b/share/man/man4/xpt.4
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 10, 1998
.Dt XPT 4
.Os
diff --git a/share/man/man4/zero.4 b/share/man/man4/zero.4
index c2ba4bd4b54b..f1cd52d455d1 100644
--- a/share/man/man4/zero.4
+++ b/share/man/man4/zero.4
@@ -29,8 +29,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 7, 1996
.Dt ZERO 4
.Os
diff --git a/share/man/man4/zyd.4 b/share/man/man4/zyd.4
index 178adfb3a6e1..1c73c0563e05 100644
--- a/share/man/man4/zyd.4
+++ b/share/man/man4/zyd.4
@@ -1,6 +1,5 @@
.\" $OpenBSD: zyd.4,v 1.22 2007/05/24 02:49:57 cnst Exp $
.\" $NetBSD: zyd.4,v 1.1 2007/06/09 11:20:55 kiyohara Exp $
-.\" $FreeBSD$
.\"
.\" Copyright (c) 1997, 1998, 1999
.\" Bill Paul <wpaul@ctr.columbia.edu>. All rights reserved.
diff --git a/share/man/man5/Makefile b/share/man/man5/Makefile
index 9be4c8dc46b0..d9129307bea2 100644
--- a/share/man/man5/Makefile
+++ b/share/man/man5/Makefile
@@ -1,5 +1,3 @@
-# @(#)Makefile 8.1 (Berkeley) 6/5/93
-# $FreeBSD$
.include <src.opts.mk>
@@ -32,6 +30,7 @@ MAN= acct.5 \
hosts.lpd.5 \
intro.5 \
libmap.conf.5 \
+ lindebugfs.5 \
link.5 \
linprocfs.5 \
linsysfs.5 \
@@ -52,7 +51,6 @@ MAN= acct.5 \
periodic.conf.5 \
phones.5 \
portindex.5 \
- portsnap.conf.5 \
procfs.5 \
protocols.5 \
quota.user.5 \
@@ -69,6 +67,7 @@ MAN= acct.5 \
style.Makefile.5 \
style.mdoc.5 \
sysctl.conf.5 \
+ tarfs.5 \
tmpfs.5 \
unionfs.5
@@ -101,7 +100,7 @@ MAN+= freebsd-update.conf.5
.endif
.if ${MK_HESIOD} != "no"
-MAN+= hesiod.conf.5
+MAN+= hesiod.conf.5
.endif
.if ${MK_PF} != "no"
diff --git a/share/man/man5/Makefile.depend b/share/man/man5/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man5/Makefile.depend
+++ b/share/man/man5/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man5/a.out.5 b/share/man/man5/a.out.5
index aa4c7da96929..ddbb41e150e4 100644
--- a/share/man/man5/a.out.5
+++ b/share/man/man5/a.out.5
@@ -28,9 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)a.out.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd June 10, 2010
.Dt A.OUT 5
.Os
@@ -386,7 +383,7 @@ The
.Dv N_STAB
mask selects bits of interest to symbolic debuggers
such as
-.Xr gdb 1 ;
+.Xr gdb 1 Pq Pa ports/devel/gdb ;
the values are described in
.Xr stab 5 .
.It Fa n_other
@@ -429,7 +426,7 @@ so its minimum value (or the offset of the first string)
is always 4 on 32-bit machines.
.Sh SEE ALSO
.Xr as 1 ,
-.Xr gdb 1 ,
+.Xr gdb 1 Pq Pa ports/devel/gdb ,
.Xr ld 1 ,
.Xr brk 2 ,
.Xr execve 2 ,
diff --git a/share/man/man5/acct.5 b/share/man/man5/acct.5
index 549eef2c70bb..217de8408de3 100644
--- a/share/man/man5/acct.5
+++ b/share/man/man5/acct.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)acct.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd February 13, 2017
.Dt ACCT 5
.Os
diff --git a/share/man/man5/ar.5 b/share/man/man5/ar.5
index ca9f96d9c107..e26f385fe815 100644
--- a/share/man/man5/ar.5
+++ b/share/man/man5/ar.5
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 28, 2010
.Dt AR 5
.Os
diff --git a/share/man/man5/autofs.5 b/share/man/man5/autofs.5
index 8ab302e339b3..e82df1929877 100644
--- a/share/man/man5/autofs.5
+++ b/share/man/man5/autofs.5
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 2, 2017
.Dt AUTOFS 5
.Os
diff --git a/share/man/man5/bluetooth.device.conf.5 b/share/man/man5/bluetooth.device.conf.5
index f2f5bcdc8685..871ffe99636c 100644
--- a/share/man/man5/bluetooth.device.conf.5
+++ b/share/man/man5/bluetooth.device.conf.5
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 29, 2021
.Dt BLUETOOTH.DEVICE.CONF 5
.Os
diff --git a/share/man/man5/bluetooth.hosts.5 b/share/man/man5/bluetooth.hosts.5
index 3afa145d055e..7f8ef2b6cc19 100644
--- a/share/man/man5/bluetooth.hosts.5
+++ b/share/man/man5/bluetooth.hosts.5
@@ -23,7 +23,6 @@
.\" SUCH DAMAGE.
.\"
.\" $Id: bluetooth.hosts.5,v 1.5 2003/05/20 22:52:39 max Exp $
-.\" $FreeBSD$
.\"
.Dd May 8, 2003
.Dt BLUETOOTH.HOSTS 5
diff --git a/share/man/man5/bluetooth.protocols.5 b/share/man/man5/bluetooth.protocols.5
index 2968fa39991c..c2c6d57cfdb4 100644
--- a/share/man/man5/bluetooth.protocols.5
+++ b/share/man/man5/bluetooth.protocols.5
@@ -23,7 +23,6 @@
.\" SUCH DAMAGE.
.\"
.\" $Id: bluetooth.protocols.5,v 1.1 2003/05/20 22:52:39 max Exp $
-.\" $FreeBSD$
.\"
.Dd May 8, 2003
.Dt BLUETOOTH.PROTOCOLS 5
diff --git a/share/man/man5/boot.config.5 b/share/man/man5/boot.config.5
index 53835d5329eb..0b6d4c7b34e9 100644
--- a/share/man/man5/boot.config.5
+++ b/share/man/man5/boot.config.5
@@ -21,8 +21,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd October 12, 2020
.Dt BOOT.CONFIG 5
.Os
diff --git a/share/man/man5/cd9660.5 b/share/man/man5/cd9660.5
index 54f26738bc4f..224816e16c57 100644
--- a/share/man/man5/cd9660.5
+++ b/share/man/man5/cd9660.5
@@ -23,9 +23,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 8, 2022
+.Dd April 25, 2023
.Dt CD9660 5
.Os
.Sh NAME
@@ -69,7 +67,7 @@ volume located on
The
.Nm
driver first appeared in
-.Fx 4.4 Lite
+.Bx 4.4 Lite .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man5/core.5 b/share/man/man5/core.5
index 0af1b2b7e8bf..8efc8c970014 100644
--- a/share/man/man5/core.5
+++ b/share/man/man5/core.5
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)core.5 8.3 (Berkeley) 12/11/93
-.\" $FreeBSD$
-.\"
-.Dd October 5, 2021
+.Dd November 12, 2023
.Dt CORE 5
.Os
.Sh NAME
@@ -170,16 +167,17 @@ Packing is disabled with
.Dl sysctl kern.coredump_pack_vmmapinfo=0 .
.Sh EXAMPLES
In order to store all core images in per-user private areas under
-.Pa /var/coredumps ,
+.Pa /var/coredumps
+(assuming the appropriate subdirectories exist and are writable by users),
the following
.Xr sysctl 8
command can be used:
.Pp
.Dl sysctl kern.corefile=/var/coredumps/\&%U/\&%N.core
.Sh SEE ALSO
-.Xr gdb 1 ,
+.Xr gdb 1 Pq Pa ports/devel/gdb ,
.Xr gzip 1 ,
-.Xr kgdb 1 ,
+.Xr kgdb 1 Pq Pa ports/devel/gdb ,
.Xr setrlimit 2 ,
.Xr sigaction 2 ,
.Xr sysctl 8
diff --git a/share/man/man5/devfs.5 b/share/man/man5/devfs.5
index 193cc0b4445f..0f914f671bf8 100644
--- a/share/man/man5/devfs.5
+++ b/share/man/man5/devfs.5
@@ -32,8 +32,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 30, 2022
.Dt DEVFS 5
.Os
diff --git a/share/man/man5/devfs.conf.5 b/share/man/man5/devfs.conf.5
index b41cd406fe35..e95c7b578bf5 100644
--- a/share/man/man5/devfs.conf.5
+++ b/share/man/man5/devfs.conf.5
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 25, 2019
.Dt DEVFS.CONF 5
.Os
diff --git a/share/man/man5/devfs.rules.5 b/share/man/man5/devfs.rules.5
index 07e2963911d0..368a7696b5cd 100644
--- a/share/man/man5/devfs.rules.5
+++ b/share/man/man5/devfs.rules.5
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2020
.Dt DEVFS.RULES 5
.Os
diff --git a/share/man/man5/device.hints.5 b/share/man/man5/device.hints.5
index ecaed2ed8085..613e783e9583 100644
--- a/share/man/man5/device.hints.5
+++ b/share/man/man5/device.hints.5
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 19, 2019
.Dt DEVICE.HINTS 5
.Os
diff --git a/share/man/man5/dir.5 b/share/man/man5/dir.5
index 64edd8fb5bda..06788ccc22c3 100644
--- a/share/man/man5/dir.5
+++ b/share/man/man5/dir.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)dir.5 8.3 (Berkeley) 4/19/94
-.\" $FreeBSD$
-.\"
.Dd November 14, 2018
.Dt DIR 5
.Os
diff --git a/share/man/man5/disktab.5 b/share/man/man5/disktab.5
index fd11e2ba7161..965030994bbf 100644
--- a/share/man/man5/disktab.5
+++ b/share/man/man5/disktab.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)disktab.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd October 14, 2006
.Dt DISKTAB 5
.Os
diff --git a/share/man/man5/elf.5 b/share/man/man5/elf.5
index 95bc183a1f91..7ad469a03c3b 100644
--- a/share/man/man5/elf.5
+++ b/share/man/man5/elf.5
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 25, 2022
.Dt ELF 5
.Os
@@ -1022,7 +1020,7 @@ This section is of type
The attribute used is
.Sy SHF_ALLOC .
.It .rodata1
-This section hold read-only data that typically contributes to a
+This section holds read-only data that typically contributes to a
non-writable segment in the process image.
This section is of type
.Sy SHT_PROGBITS .
@@ -1341,7 +1339,7 @@ The
.Va name
and
.Va desc
-fields are padded to ensure 4-byte alignemnt.
+fields are padded to ensure 4-byte alignment.
.Va namesz
and
.Va descsz
@@ -1387,7 +1385,7 @@ writeable and executable.
.El
.Sh SEE ALSO
.Xr as 1 ,
-.Xr gdb 1 ,
+.Xr gdb 1 Pq Pa ports/devel/gdb ,
.Xr ld 1 ,
.Xr objdump 1 ,
.Xr readelf 1 ,
diff --git a/share/man/man5/ethers.5 b/share/man/man5/ethers.5
index e10bf3009e3b..03312d171b7d 100644
--- a/share/man/man5/ethers.5
+++ b/share/man/man5/ethers.5
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 12, 1995
.Dt ETHERS 5
.Os
diff --git a/share/man/man5/eui64.5 b/share/man/man5/eui64.5
index 4e2dda6159c7..72fa6f722d5f 100644
--- a/share/man/man5/eui64.5
+++ b/share/man/man5/eui64.5
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 11, 2004
.Dt EUI64 5
.Os
diff --git a/share/man/man5/ext2fs.5 b/share/man/man5/ext2fs.5
index e02be0e4a945..7504a144496f 100644
--- a/share/man/man5/ext2fs.5
+++ b/share/man/man5/ext2fs.5
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 30, 2018
.Dt EXT2FS 5
.Os
@@ -94,7 +92,7 @@ merged important parts of the allocation code from a clean-room
implementation.
.An Zheng Liu
and
-.An Fedor Upurov
+.An Fedor Uporov
implemented the read and write support respectively for
.Em ext4
filesystems.
diff --git a/share/man/man5/fbtab.5 b/share/man/man5/fbtab.5
index 0598fd119903..ab87a5e2d71d 100644
--- a/share/man/man5/fbtab.5
+++ b/share/man/man5/fbtab.5
@@ -1,6 +1,4 @@
.\"
-.\" $FreeBSD$
-.\"
.Dd August 22, 1994
.Dt FBTAB 5
.Os
diff --git a/share/man/man5/fdescfs.5 b/share/man/man5/fdescfs.5
index f2abda2bb4c2..fa260cbc12f3 100644
--- a/share/man/man5/fdescfs.5
+++ b/share/man/man5/fdescfs.5
@@ -38,9 +38,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 17, 2021
+.Dd Jul 11, 2023
.Dt FDESCFS 5
.Os
.Sh NAME
@@ -94,6 +92,18 @@ ABI compatibility mount
volume with the
.Cm linrdlnk
option.
+.It Cm rdlnk
+Treat
+.Nm
+vnodes as symbolic links consistently, in particular, follow
+the resolved name for the name lookups.
+This option is strictly stronger than the
+.Cm linrdlnk
+option, it changes not only the type returned by
+.Xr stat 2 ,
+but also causes the
+.Nm
+files to behave as symlinks.
.El
.Pp
For
diff --git a/share/man/man5/forward.5 b/share/man/man5/forward.5
index 78fa61b02577..e03c647ef2a7 100644
--- a/share/man/man5/forward.5
+++ b/share/man/man5/forward.5
@@ -29,8 +29,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 2, 1996
.Dt FORWARD 5
.Os
diff --git a/share/man/man5/freebsd-update.conf.5 b/share/man/man5/freebsd-update.conf.5
index f03cdb1e8b8f..5f077cd8f04f 100644
--- a/share/man/man5/freebsd-update.conf.5
+++ b/share/man/man5/freebsd-update.conf.5
@@ -23,8 +23,6 @@
.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 17, 2022
.Dt FREEBSD-UPDATE.CONF 5
.Os
diff --git a/share/man/man5/fs.5 b/share/man/man5/fs.5
index c52fa1f1b686..2e3d5da5dbd8 100644
--- a/share/man/man5/fs.5
+++ b/share/man/man5/fs.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)fs.5 8.2 (Berkeley) 4/19/94
-.\" $FreeBSD$
-.\"
.Dd January 16, 2017
.Dt FS 5
.Os
diff --git a/share/man/man5/fstab.5 b/share/man/man5/fstab.5
index 752c1c12cda1..6a357e497ca7 100644
--- a/share/man/man5/fstab.5
+++ b/share/man/man5/fstab.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)fstab.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd April 14, 2014
.Dt FSTAB 5
.Os
diff --git a/share/man/man5/fusefs.5 b/share/man/man5/fusefs.5
index 24858b2ac4e7..987e7f898eca 100644
--- a/share/man/man5/fusefs.5
+++ b/share/man/man5/fusefs.5
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2019 The FreeBSD Foundation
.\"
@@ -26,8 +26,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd July 31, 2019
.Dt FUSEFS 5
.Os
diff --git a/share/man/man5/group.5 b/share/man/man5/group.5
index 79efa3582530..044164a3c955 100644
--- a/share/man/man5/group.5
+++ b/share/man/man5/group.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" From: @(#)group.5 8.3 (Berkeley) 4/19/94
-.\" $FreeBSD$
-.\"
.Dd February 8, 2013
.Dt GROUP 5
.Os
diff --git a/share/man/man5/hesiod.conf.5 b/share/man/man5/hesiod.conf.5
index 364ea8041e6c..42585224d25f 100644
--- a/share/man/man5/hesiod.conf.5
+++ b/share/man/man5/hesiod.conf.5
@@ -16,8 +16,6 @@
.\" this software for any purpose. It is provided "as is"
.\" without express or implied warranty.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 30, 1996
.Dt HESIOD.CONF 5
.Os
diff --git a/share/man/man5/hosts.5 b/share/man/man5/hosts.5
index ca7586f039b7..674f86a1e550 100644
--- a/share/man/man5/hosts.5
+++ b/share/man/man5/hosts.5
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)hosts.5 8.2 (Berkeley) 12/11/93
-.\" $FreeBSD$
-.\"
-.Dd May 25, 2021
+.Dd September 15, 2022
.Dt HOSTS 5
.Os
.Sh NAME
@@ -87,9 +84,6 @@ file resides in
.Xr inet 3 ,
.Xr nsswitch.conf 5 ,
.Xr ifconfig 8
-.Rs
-.%T "Name Server Operations Guide for BIND"
-.Re
.Sh HISTORY
The
.Nm
diff --git a/share/man/man5/hosts.equiv.5 b/share/man/man5/hosts.equiv.5
index 10929f0d64d5..319d47718cbf 100644
--- a/share/man/man5/hosts.equiv.5
+++ b/share/man/man5/hosts.equiv.5
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 25, 2013
.Dt HOSTS.EQUIV 5
.Os
diff --git a/share/man/man5/hosts.lpd.5 b/share/man/man5/hosts.lpd.5
index 740708785e23..d1f227640783 100644
--- a/share/man/man5/hosts.lpd.5
+++ b/share/man/man5/hosts.lpd.5
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 1, 1996
.Dt HOSTS.LPD 5
.Os
diff --git a/share/man/man5/intro.5 b/share/man/man5/intro.5
index 27912e3b1683..78e147975e81 100644
--- a/share/man/man5/intro.5
+++ b/share/man/man5/intro.5
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 16, 1997
.Dt INTRO 5
.Os
diff --git a/share/man/man5/libmap.conf.5 b/share/man/man5/libmap.conf.5
index f59bc071ff51..ae876c1e25b3 100644
--- a/share/man/man5/libmap.conf.5
+++ b/share/man/man5/libmap.conf.5
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 16, 2013
.Dt LIBMAP.CONF 5
.Os
diff --git a/share/man/man5/lindebugfs.5 b/share/man/man5/lindebugfs.5
new file mode 100644
index 000000000000..8e385be7d743
--- /dev/null
+++ b/share/man/man5/lindebugfs.5
@@ -0,0 +1,95 @@
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2022, Jake Freeland <jfree@freebsd.org>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 August 10, 2022
+.Dt LINDEBUGFS 5
+.Os
+.Sh NAME
+.Nm lindebugfs
+.Nd Linux file system for debugging
+.Sh SYNOPSIS
+.Bd -literal
+lindebugfs /sys/kernel/debug lindebugfs rw 0 0
+.Ed
+.Sh DESCRIPTION
+The debug file system, or debugfs, makes process debugging easier by
+providing a simple API for data transfer between the kernel and user
+space.
+Debugfs is not a general-purpose file system and should not be used as
+a storage medium.
+Instead, developers can implement the debugfs interface in their code
+to generate debug information about their program at runtime.
+FreeBSD's
+.Nm
+uses the
+.Xr pseudofs 9
+file system construction kit to model itself after Linux's debugfs.
+The
+.Nm
+API is intended for use with programs that take advantage of FreeBSD's
+LinuxKPI compatibility layer.
+.Pp
+When mounted,
+.Nm
+will populate with pseudo files from any running process that calls
+.Nm debugfs_create_file() .
+Since
+.Nm
+is a pseudo file system, file contents will be generated dynamically
+based on program provided file operations.
+The current
+.Nm
+implementation formally supports seq_file and simple_attr_file virtual
+file formats.
+.Sh EXAMPLES
+Load the
+.Nm
+kernel module:
+.Pp
+.Dl "kldload lindebugfs"
+.Pp
+Mount the
+.Nm
+file system on
+.Pa /sys/kernel/debug :
+.Pp
+.Dl "mount -t lindebugfs lindebugfs /sys/kernel/debug"
+.Sh SEE ALSO
+.Xr linprocfs 5 ,
+.Xr linsysfs 5 ,
+.Xr pseudofs 9 ,
+.Xr linux 4 ,
+.Xr mount 1
+.Sh HISTORY
+The
+.Nm
+file system first appeared in
+.Fx 12.1 .
+.Sh AUTHORS
+.An -nosplit
+The initial implementation for
+.Nm
+was created by Matthew Macy.
+This manual page was written by Jake Freeland.
diff --git a/share/man/man5/link.5 b/share/man/man5/link.5
index ca3e811fed9b..61c9c09e30bc 100644
--- a/share/man/man5/link.5
+++ b/share/man/man5/link.5
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 23, 1993
.Dt LINK 5
.Os
diff --git a/share/man/man5/linprocfs.5 b/share/man/man5/linprocfs.5
index 23578c058af9..6b30d944b14b 100644
--- a/share/man/man5/linprocfs.5
+++ b/share/man/man5/linprocfs.5
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" Written by Garrett Wollman
.\" This file is in the public domain.
.\"
diff --git a/share/man/man5/linsysfs.5 b/share/man/man5/linsysfs.5
index 99cf3fe2fe41..f87f791c5f94 100644
--- a/share/man/man5/linsysfs.5
+++ b/share/man/man5/linsysfs.5
@@ -1,8 +1,6 @@
.\" Written by Garrett Wollman
.\" This file is in the public domain.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 13, 2019
.Dt LINSYSFS 5
.Os
diff --git a/share/man/man5/mailer.conf.5 b/share/man/man5/mailer.conf.5
index c57dab0e067c..e7ec72abfdc5 100644
--- a/share/man/man5/mailer.conf.5
+++ b/share/man/man5/mailer.conf.5
@@ -29,8 +29,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 26, 2017
.Dt MAILER.CONF 5
.Os
diff --git a/share/man/man5/make.conf.5 b/share/man/man5/make.conf.5
index b3623b29a950..ebf1b8a119f7 100644
--- a/share/man/man5/make.conf.5
+++ b/share/man/man5/make.conf.5
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 14, 2021
+.Dd November 15, 2022
.Dt MAKE.CONF 5
.Os
.Sh NAME
@@ -573,11 +571,7 @@ The script used by
to start, stop, and restart
.Xr sendmail 8 .
The default value is
-.Pa /etc/rc.sendmail .
-This value should match the
-.Dq Li mta_start_script
-setting in
-.Xr rc.conf 5 .
+.Pa /etc/rc.d/sendmail .
.It Va SENDMAIL_SUBMIT_MC
.Pq Vt str
The default
diff --git a/share/man/man5/moduli.5 b/share/man/man5/moduli.5
index becd3eaf0f5f..eead6cd0ab85 100644
--- a/share/man/man5/moduli.5
+++ b/share/man/man5/moduli.5
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2012
.Dt MODULI 5
.Os
diff --git a/share/man/man5/motd.5 b/share/man/man5/motd.5
index f8d8ee97c668..86cb8f723634 100644
--- a/share/man/man5/motd.5
+++ b/share/man/man5/motd.5
@@ -1,7 +1,6 @@
.\" $NetBSD: motd.5,v 1.2 1994/12/28 18:58:53 glass Exp $
.\"
.\" This file is in the public domain.
-.\" $FreeBSD$
.\"
.Dd October 18, 2020
.Dt MOTD 5
diff --git a/share/man/man5/mount.conf.5 b/share/man/man5/mount.conf.5
index e1127277bdd4..633a642e37be 100644
--- a/share/man/man5/mount.conf.5
+++ b/share/man/man5/mount.conf.5
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.\"
.Dd October 17, 2013
.Dt MOUNT.CONF 5
diff --git a/share/man/man5/mqueuefs.5 b/share/man/man5/mqueuefs.5
index dedec109cefc..7be49a816968 100644
--- a/share/man/man5/mqueuefs.5
+++ b/share/man/man5/mqueuefs.5
@@ -25,8 +25,6 @@
.\" OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
.\" EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 30, 2005
.Dt MQUEUEFS 5
.Os
diff --git a/share/man/man5/msdosfs.5 b/share/man/man5/msdosfs.5
index 7e8d31fa75c5..2856b4b5cc82 100644
--- a/share/man/man5/msdosfs.5
+++ b/share/man/man5/msdosfs.5
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" Written by Tom Rhodes
.\" This file is in the public domain.
.\"
diff --git a/share/man/man5/networks.5 b/share/man/man5/networks.5
index 9483439339e9..f0fdf23357e5 100644
--- a/share/man/man5/networks.5
+++ b/share/man/man5/networks.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)networks.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd June 5, 1993
.Dt NETWORKS 5
.Os
diff --git a/share/man/man5/nsmb.conf.5 b/share/man/man5/nsmb.conf.5
index 84674e455314..1a09743874e5 100644
--- a/share/man/man5/nsmb.conf.5
+++ b/share/man/man5/nsmb.conf.5
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 2, 2018
.Dt NSMB.CONF 5
.Os
diff --git a/share/man/man5/nsswitch.conf.5 b/share/man/man5/nsswitch.conf.5
index 63935d8e0fb9..3e033161f921 100644
--- a/share/man/man5/nsswitch.conf.5
+++ b/share/man/man5/nsswitch.conf.5
@@ -31,8 +31,6 @@
.\" 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.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 6, 2020
.Dt NSSWITCH.CONF 5
.Os
diff --git a/share/man/man5/nullfs.5 b/share/man/man5/nullfs.5
index 1cdd74bf53a1..6e2c199aa3b0 100644
--- a/share/man/man5/nullfs.5
+++ b/share/man/man5/nullfs.5
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 15, 2022
.Dt NULLFS 5
.Os
diff --git a/share/man/man5/os-release.5 b/share/man/man5/os-release.5
index f578f8a52ce5..c2874a65d8d3 100644
--- a/share/man/man5/os-release.5
+++ b/share/man/man5/os-release.5
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 23, 2021
.Dt OS-RELEASE 5
.Os
diff --git a/share/man/man5/passwd.5 b/share/man/man5/passwd.5
index 2b79680a20eb..b1d9e362492c 100644
--- a/share/man/man5/passwd.5
+++ b/share/man/man5/passwd.5
@@ -28,10 +28,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" From: @(#)passwd.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
-.Dd June 30, 2022
+.Dd May 16, 2023
.Dt PASSWD 5
.Os
.Sh NAME
@@ -49,7 +46,7 @@ They can be used in conjunction with the Hesiod domains
and
.Sq Li uid ,
and the
-.Tn NIS
+NIS
maps
.Sq Li passwd.byname ,
.Sq Li passwd.byuid ,
@@ -131,7 +128,7 @@ The login name must not begin with a hyphen
.Pq Ql \&- ,
and cannot contain 8-bit characters, tabs or spaces, or any of these
symbols:
-.Ql \&,:+&#%^\&(\&)!@~*?<>=|\e\\&/" .
+.Ql \&,:+&#%^\&(\&)!@~*?<>=|\e\\&/"\&; .
The dollar symbol
.Pq Ql \&$
is allowed only as the last character for use with Samba.
@@ -310,7 +307,7 @@ lookups occur from the
.Sq Li master.passwd.byname ,
and
.Sq Li master.passwd.byuid
-.Tn NIS
+NIS
maps.
.Sh COMPAT SUPPORT
If
@@ -361,7 +358,7 @@ or
.Sq Li passwd.byname
and
.Sq Li passwd.byuid
-.Tn NIS
+NIS
maps (with
.Sq Li passwd_compat: nis )
to be included.
@@ -372,7 +369,7 @@ or
.Ar gid
fields, the specified numbers will override the information retrieved
from the Hesiod domain or the
-.Tn NIS
+NIS
maps.
Likewise, if the
.Ar gecos ,
@@ -381,20 +378,20 @@ or
.Ar shell
entries contain text, it will override the information included via
Hesiod or
-.Tn NIS .
+NIS .
On some systems, the
.Ar passwd
field may also be overridden.
.Sh FILES
.Bl -tag -width ".Pa /etc/master.passwd" -compact
.It Pa /etc/passwd
-.Tn ASCII
+ASCII
password file, with passwords removed
.It Pa /etc/pwd.db
.Xr db 3 Ns -format
password database, with passwords removed
.It Pa /etc/master.passwd
-.Tn ASCII
+ASCII
password file, with passwords intact
.It Pa /etc/spwd.db
.Xr db 3 Ns -format
@@ -444,7 +441,7 @@ file format first appeared in
.At v1 .
.Pp
The
-.Tn NIS
+NIS
.Nm
file format first appeared in SunOS.
.Pp
diff --git a/share/man/man5/pbm.5 b/share/man/man5/pbm.5
index 55d2c5c1be39..d70255c83bdb 100644
--- a/share/man/man5/pbm.5
+++ b/share/man/man5/pbm.5
@@ -1,6 +1,4 @@
.\"
-.\" $FreeBSD$
-.\"
.Dd September 27, 1991
.Dt PBM 5
.Os
diff --git a/share/man/man5/periodic.conf.5 b/share/man/man5/periodic.conf.5
index 119c49502c9d..a2ed2b09d772 100644
--- a/share/man/man5/periodic.conf.5
+++ b/share/man/man5/periodic.conf.5
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd March 9, 2022
+.Dd April 9, 2024
.Dt PERIODIC.CONF 5
.Os
.Sh NAME
@@ -636,11 +634,28 @@ The same as
.Va daily_scrub_zfs_default_threshold
but specific to the pool
.Ao Ar poolname Ac Ns .
+.It Va daily_trim_zfs_enable
+.Pq Vt bool
+Set to
+.Dq Li YES
+if you want to run a zfs trim daily.
+.It Va daily_trim_zfs_pools
+.Pq Vt str
+A space separated list of names of zfs pools to trim.
+If the list is empty or not set, all zfs pools are trimmed.
.It Va daily_local
.Pq Vt str
Set to a list of extra scripts that should be run after all other
daily scripts.
All scripts must be absolute path names.
+.It Va daily_diff_flags
+.Pq Vt str
+Set to the arguments to pass to the
+.Xr diff 1
+utility when generating differences.
+The default is
+.Fl b
+.Fl U Cm 0 .
.El
.Pp
The following variables are used by the standard scripts that reside in
@@ -809,7 +824,8 @@ Set to the arguments to pass to the
.Xr diff 1
utility when generating differences.
The default is
-.Fl b u .
+.Fl b
+.Fl U Cm 0 .
.It Va security_status_chksetuid_enable
.Pq Vt bool
Set to
diff --git a/share/man/man5/pf.conf.5 b/share/man/man5/pf.conf.5
index 267d84387fe9..9803d96bc5d9 100644
--- a/share/man/man5/pf.conf.5
+++ b/share/man/man5/pf.conf.5
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" $OpenBSD: pf.conf.5,v 1.406 2009/01/31 19:37:12 sobrado Exp $
.\"
.\" Copyright (c) 2002, Daniel Hartmeier
@@ -28,7 +27,7 @@
.\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd March 9, 2022
+.Dd December 6, 2023
.Dt PF.CONF 5
.Os
.Sh NAME
@@ -284,6 +283,21 @@ can prevent blocking of such packets.
The state after one endpoint sends an RST.
.El
.Pp
+SCTP timeout are handled similar to TCP, but with its own set of states:
+.Pp
+.Bl -tag -width xxxx -compact
+.It Ar sctp.first
+The state after the first packet.
+.It Ar sctp.opening
+The state before the destination host ever sends a packet.
+.It Ar sctp.established
+The fully established state.
+.It Ar sctp.closing
+The state after the first SHUTDOWN chunk has been sent.
+.It Ar sctp.closed
+The state after SHUTDOWN_ACK has been exchanged and the connection is closed.
+.El
+.Pp
ICMP and UDP are handled in a fashion similar to TCP, but with a much more
limited set of states:
.Pp
@@ -387,7 +401,9 @@ set limit frags 20000
.Ed
.Pp
sets the maximum number of entries in the memory pool used for fragment
-reassembly (generated by
+reassembly (generated by the
+.Ar set reassemble
+option or
.Ar scrub
rules) to 20000.
Using
@@ -481,6 +497,29 @@ For example:
.Bd -literal -offset indent
set optimization aggressive
.Ed
+.It Ar set reassemble yes | no Op Cm no-df
+The
+.Cm reassemble
+option is used to enable or disable the reassembly of fragmented packets,
+and can be set to
+.Cm yes
+or
+.Cm no .
+If
+.Cm no-df
+is also specified, fragments with the
+.Dq dont-fragment
+bit set are reassembled too,
+instead of being dropped;
+the reassembled packet will have the
+.Dq dont-fragment
+bit cleared.
+The default value is
+.Cm no .
+.Pp
+This option is ignored if there are pre-FreeBSD 14
+.Cm scrub
+rules present.
.It Ar set block-policy
The
.Ar block-policy
@@ -493,6 +532,7 @@ action:
Packet is silently dropped.
.It Ar return
A TCP RST is returned for blocked TCP packets,
+an SCTP ABORT chunk is returned for blocked SCTP packets,
an ICMP UNREACHABLE is returned for blocked UDP packets,
and all other packets are silently dropped.
.El
@@ -517,6 +557,7 @@ actions are possible:
Incoming packet is silently dropped.
.It Ar return
Incoming packet is dropped and TCP RST is returned for TCP packets,
+an SCTP ABORT chunk is returned for blocked SCTP packets,
an ICMP UNREACHABLE is returned for UDP packets,
and no response is sent for other packets.
.El
@@ -670,7 +711,7 @@ The last matching rule decides what action is taken.
If no rule matches the packet, the default action is to pass
the packet.
.Pp
-The folliwing actions can be used in the filter:
+The following actions can be used in the filter:
.Bl -tag -width xxxx
.It Ar block
The packet is blocked.
@@ -702,7 +743,7 @@ If a packet matches a rule which has the
option set, this rule
is considered the last matching rule, and evaluation of subsequent rules
is skipped.
-.It Ar on Aq Ar interface
+.It Ar on Aq Ar ifspec
This rule applies only to packets coming in on, or going out through, this
particular interface or interface group.
For more information on interface groups,
@@ -710,6 +751,9 @@ see the
.Ic group
keyword in
.Xr ifconfig 8 .
+.It Ar bridge-to Aq interface
+Packets matching this rule will be sent out of the specified interface without
+further processing.
.It Ar proto Aq Ar protocol
This rule applies only to packets of this protocol.
Note that Ethernet protocol numbers are different from those used in
@@ -749,19 +793,21 @@ Used to specify that packets must already be tagged with the given tag in order
to match the rule.
Inverse tag matching can also be done by specifying the ! operator before the
tagged keyword.
+.El
.Sh TRAFFIC NORMALIZATION
-Traffic normalization is used to sanitize packet content in such
-a way that there are no ambiguities in packet interpretation on
-the receiving side.
-The normalizer does IP fragment reassembly to prevent attacks
-that confuse intrusion detection systems by sending overlapping
-IP fragments.
-Packet normalization is invoked with the
-.Ar scrub
-directive.
-.Pp
-.Ar scrub
-has the following options:
+Traffic normalization is a broad umbrella term
+for aspects of the packet filter which deal with
+verifying packets, packet fragments, spoofed traffic,
+and other irregularities.
+.Ss Scrub
+Scrub involves sanitising packet content in such a way
+that there are no ambiguities in packet interpretation on the receiving side.
+It is invoked with the
+.Cm scrub
+option, added to filter rules.
+.Pp
+Parameters are specified enclosed in parentheses.
+At least one of the following parameters must be specified:
.Bl -tag -width xxxx
.It Ar no-df
Clears the
@@ -820,19 +866,8 @@ Replaces the IP identification field with random values to compensate
for predictable values generated by many hosts.
This option only applies to packets that are not fragmented
after the optional fragment reassembly.
-.It Ar fragment reassemble
-Using
-.Ar scrub
-rules, fragments can be reassembled by normalization.
-In this case, fragments are buffered until they form a complete
-packet, and only the completed packet is passed on to the filter.
-The advantage is that filter rules have to deal only with complete
-packets, and can ignore fragments.
-The drawback of caching fragments is the additional memory cost.
.It Ar reassemble tcp
Statefully normalizes TCP connections.
-.Ar scrub reassemble tcp
-rules may not have the direction (in/out) specified.
.Ar reassemble tcp
performs the following normalizations:
.Pp
@@ -884,6 +919,41 @@ blind attacker would have to guess the timestamp as well.
.Pp
For example,
.Bd -literal -offset indent
+match in all scrub (no-df random-id max-mss 1440)
+.Ed
+.Ss Scrub ruleset (pre-FreeBSD 14)
+In order to maintain compatibility with older releases of FreeBSD
+.Ar scrub
+rules can also be specified in their own ruleset.
+In such case they are invoked with the
+.Ar scrub
+directive.
+If there are such rules present they determine packet reassembly behaviour.
+When no such rules are present the option
+.Ar set reassembly
+takes precedence.
+The
+.Ar scrub
+rules can take all parameters specified above for a
+.Ar scrub
+option of filter rules and 2 more parameters controlling fragment reassembly:
+.Bl -tag -width xxxx
+.It Ar fragment reassemble
+Using
+.Ar scrub
+rules, fragments can be reassembled by normalization.
+In this case, fragments are buffered until they form a complete
+packet, and only the completed packet is passed on to the filter.
+The advantage is that filter rules have to deal only with complete
+packets, and can ignore fragments.
+The drawback of caching fragments is the additional memory cost.
+This is the default behaviour unless no fragment reassemble is specified.
+.It Ar no fragment reassemble
+Do not reassemble fragments.
+.El
+.Pp
+For example,
+.Bd -literal -offset indent
scrub in on $ext_if all fragment reassemble
.Ed
.Pp
@@ -895,6 +965,14 @@ much in the same way as
works in the packet filter (see below).
This mechanism should be used when it is necessary to exclude specific packets
from broader scrub rules.
+.Pp
+.Ar scrub
+rules in the
+.Ar scrub
+ruleset are evaluated for every packet before stateful filtering.
+This means excessive usage of them will cause performance penalty.
+.Ar scrub reassemble tcp
+rules must not have the direction (in/out) specified.
.Sh QUEUEING with ALTQ
The ALTQ system is currently not available in the GENERIC kernel nor as
loadable modules.
@@ -1261,8 +1339,8 @@ A stateful connection is automatically created to track packets matching
such a rule as long as they are not blocked by the filtering section of
.Nm pf.conf .
The translation engine modifies the specified address and/or port in the
-packet, recalculates IP, TCP and UDP checksums as necessary, and passes it to
-the packet filter for evaluation.
+packet, recalculates IP, TCP and UDP checksums as necessary, and passes
+it to the packet filter for evaluation.
.Pp
Since translation occurs before filtering the filter
engine will see packets as they look after any
@@ -1398,6 +1476,7 @@ and layer 4 (see
.Xr icmp 4 ,
.Xr icmp6 4 ,
.Xr tcp 4 ,
+.Xr sctp 4 ,
.Xr udp 4 )
headers.
In addition, packets may also be
@@ -1412,7 +1491,7 @@ and
, the last matching rule decides what action is taken.
For
.Ar match
-, rules are evaulated every time they match; the pass/block state of a packet
+, rules are evaluated every time they match; the pass/block state of a packet
remains unchanged.
If no rule matches the packet, the default action is to pass
the packet.
@@ -1447,7 +1526,8 @@ can be overridden by specifying a message as a code or number.
.It Ar return
This causes a TCP RST to be returned for
.Xr tcp 4
-packets and an ICMP UNREACHABLE for UDP and other packets.
+packets, an SCTP ABORT for SCTP
+and an ICMP UNREACHABLE for UDP and other packets.
.El
.Pp
Options returning ICMP packets currently have no effect if
@@ -1470,13 +1550,15 @@ rules differ from
.Ar block
and
.Ar pass
-rules in that parameters are set every time a packet matches the rule, not only
+rules in that parameters are set for every rule a packet matches, not only
on the last matching rule.
For the following parameters, this means that the parameter effectively becomes
"sticky" until explicitly overridden:
.Ar queue ,
.Ar dnpipe ,
-.Ar dnqueue
+.Ar dnqueue ,
+.Ar rtable ,
+.Ar scrub
.
.It Ar pass
The packet is passed;
@@ -1639,6 +1721,7 @@ Common protocols are
.Xr icmp 4 ,
.Xr icmp6 4 ,
.Xr tcp 4 ,
+.Xr sctp 4 ,
and
.Xr udp 4 .
For a list of all the protocol name to number mappings used by
@@ -2068,19 +2151,22 @@ Only effective before the route lookup happened, i.e. when filtering inbound.
.It Xo Ar divert-to Aq Ar host
.Ar port Aq Ar port
.Xc
-Used to redirect packets to a local socket bound to
-.Ar host
-and
+Used to
+.Xr divert 4
+packets to the given divert
.Ar port .
-The packets will not be modified, so
-.Xr getsockname 2
-on the socket will return the original destination address of the packet.
+Historically
+.Ox pf has another meaning for this, and
+.Fx pf uses
+this syntax to support
+.Xr divert 4 instead. Hence,
+.Ar host
+has no meaning and can be set to anything like 127.0.0.1.
+If a packet is re-injected and does not change direction then it will not be
+re-diverted.
.It Ar divert-reply
-Used to receive replies for sockets that are bound to addresses
-which are not local to the machine.
-See
-.Xr setsockopt 2
-for information on how to bind these sockets.
+It has no meaning in
+.Fx pf .
.It Ar probability Aq Ar number
A probability attribute can be attached to a rule, with a value set between
0 and 1, bounds not included.
@@ -2343,6 +2429,10 @@ easier.
This is intended to be used in situations where one does not see all
packets of a connection, e.g. in asymmetric routing situations.
Cannot be used with modulate or synproxy state.
+.It Ar pflow
+States created by this rule are exported on the
+.Xr pflow 4
+interface.
.El
.Pp
Multiple options can be specified, separated by commas:
@@ -2560,6 +2650,8 @@ contain the necessary header information for the subprotocol that allows
to filter on things such as TCP ports or to perform NAT.
.Pp
Besides the use of
+.Ar set reassemble
+option or
.Ar scrub
rules as described in
.Sx TRAFFIC NORMALIZATION
@@ -2568,7 +2660,11 @@ above, there are three options for handling fragments in the packet filter.
One alternative is to filter individual fragments with filter rules.
If no
.Ar scrub
-rule applies to a fragment, it is passed to the filter.
+rule applies to a fragment or
+.Ar set reassemble
+is set to
+.Cm no
+, it is passed to the filter.
Filter rules with matching IP header parameters decide whether the
fragment is passed or blocked, in the same way as complete packets
are filtered.
@@ -2601,11 +2697,13 @@ rules.
.Pp
In most cases, the benefits of reassembly outweigh the additional
memory cost, and it's recommended to use
+.Ar set reassemble
+option or
.Ar scrub
-rules to reassemble
-all fragments via the
+rules with the
.Ar fragment reassemble
-modifier.
+modifier to reassemble
+all fragments.
.Pp
The memory allocated for fragment caching can be limited using
.Xr pfctl 8 .
@@ -2838,6 +2936,14 @@ reference to an anchor name containing
characters will require double quote
.Pq Sq \&"
characters around the anchor name.
+.Sh SCTP CONSIDERATIONS
+.Xr pf 4
+supports
+.Xr sctp 4
+connections.
+It can match ports, track state and NAT SCTP traffic.
+However, it will not alter port numbers during nat or rdr translations.
+Doing so would break SCTP multihoming.
.Sh TRANSLATION EXAMPLES
This example maps incoming requests on port 80 to port 8080, on
which a daemon is running (because, for example, it is not run as root,
@@ -2921,6 +3027,10 @@ nat on $ext_if inet proto udp from any port = isakmp to any -\*(Gt ($ext_if) \e
# (bidirectional).
binat on $ext_if from 10.1.2.150 to any -\*(Gt $ext_if
+# Translate packets arriving on $peer_if addressed to 172.22.16.0/20
+# to the corresponding address in 172.21.16.0/20 (bidirectional).
+binat on $peer_if from 172.21.16.0/20 to any -> 172.22.16.0/20
+
# RDR
# Translate incoming packets' destination addresses.
# As an example, redirect a TCP and UDP port to an internal machine.
@@ -2958,12 +3068,12 @@ rdr on $ext_if proto tcp from any to any port 80 \e
# (157.161.48.183, the only routable address)
# and the private network is 10.0.0.0/8, for which we are doing NAT.
+# Reassemble incoming traffic
+set reassemble yes
+
# use a macro for the interface name, so it can be changed easily
ext_if = \&"kue0\&"
-# normalize all incoming traffic
-scrub in on $ext_if all fragment reassemble
-
# block and log everything by default
block return log on $ext_if all
@@ -3076,8 +3186,9 @@ option = "set" ( [ "timeout" ( timeout | "{" timeout-list "}" ) ] |
[ "keepcounters" ] )
ether-rule = "ether" etheraction [ ( "in" | "out" ) ]
- [ "quick" ] [ "on" ifspec ] [ etherprotospec ]
- etherhosts [ "l3" hosts ] [ etherfilteropt-list ]
+ [ "quick" ] [ "on" ifspec ] [ "bridge-to" interface-name ]
+ [ etherprotospec ] etherhosts [ "l3" hosts ]
+ [ etherfilteropt-list ]
pf-rule = action [ ( "in" | "out" ) ]
[ "log" [ "(" logopts ")"] ] [ "quick" ]
@@ -3088,7 +3199,8 @@ logopts = logopt [ "," logopts ]
logopt = "all" | "user" | "to" interface-name
etherfilteropt-list = etherfilteropt-list etherfilteropt | etherfilteropt
-etherfilteropt = "tag" string | "tagged" string | "queue" ( string )
+etherfilteropt = "tag" string | "tagged" string | "queue" ( string ) |
+ "ridentifier" number | "label" string
filteropt-list = filteropt-list filteropt | filteropt
filteropt = user | group | flags | icmp-type | icmp6-type | "tos" tos |
@@ -3161,7 +3273,7 @@ schedulers = ( cbq-def | priq-def | hfsc-def )
bandwidth-spec = "number" ( "b" | "Kb" | "Mb" | "Gb" | "%" )
etheraction = "pass" | "block"
-action = "pass" | "block" [ return ] | [ "no" ] "scrub"
+action = "pass" | "match" | "block" [ return ] | [ "no" ] "scrub"
return = "drop" | "return" | "return-rst" [ "( ttl" number ")" ] |
"return-icmp" [ "(" icmpcode [ [ "," ] icmp6code ] ")" ] |
"return-icmp6" [ "(" icmp6code ")" ]
@@ -3177,7 +3289,8 @@ route = ( "route-to" | "reply-to" | "dup-to" )
[ pooltype ]
af = "inet" | "inet6"
-etherprotospec = "proto" ( proto-number | "{" proto-list "}" )
+etherprotospec = "proto" ( proto-number | "{" etherproto-list "}" )
+etherproto-list = proto-number [ [ "," ] etherproto-list ]
protospec = "proto" ( proto-name | proto-number |
"{" proto-list "}" )
proto-list = ( proto-name | proto-number ) [ [ "," ] proto-list ]
@@ -3236,13 +3349,15 @@ state-opt = ( "max" number | "no-sync" | timeout | "sloppy" |
"max-src-conn" number |
"max-src-conn-rate" number "/" number |
"overload" "\*(Lt" string "\*(Gt" [ "flush" ] |
- "if-bound" | "floating" )
+ "if-bound" | "floating" | "pflow" )
fragmentation = [ "fragment reassemble" ]
timeout-list = timeout [ [ "," ] timeout-list ]
timeout = ( "tcp.first" | "tcp.opening" | "tcp.established" |
"tcp.closing" | "tcp.finwait" | "tcp.closed" |
+ "sctp.first" | "sctp.opening" | "sctp.established" |
+ "sctp.closing" | "sctp.closed" |
"udp.first" | "udp.single" | "udp.multiple" |
"icmp.first" | "icmp.error" |
"other.first" | "other.single" | "other.multiple" |
@@ -3295,8 +3410,10 @@ Service name database.
.Xr ip 4 ,
.Xr ip6 4 ,
.Xr pf 4 ,
+.Xr pflow 4 ,
.Xr pfsync 4 ,
.Xr tcp 4 ,
+.Xr sctp 4 ,
.Xr udp 4 ,
.Xr hosts 5 ,
.Xr pf.os 5 ,
diff --git a/share/man/man5/pf.os.5 b/share/man/man5/pf.os.5
index 18c72468e64a..422f70e8a651 100644
--- a/share/man/man5/pf.os.5
+++ b/share/man/man5/pf.os.5
@@ -14,8 +14,6 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 31, 2007
.Dt PF.OS 5
.Os
diff --git a/share/man/man5/phones.5 b/share/man/man5/phones.5
index 713c88117688..373d90fca8f6 100644
--- a/share/man/man5/phones.5
+++ b/share/man/man5/phones.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)phones.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd June 5, 1993
.Dt PHONES 5
.Os
diff --git a/share/man/man5/portindex.5 b/share/man/man5/portindex.5
index c997a256167f..f943975cc506 100644
--- a/share/man/man5/portindex.5
+++ b/share/man/man5/portindex.5
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 14, 2012
.Dt PORTINDEX 5
.Os
diff --git a/share/man/man5/portsnap.conf.5 b/share/man/man5/portsnap.conf.5
deleted file mode 100644
index cef4c24815bf..000000000000
--- a/share/man/man5/portsnap.conf.5
+++ /dev/null
@@ -1,147 +0,0 @@
-.\"-
-.\" Copyright 2004-2005 Colin Percival
-.\" All rights reserved
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted providing that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-.\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
-.\" DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
-.\" STRICT 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd January 30, 2005
-.Dt PORTSNAP.CONF 5
-.Os FreeBSD
-.Sh NAME
-.Nm portsnap.conf
-.Nd configuration file for
-.Xr portsnap 8
-.Sh DESCRIPTION
-The
-.Nm
-file controls where
-.Xr portsnap 8
-fetches ports tree snapshots from,
-which RSA key should be trusted to sign the updates, and what
-directories should hold the compressed and live ports trees.
-.Pp
-A line of the form
-.Dl SERVERNAME=portsnap.example.com
-specifies the source from which snapshots should be fetched.
-This is equivalent to the
-.Fl s Ar server
-option to
-.Xr portsnap 8 ,
-and will be ignored if the command-line
-option is used.
-.Pp
-A line of the form
-.Dl KEYPRINT=0123456789abc ... 456789abcdef
-(64 characters in total)
-specifies the SHA-256 hash of the OpenSSL public key file
-belonging to an RSA keypair which is trusted to sign updates.
-This is equivalent to the
-.Fl k Ar KEY
-option to
-.Xr portsnap 8 ,
-and will be ignored if the command-line
-option is used.
-.Pp
-A line of the form
-.Dl WORKDIR=/path/to/workdir
-specifies the directory in which portsnap should maintain its compressed
-snapshot of the ports tree.
-This is equivalent to the
-.Fl d Ar workdir
-option to
-.Xr portsnap 8 ,
-and will be ignored if the command-line option
-is used.
-.Pp
-A line of the form
-.Dl PORTSDIR=/path/to/portstree
-specifies the directory in which portsnap will create the live ports
-tree from its compressed snapshot via the
-.Cm extract
-and
-.Cm update
-commands.
-This is equivalent to the
-.Fl p Ar portsdir
-option to
-.Xr portsnap 8 ,
-and will be ignored if the command-line option
-is used.
-.Pp
-If more than one line of any of the above forms is included in
-.Nm
-then only the last one will take effect.
-.Pp
-A line of the form
-.Dl INDEX INDEXFILE DESCRIBEFILE
-will instruct
-.Xr portsnap 8
-that the specified INDEX file is generated from the specified
-describe file distributed by the portsnap server.
-.Pp
-Finally, a line of the form
-.Dl REFUSE foo bar
-will instruct
-.Xr portsnap 8
-to ignore parts of the ports tree with paths starting with
-.Ar foo
-or
-.Ar bar ,
-which are interpreted as extended regular expressions by
-.Xr egrep 1 .
-This will result in those parts of the tree not being updated
-in the compressed snapshot when the
-.Cm fetch
-and
-.Cm cron
-commands are used and not being extracted when the
-.Cm extract
-command is used (unless a specific
-.Ar path
-is passed to
-.Xr portsnap 8 ) ,
-and if those parts of the ports tree are present they
-will not be updated when the
-.Cm update
-command is used.
-Unlike the other options, the parameters in REFUSE lines
-accumulate and all such lines are considered.
-.Bf Em
-Note that operating with an incomplete ports tree is not
-supported and may cause unexpected results.
-.Ef
-.Pp
-Any lines not of the above forms will be ignored.
-.Sh FILES
-.Bl -tag -width "/etc/portsnap.conf"
-.It Pa /etc/portsnap.conf
-Default location of the portsnap configuration file.
-.El
-.Sh SEE ALSO
-.Xr egrep 1 ,
-.Xr fetch 1 ,
-.Xr sha256 1 ,
-.Xr portsnap 8
-.Sh AUTHORS
-.An Colin Percival Aq Mt cperciva@FreeBSD.org
diff --git a/share/man/man5/procfs.5 b/share/man/man5/procfs.5
index 37da9cf82e4b..5977a8bced81 100644
--- a/share/man/man5/procfs.5
+++ b/share/man/man5/procfs.5
@@ -1,8 +1,7 @@
-.\" $FreeBSD$
.\" Written by Garrett Wollman
.\" This file is in the public domain.
.\"
-.Dd October 17, 2021
+.Dd April 10, 2023
.Dt PROCFS 5
.Os
.Sh NAME
@@ -69,7 +68,93 @@ in
is only implemented on machines which have distinct general
purpose and floating point register sets.
.It Pa map
-A map of the process' virtual memory.
+A collection of lines describing the memory regions of the process,
+where each line contains the following fields:
+.Bl -tag -compact -width private-resident
+.It start-address
+The starting address for the region (inclusive).
+.It end-address
+The ending address for the region (exclusive).
+.It resident
+The number of resident pages.
+.It private-resident
+The number of resident pages that were private to the process.
+.It obj
+The virtual address of the
+.Vt struct vm_object
+kernel data structure describing the memory region.
+.It access
+A three character string comprising the characters
+.Sq r ,
+.Sq w
+and
+.Sq x ,
+denoting read, write, and execute permissions respectively.
+The lack of a permission is represented by
+.Sq - .
+.It ref_count
+The number of references to the region.
+.It shadow_count
+The number of VM objects that this region is a shadow for.
+.It flags
+The flags for the object, see the flags named
+.Sy OBJ_*
+in
+.In vm/vm_object.h .
+.It copy-on-write
+Whether the region is copy-on-write.
+One of:
+.Bl -tag -compact -width NCOW
+.It COW
+A copy-on-write region.
+.It NCOW
+A non-copy-on-write region.
+.El
+.It needs-copy
+Whether the region needs a copy.
+One of:
+.Bl -tag -compact -width NNC
+.It NC
+The region needs a copy.
+.It NNC
+The region does not need a copy.
+.El
+.It type
+The type of the region.
+One of:
+.Bl -tag -compact -width unknown
+.It dead
+A region associated with a dead VM object.
+.It device
+A region backed by device memory.
+.It none
+A region not backed by anything.
+.It phys
+A region backed by physical memory.
+.It swap
+A region backed by swap.
+.It unknown
+A region of unknown type.
+.It vnode
+A region backed by a file.
+.El
+.It fullpath
+The path to the file backing the memory region, or
+.Sq -
+if there is no such file.
+.It cred
+One of:
+.Bl -tag -compact -width NCH
+.It CH
+The region is being charged to the user specified in the
+.Sq charged-uid
+field.
+.It NCH
+The region is not being charged to any user.
+.El
+.It charged-uid
+The UID of the user being charged, or -1 if no user is being charged.
+.El
.It Pa mem
The complete virtual memory image of the process.
Only those address which exist in the process can be accessed.
@@ -168,10 +253,14 @@ directory containing process information for process
.Pa pid .
.It Pa /proc/curproc
directory containing process information for the current process
+.It Pa /proc/self
+directory containing process information for the current process
.It Pa /proc/curproc/cmdline
the process executable name
.It Pa /proc/curproc/etype
executable type
+.It Pa /proc/curproc/exe
+executable image
.It Pa /proc/curproc/file
executable image
.It Pa /proc/curproc/fpregs
@@ -205,6 +294,8 @@ file system on
.Xr mount 2 ,
.Xr sigaction 2 ,
.Xr unmount 2 ,
+.Xr kvm 3 ,
+.Xr libprocstat 3 ,
.Xr pseudofs 9
.Sh AUTHORS
.An -nosplit
diff --git a/share/man/man5/protocols.5 b/share/man/man5/protocols.5
index 1ccf0ce2be61..0b15e3ae654b 100644
--- a/share/man/man5/protocols.5
+++ b/share/man/man5/protocols.5
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)protocols.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
-.Dd June 5, 1993
+.Dd December 7, 2020
.Dt PROTOCOLS 5
.Os
.Sh NAME
@@ -37,9 +34,8 @@
.Sh DESCRIPTION
The
.Nm
-file contains information regarding the known protocols used in the
-.Tn DARPA
-Internet.
+file contains information regarding the assigned protocol numbers
+used by IPv4 and IPv6 to identify the next level protocol.
For each protocol a single line should be present
with the following information:
.Bd -unfilled -offset indent
@@ -67,10 +63,22 @@ file resides in
.El
.Sh SEE ALSO
.Xr getprotoent 3
+.Rs
+.%R RFC 2780
+.%D March 2000
+.%T "IANA Allocation Guidelines For Values In the \
+Internet Protocol and Related Headers"
+.Re
+.Rs
+.%R RFC 5237
+.%D February 2008
+.%T "IANA Allocation Guidelines for the Protocol Field"
+.Re
.Sh HISTORY
The
.Nm
file format appeared in
-.Bx 4.2 .
+.Bx 4.2 ,
+describing the "known protocols used in the DARPA Internet".
.Sh BUGS
A name server should be used instead of a static file.
diff --git a/share/man/man5/quota.user.5 b/share/man/man5/quota.user.5
index 0bcc591d5db9..7bfbd4eda3d1 100644
--- a/share/man/man5/quota.user.5
+++ b/share/man/man5/quota.user.5
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 30, 2007
.Dt QUOTA.USER 5
.Os
diff --git a/share/man/man5/rc.conf.5 b/share/man/man5/rc.conf.5
index 473f5b16a30f..ad84bcbd576c 100644
--- a/share/man/man5/rc.conf.5
+++ b/share/man/man5/rc.conf.5
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 7, 2022
+.Dd November 13, 2023
.Dt RC.CONF 5
.Os
.Sh NAME
@@ -80,8 +78,13 @@ script in the
.Pa /etc/rc.conf.d
directory or
.Ao Ar dir Ac Ns Pa /rc.conf.d
-directories specified in
+directories (where
+.Ao Ar dir Ac
+is each entry specified in
.Va local_startup ,
+but with any trailing
+.Pa /rc.d
+stripped),
which will be included by the
.Va load_rc_config
function.
@@ -101,7 +104,7 @@ will be loaded.
If
.Ao Ar dir Ac Ns Pa /rc.conf.d/ Ns Ao Ar name Ac
is a directory,
-all of files in the directory will be loaded.
+all of the files in the directory will be loaded.
Also see the
.Va rc_conf_files
variable below.
@@ -192,6 +195,14 @@ services are enabled that utilize the force_depend check.
.Pq Vt str
.Xr chroot 8
to this directory before running the service.
+.It Ao Ar name Ac Ns Va _cpuset
+.Pq Vt str
+A list of CPUs to run the service on.
+Passed to
+.Xr cpuset 1
+using the
+.Fl l
+flag.
.It Ao Ar name Ac Ns Va _fib
.Pq Vt int
The
@@ -239,6 +250,16 @@ such as PostgreSQL will not inherit the OOM killer protection.
.Pp
This variable has no effect on services running within a
.Xr jail 8 .
+.It Ao Ar name Ac Ns Va _setup
+.Pq Vt str
+Run the specified setup script right before starting the actual service
+command.
+Useful for automatic configuration file generation.
+.It Ao Ar name Ac Ns Va _umask
+.Pq Vt int
+Run the service using this
+.Xr umask 1
+value.
.It Ao Ar name Ac Ns Va _user
.Pq Vt str
Run the service under this user account.
@@ -458,6 +479,33 @@ is mounted on normal systems.
Clean the
.Pa /var
directory.
+.It Va var_run_enable
+.Pq Vt bool
+Set to "YES" to enable saving of the
+.Pa /var/run
+directory structure into an mtree file at shutdown and the reload of the
+.Pa /var/run
+directory structure at boot.
+.It Va var_run_autosave
+.Pq Vt bool
+In some cases it may be undesirable to save
+.Pa /var/run
+at shutdown.
+When set to "NO"
+.Pa /var/run
+is loaded at reboot but not saved at shutdown.
+Typically in this scenario
+.Ql service var_run save
+would be performed to save a copy of the
+.Pa /var/run
+directory structure once, to be reloaded during all subsequent reboots.
+.It Va var_run_mtree
+.Pq Vt str
+Where to save the
+.Pa /var/run
+mtree.
+The default location is
+.Pa /var/db/mtree/BSD.var-run.mtree .
.It Va local_startup
.Pq Vt str
List of directories to search for startup script files.
@@ -495,20 +543,44 @@ your console login will display the default hostname of
The NIS domain name of this host, or
.Dq Li NO
if NIS is not used.
+.It Va hostid_enable
+.Pq Vt bool
+If set to
+.Dq Li NO ,
+disable the generation or saving of the
+.Pa hostid
+and
+.Pa machine-id
+files at system boot and shutdown.
+.It Va hostid_file
+.Pq Vt str
+Path to the
+.Pa hostid
+file, default
+.Pa /etc/hostid .
+.It Va hostid_uuidgen_flags
+.Pq Vt str
+Flags passed to
+.Xr uuidgen 1
+when generating a software host UUID.
+This is used only if the system cannot determine a hardware UUID.
+Set to
+.Dq Li -r
+by default.
+.It Va machine_id_file
+.Pq Vt str
+Path to the
+.Pa machine-id
+file, default
+.Pa /etc/machine-id .
.It Va dhclient_program
.Pq Vt str
-Path to the DHCP client program
-.Pa ( /sbin/dhclient ,
-the
-.Ox
-DHCP client,
-is the default).
+Path to the DHCP client program, defaulting to
+.Pa /sbin/dhclient .
.It Va dhclient_flags
.Pq Vt str
Additional flags to pass to the DHCP client program.
-For the
-.Ox
-DHCP client, see the
+See the
.Xr dhclient 8
manpage for a description of the command line options available.
.It Va dhclient_flags_ Ns Aq Ar iface
@@ -703,7 +775,7 @@ is also set to
Setting this to
.Dq Li YES
will enable netflow logging via
-.Xr ng_netflow 4
+.Xr ng_netflow 4 .
.Pp
By default a ipfw rule is inserted and all packets are duplicated with
the ngtee command and netflow packets are sent to 127.0.0.1 on the netflow
@@ -730,7 +802,8 @@ Destination server port for receiving netflow data
.Pa 9995 ) .
.It Va ipfw_netflow_version
.Pq Vt int
-Do not set for using version 5 of the netflow protocol, set it to 9 for using version 9.
+Do not set for using version 5 of the netflow protocol, set it to 9 for using
+version 9.
.It Va ipfw_netflow_fib
.Pq Vt int
Only match packet in FIB
@@ -1279,7 +1352,7 @@ Set to
by default.
This setting will be identical to
.Dq Li YES ,
-if a dynamicrouting daemon is enabled, because redirect processing may
+if a dynamic routing daemon is enabled, because redirect processing may
cause performance issues for large routing tables.
If no such service is enabled, this setting behaves like a
.Dq Li NO .
@@ -1453,7 +1526,7 @@ there is
.Va ifconfig_ Ns Ao Ar interface Ac Ns Va _aliases
variable, which has the same functionality as
.Va ifconfig_ Ns Ao Ar interface Ac Ns Va _alias Ns Aq Ar n
-and can have all of entries in a variable like the following:
+and can have all of the entries in a variable like the following:
.Bd -literal
ifconfig_em0_aliases="\\
inet 127.0.0.251 netmask 0xffffffff \\
@@ -1499,7 +1572,7 @@ To create a vlan device named
.Li em0.101
on
.Li em0
-with the vlan tag 101 and the optional the IPv4 address 192.0.2.1/24:
+with the vlan tag 101 and the optional IPv4 address 192.0.2.1/24:
.Bd -literal
vlans_em0="101"
ifconfig_em0_101="inet 192.0.2.1/24"
@@ -1532,7 +1605,7 @@ command by setting the
variable.
One or more
.Xr wlan 4
-devices must be created for each wireless devices as of
+devices must be created for each wireless device as of
.Fx 8.0 .
Debugging flags for
.Xr wlan 4
@@ -1611,9 +1684,6 @@ may be configured.
It will be used for all interfaces with no
.Va ifconfig_ Ns Aq Ar interface
variable.
-This is intended to replace the no longer supported
-.Va pccard_ifconfig
-variable.
.Pp
It is also possible to rename an interface by doing:
.Bd -literal
@@ -1677,7 +1747,7 @@ all interfaces which do not have a corresponding
variable will be marked as
.Dq Li IFDISABLED
at creation.
-This means that all of IPv6 functionality on that interface
+This means that all IPv6 functionality on that interface
is completely disabled to enforce a security policy.
If the variable is set to
.Dq YES ,
@@ -1779,7 +1849,7 @@ IPv6 functionality on an interface should be configured by
.Va ifconfig_ Ns Ao Ar interface Ac Ns _ipv6 ,
instead of setting ifconfig parameters in
.Va ifconfig_ Ns Aq Ar interface .
-If this variable is empty, all of IPv6 configurations on the
+If this variable is empty, all IPv6 configurations on the
specified interface by other variables such as
.Va ipv6_prefix_ Ns Ao Ar interface Ac
will be ignored.
@@ -2062,7 +2132,7 @@ include the full path to the file.
By default, the files specified are
.Pa /etc/rc.conf
and
-.Pa /etc/rc.conf.local
+.Pa /etc/rc.conf.local .
.It Va zfs_enable
.Pq Vt bool
If set to
@@ -2076,6 +2146,13 @@ A space-separated list of ZFS pool names for which new pool GUIDs should be
assigned upon first boot.
This is useful when using a ZFS pool copied from a template, such as a virtual
machine image.
+.It Va zpool_upgrade
+.Pq Vt str
+A space-separated list of ZFS pool names for which the version should be
+upgraded upon first boot.
+This is useful when using a ZFS pool generated by the
+.Xr makefs 8
+utility.
.It Va gptboot_enable
.Pq Vt bool
If set to
@@ -2092,7 +2169,7 @@ utility.
If set to
.Dq Li YES ,
.Pa /etc/rc.d/gbde
-will attempt to automatically initialize your .bde devices in
+will attempt to automatically initialize the .bde devices specified in
.Pa /etc/fstab .
.It Va gbde_devices
.Pq Vt str
@@ -2241,6 +2318,12 @@ If set to
run the
.Xr syslogd 8
daemon.
+Note, the
+.Va syslogd_oomprotect
+variable is set to
+.Dq Li YES
+by default in
+.Pa /etc/defaults/rc.conf .
.It Va syslogd_program
.Pq Vt str
Path to
@@ -2303,7 +2386,30 @@ If set to
.Dq Li YES ,
run the
.Xr unbound 8
-daemon as a local caching resolver.
+daemon as a local caching DNS resolver.
+Note, the
+.Va local_unbound_oomprotect
+variable is set to
+.Dq Li YES
+by default in
+.Pa /etc/defaults/rc.conf .
+.It Va nscd_enable
+.Pq Vt bool
+Set to
+.Dq Li YES
+to start the
+.Xr nscd 8
+caching daemon for the
+.Nm nsswitch
+subsystem.
+.It Va nscd_flags
+.Pq Vt str
+If
+.Va nscd_enable
+is set to
+.Dq Li YES ,
+these flags are passed to
+.Xr nscd 8 .
.It Va kdc_enable
.Pq Vt bool
Set to
@@ -2385,12 +2491,12 @@ these are the flags to pass to it.
.Pq Vt bool
If set to
.Dq Li YES ,
-.Pa /etc/motd
+.Pa /var/run/motd
will be updated at boot time to reflect the kernel release
being run.
If set to
.Dq Li NO ,
-.Pa /etc/motd
+.Pa /var/run/motd
will not be updated.
.It Va nfs_client_enable
.Pq Vt bool
@@ -2848,7 +2954,7 @@ If set to
run the
.Xr bsnmpd 1
daemon at system boot time.
-Be sure to understand the security implications of running SNMP daemon
+Be sure to understand the security implications of running an SNMP daemon
on your host.
.It Va bsnmpd_flags
.Pq Vt str
@@ -2990,10 +3096,14 @@ If
is set to
.Dq Li YES ,
this is the name of the routing daemon to use.
+The default is
+.Xr routed 8 .
.It Va route6d_program
.Pq Vt str
The IPv6 equivalent of
.Va routed_program .
+The default is
+.Xr route6d 8 .
.It Va routed_flags
.Pq Vt str
If
@@ -3272,15 +3382,15 @@ This is the protocol type of the mouse connected to this host.
This variable must be set if
.Va moused_enable
is set to
-.Dq Li YES .
-The
+.Dq Li YES ,
+but defaults to
+.Dq Li auto
+as the
.Xr moused 8
daemon
is able to detect the appropriate mouse type automatically in many cases.
Set this variable to
-.Dq Li auto
-to let the daemon detect it, or
-select one from the following list if the automatic detection fails.
+one from the following list if the automatic detection fails.
.Pp
If the mouse is attached to the PS/2 mouse port, choose
.Dq Li auto
@@ -3511,19 +3621,6 @@ program.
The default is
.Dq Li -d ,
which causes missing directories to be created.
-.It Va mta_start_script
-.Pq Vt str
-This variable specifies the full path to the script to run to start
-a mail transfer agent.
-The default is
-.Pa /etc/rc.sendmail .
-The
-.Va sendmail_*
-variables which
-.Pa /etc/rc.sendmail
-uses are documented in the
-.Xr rc.sendmail 8
-manual page.
.It Va dumpdev
.Pq Vt str
Indicates the device (usually a swap partition) to which a crash dump
@@ -3755,6 +3852,12 @@ Set to
to start
.Xr sshd 8
at system boot time.
+Note, the
+.Va sshd_oomprotect
+variable is set to
+.Dq Li YES
+by default in
+.Pa /etc/defaults/rc.conf .
.It Va sshd_flags
.Pq Vt str
If
@@ -3910,11 +4013,11 @@ The configuration filename used by
utility.
The default value is
.Pa /etc/jail.conf .
-.Pa /etc/jail. Ns Ao Ar jname Ac Ns Va .conf
+.Pa /etc/jail\&. Ns Ao Va jname Ac Ns Pa .conf
and
-.Pa /etc/jail.conf.d/ Ns Ao Ar jname Ac Ns Va .conf
+.Pa /etc/jail.conf.d/ Ns Ao Va jname Ac Ns Pa .conf
will also be used if
-.Va Ao Ar jname Ac Va
+.Ao Va jname Ac
is set in
.Va jail_list .
.It Va jail_parallel_start
@@ -4200,7 +4303,7 @@ is also increased.
Set to
.Dq Li NO
to prevent the system from trying to
-recover pre-maturely terminated
+recover prematurely terminated
.Xr vi 1
sessions.
.It Va ugidfw_enable
@@ -4468,6 +4571,13 @@ Bus address of the USB Bluetooth controller.
Check the output of
.Xr usbconfig 8
on your system to find this information.
+.It Va utx_enable
+.Pq Vt bool
+Set to
+.Dq Li YES
+to enable user accounting through the
+.Xr utx 8
+facility.
.It Va netwait_enable
.Pq Vt bool
If set to
@@ -4674,6 +4784,162 @@ which means that the script will attempt to unlock all datasets.
Define the total number of seconds to wait for the zfskeys script
to unlock an encrypted dataset.
The default is 10.
+.It Va sendmail_enable
+.Pq Vt str
+If set to
+.Dq Li YES ,
+run the
+.Xr sendmail 8
+daemon at system boot time.
+If set to
+.Dq Li NO ,
+do not run a
+.Xr sendmail 8
+daemon to listen for incoming network mail.
+This does not preclude a
+.Xr sendmail 8
+daemon listening on the SMTP port of the loopback interface.
+The
+.Dq Li NONE
+option sets each
+.Va sendmail_enable ,
+.Va sendmail_submit_enable ,
+.Va sendmail_outbound_enable ,
+.Va sendmail_msp_queue_enable
+to
+.Dq Li NO .
+.It Va sendmail_cert_create
+.Pq Vt str
+If
+.Va sendmail_enable
+is set to
+.Dq Li YES ,
+create a signed certificate
+.Pa /etc/mail/certs/host.cert
+representing
+.Pa /etc/mail/certs/host.key
+by the CA certificate in
+.Pa /etc/mail/certs/cacert.pem .
+This will enable connecting hosts to negotiate STARTTLS allowing incoming
+email to be encrypted in transit.
+.Xr sendmail 8
+needs to be configured to use these generated files.
+The default configuration in
+.Pa /etc/mail/freebsd.mc
+has the required options in it.
+.It Va sendmail_cert_cn
+.Pq Vt str
+If
+.Va sendmail_enable
+is set to
+.Dq Li YES
+and
+.Va sendmail_cert_create
+is set to
+.Dq Li YES ,
+this is the Common Name (CN) of the certificate that will be created.
+If
+.Va sendmail_cert_cn
+is not set, the system's hostname will be used.
+If there is no hostname set,
+.Dq Li amnesiac
+will be used.
+.It Va sendmail_flags
+.Pq Vt str
+If
+.Va sendmail_enable
+is set to
+.Dq Li YES ,
+these are the flags to pass to the
+.Xr sendmail 8
+daemon.
+.It Va sendmail_submit_enable
+.Pq Vt bool
+If set to
+.Dq Li YES
+and
+.Va sendmail_enable
+is set to
+.Dq Li NO ,
+run
+.Xr sendmail 8
+using
+.Va sendmail_submit_flags
+instead of
+.Va sendmail_flags .
+This is intended to allow local mail submission via
+a localhost-only listening SMTP service required for running
+.Xr sendmail 8
+as a non-set-user-ID binary.
+Note that this does not work inside
+.Xr jail 2
+systems, as jails do not allow binding to just the localhost interface.
+.It Va sendmail_submit_flags
+.Pq Vt str
+If
+.Va sendmail_enable
+is set to
+.Dq Li NO
+and
+.Va sendmail_submit_enable
+is set to
+.Dq Li YES ,
+these are the flags to pass to the
+.Xr sendmail 8
+daemon.
+.It Va sendmail_outbound_enable
+.Pq Vt bool
+If set to
+.Dq Li YES
+and both
+.Va sendmail_enable
+and
+.Va sendmail_submit_enable
+are set to
+.Dq Li NO ,
+run
+.Xr sendmail 8
+using
+.Va sendmail_outbound_flags
+instead of
+.Va sendmail_flags .
+This is intended to allow local mail queue management
+for systems that do not offer a listening SMTP service.
+.It Va sendmail_outbound_flags
+.Pq Vt str
+If both
+.Va sendmail_enable
+and
+.Va sendmail_submit_enable
+are set to
+.Dq Li NO
+and
+.Va sendmail_outbound_enable
+is set to
+.Dq Li YES ,
+these are the flags to pass to the
+.Xr sendmail 8
+daemon.
+.It Va sendmail_msp_queue_enable
+.Pq Vt bool
+If set to
+.Dq Li YES ,
+start a client (MSP) queue runner
+.Xr sendmail 8
+daemon at system boot time.
+As of sendmail 8.12, a separate queue is used for command line
+submissions.
+The client queue runner ensures that nothing is
+left behind in the submission queue.
+.It Va sendmail_msp_queue_flags
+.Pq Vt str
+If
+.Va sendmail_msp_queue_enable
+is set to
+daemon.
+.Dq Li YES ,
+these are the flags to pass to the
+.Xr sendmail 8
.El
.Sh FILES
.Bl -tag -width "/etc/defaults/rc.conf" -compact
@@ -4685,12 +4951,14 @@ The default is 10.
.El
.Sh SEE ALSO
.Xr chmod 1 ,
-.Xr gdb 1 ,
-.Xr info 1 ,
+.Xr cpuset 1 ,
+.Xr gdb 1 Pq Pa ports/devel/gdb ,
.Xr kbdcontrol 1 ,
.Xr limits 1 ,
.Xr protect 1 ,
.Xr sh 1 ,
+.Xr umask 1 ,
+.Xr uuidgen 1 ,
.Xr vi 1 ,
.Xr vidcontrol 1 ,
.Xr bridge 4 ,
@@ -4759,11 +5027,11 @@ The default is 10.
.Xr quotacheck 8 ,
.Xr quotaon 8 ,
.Xr rc 8 ,
-.Xr rc.sendmail 8 ,
.Xr rc.subr 8 ,
.Xr rcorder 8 ,
.Xr rfcomm_pppd 8 ,
.Xr route 8 ,
+.Xr route6d 8 ,
.Xr routed 8 ,
.Xr rpc.lockd 8 ,
.Xr rpc.statd 8 ,
@@ -4773,6 +5041,7 @@ The default is 10.
.Xr rwhod 8 ,
.Xr savecore 8 ,
.Xr sdpd 8 ,
+.Xr sendmail 8 ,
.Xr service 8 ,
.Xr sshd 8 ,
.Xr swapon 8 ,
@@ -4781,6 +5050,7 @@ The default is 10.
.Xr sysrc 8 ,
.Xr unbound 8 ,
.Xr usbconfig 8 ,
+.Xr utx 8 ,
.Xr wlandebug 8 ,
.Xr yp 8 ,
.Xr ypbind 8 ,
diff --git a/share/man/man5/rctl.conf.5 b/share/man/man5/rctl.conf.5
index 3bcc6141575d..bf64e54fc567 100644
--- a/share/man/man5/rctl.conf.5
+++ b/share/man/man5/rctl.conf.5
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 14, 2011
+.Dd October 6, 2023
.Dt RCTL.CONF 5
.Os
.Sh NAME
@@ -63,7 +61,7 @@ To limit the number of processes for users in login class "testing",
use a rule like
.Bd -literal -offset indent
# Resource limits for the "testing" class.
-loginclass:testing:nproc:deny=100/user # At most 100 processes per user
+loginclass:testing:maxproc:deny=100/user # At most 100 processes per user
.Ed
.Sh SEE ALSO
.Xr rctl 8
diff --git a/share/man/man5/regdomain.5 b/share/man/man5/regdomain.5
index 495f4b70f1f7..a9408813a127 100644
--- a/share/man/man5/regdomain.5
+++ b/share/man/man5/regdomain.5
@@ -21,8 +21,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd April 13, 2008
.Dt REGDOMAIN 5
.Os
diff --git a/share/man/man5/remote.5 b/share/man/man5/remote.5
index 6bb598d64efe..63ff8318124b 100644
--- a/share/man/man5/remote.5
+++ b/share/man/man5/remote.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)remote.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd October 20, 2003
.Dt REMOTE 5
.Os
@@ -92,7 +89,7 @@ serial port.
When a modem is used, the data rate used to communicate
with the remote modem may be different than this rate.
This is a decimal number.
-The default rate is 9600 bits per second.
+The default rate is 115200 bits per second.
.It Cm \&cm
(str)
An initial connection message to be sent to the remote host.
diff --git a/share/man/man5/resolver.5 b/share/man/man5/resolver.5
index 468c635839c6..f7f1b1d6f9ea 100644
--- a/share/man/man5/resolver.5
+++ b/share/man/man5/resolver.5
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)resolver.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
-.Dd November 9, 2021
+.Dd November 23, 2022
.Dt RESOLVER 5
.Os
.Sh NAME
@@ -46,8 +43,10 @@ by the resolver routines the first time they are invoked by a process.
The file is designed to be human readable and contains a list of
keywords with values that provide various types of resolver information.
.Pp
-On a normally configured system this file should not be necessary.
-The only name server to be queried will be on the local machine,
+On a normally configured system, setting this file manually should not
+be necessary.
+The only name server(s) to be queried will be on the local machine
+or automatically configured using DHCP or a similar mechanism,
the domain name is determined from the host name,
and the domain search path is constructed from the domain name.
.Pp
@@ -132,7 +131,7 @@ in _res.options.
sets
.Dv RES_USEVC
to use TCP instead of UDP for queries.
-.It Sy ndots: Ns Ar n
+.It Sy ndots : Ns Ar n
sets a threshold for the number of dots which must appear in a name given to
.Fn res_query
(see
@@ -148,7 +147,7 @@ meaning that if there are any dots in a name, the name
will be tried first as an absolute name before any
.Em search list
elements are appended to it.
-.It Sy timeout: Ns Ar n
+.It Sy timeout : Ns Ar n
sets the initial amount of time the resolver will wait
for a response from a remote
name server before retrying the query via a different name server.
@@ -161,7 +160,7 @@ the allowed maximum is
.Dv RES_MAXRETRANS
(see
.In resolv.h ) .
-.It Sy attempts: Ns Ar n
+.It Sy attempts : Ns Ar n
sets the number of times the resolver will send a query to each of
its name servers
before giving up and returning an error to the calling application.
@@ -180,7 +179,7 @@ the resolver from obeying the standard
and
.Sy search
rules with the given name.
-.It Sy reload-period: Ns Ar n
+.It Sy reload-period : Ns Ar n
The resolver checks the modification time of
.Pa /etc/resolv.conf
every
@@ -220,14 +219,34 @@ The file
resides in
.Pa /etc .
.El
+.Sh EXAMPLES
+A basic resolv.conf file could be in the following form.
+.Bd -literal -offset indent
+# The domain directive is only necessary, if your local
+# router advertises something like localdomain and you have
+# set up your hostnames via an external domain.
+domain localdomain.tld
+
+# In case you a running a local dns server or caching name server
+# like local-unbound(8) for example.
+nameserver 127.0.0.1
+
+# IP address of the local or ISP name service
+nameserver 192.168.2.1
+
+# Fallback nameservers, in this case these from Google.
+nameserver 8.8.8.8
+nameserver 4.4.4.4
+
+# Attach an OPT pseudo-RR for the EDNS0 extension,
+# as specified in RFC 2671.
+options edns0
+.Ed
.Sh SEE ALSO
.Xr gethostbyname 3 ,
.Xr resolver 3 ,
.Xr hostname 7 ,
.Xr resolvconf 8
-.Rs
-.%T "Name Server Operations Guide for BIND"
-.Re
.Sh HISTORY
The
.Nm resolv.conf
diff --git a/share/man/man5/services.5 b/share/man/man5/services.5
index adda70a92dab..7a94ae4e4f1c 100644
--- a/share/man/man5/services.5
+++ b/share/man/man5/services.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)services.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd April 4, 2010
.Dt SERVICES 5
.Os
diff --git a/share/man/man5/shells.5 b/share/man/man5/shells.5
index 33a217b4b8a9..13c430cd3ef5 100644
--- a/share/man/man5/shells.5
+++ b/share/man/man5/shells.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)shells.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd June 5, 1993
.Dt SHELLS 5
.Os
diff --git a/share/man/man5/smbfs.5 b/share/man/man5/smbfs.5
index 79eaa9b20b39..7be90c3ba882 100644
--- a/share/man/man5/smbfs.5
+++ b/share/man/man5/smbfs.5
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 6, 2022
.Dt SMBFS 5
.Os
@@ -64,7 +62,6 @@ Users are advised to evaluate the
.Pa sysutils/fusefs-smbnetfs
port instead.
.Ef
-.Pp
.Sh SEE ALSO
.Xr smbutil 1 ,
.Xr mount_smbfs 8
@@ -90,6 +87,7 @@ The
device driver first appeared in
.Fx 4.4 .
.Sh AUTHORS
+.An -nosplit
The
.Nm
device driver was written by
diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5
index 82c32772e762..5301fc488021 100644
--- a/share/man/man5/src.conf.5
+++ b/share/man/man5/src.conf.5
@@ -1,6 +1,5 @@
.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
-.\" $FreeBSD$
-.Dd July 6, 2022
+.Dd April 23, 2024
.Dt SRC.CONF 5
.Os
.Sh NAME
@@ -79,7 +78,11 @@ and
.Va MAKEOBJDIRPREFIX
as they are environment-only variables.
.Pp
-The values of variables are ignored regardless of their setting;
+The values of
+.Va WITH_
+and
+.Va WITHOUT_
+variables are ignored regardless of their setting;
even if they would be set to
.Dq Li FALSE
or
@@ -127,9 +130,6 @@ checks.
Do not build
.Xr at 1
and related utilities.
-.It Va WITHOUT_ATM
-Do not build
-programs and libraries related to ATM networking.
.It Va WITHOUT_AUDIT
Do not build audit support into system programs.
.It Va WITHOUT_AUTHPF
@@ -183,7 +183,7 @@ Do not build or install
.Xr bhyve 8 ,
associated utilities, and examples.
.Pp
-This option only affects amd64/amd64.
+This option only affects amd64/amd64 and arm64/aarch64.
.It Va WITH_BHYVE_SNAPSHOT
Include support for save and restore (snapshots) in
.Xr bhyve 8
@@ -264,19 +264,11 @@ Build some programs without optional bzip2 support.
.It Va WITHOUT_CALENDAR
Do not build
.Xr calendar 1 .
-.It Va WITHOUT_CAPSICUM
-Do not build Capsicum support into system programs.
-When set, it enforces these options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_CASPER
-.El
.It Va WITHOUT_CAROOT
Do not add the trusted certificates from the Mozilla NSS bundle to
base.
.It Va WITHOUT_CASPER
-Do not build Casper program and related libraries.
+This option has no effect.
.It Va WITH_CCACHE_BUILD
Use
.Xr ccache 1
@@ -386,12 +378,6 @@ Build clang-format.
.It Va WITHOUT_CLANG_FULL
Avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
the Clang C/C++ compiler.
-.It Va WITHOUT_CLANG_IS_CC
-Do not install links to the Clang C/C++ compiler as
-.Pa /usr/bin/cc ,
-.Pa /usr/bin/c++
-and
-.Pa /usr/bin/cpp .
.It Va WITHOUT_CLEAN
Do not clean before building world and/or kernel.
.It Va WITHOUT_CPP
@@ -436,6 +422,8 @@ When set, it enforces these options:
.It
.Va WITHOUT_LDNS_UTILS
.It
+.Va WITHOUT_LOADER_ZFS
+.It
.Va WITHOUT_OPENSSH
.It
.Va WITHOUT_OPENSSL
@@ -468,67 +456,29 @@ Do not build
.Xr cxgbetool 8
.Pp
This is a default setting on
-arm/armv6, arm/armv7, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, powerpc/powerpc and riscv/riscv64.
.It Va WITH_CXGBETOOL
Build
.Xr cxgbetool 8
.Pp
This is a default setting on
amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le.
-.It Va WITHOUT_CXX
-Do not build C++ headers and runtime libraries.
-It also prevents building binaries and libraries written in C++, including
-.Xr devd 8 .
-When set, it enforces these options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_CLANG
-.It
-.Va WITHOUT_CLANG_EXTRAS
-.It
-.Va WITHOUT_CLANG_FORMAT
-.It
-.Va WITHOUT_CLANG_FULL
-.It
-.Va WITHOUT_DTRACE_TESTS
-.It
-.Va WITHOUT_GOOGLETEST
-.It
-.Va WITHOUT_LLVM_COV
-.It
-.Va WITHOUT_OFED
-.It
-.Va WITHOUT_OFED_EXTRA
-.It
-.Va WITHOUT_OPENMP
-.It
-.Va WITHOUT_PMC
-.It
-.Va WITHOUT_TESTS
-.El
.It Va WITHOUT_DEBUG_FILES
Avoid building or installing standalone debug files for each
executable binary and shared library.
.It Va WITH_DETECT_TZ_CHANGES
Make the time handling code detect changes to the timezone files.
-.It Va WITHOUT_DIALOG
-Do not build
+.It Va WITH_DIALOG
+Do build
.Xr dialog 1 ,
.Xr dialog 3 ,
.Xr dpv 1 ,
and
.Xr dpv 3 .
-When set, it enforces these options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_BSDINSTALL
-.El
.It Va WITHOUT_DICT
Do not build the Webster dictionary files.
.It Va WITH_DIRDEPS_BUILD
-This is an experimental build system.
+This is an alternate build system.
For details see
https://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
Build commands can be seen from the top-level with:
@@ -562,7 +512,14 @@ The build hides commands executed unless
is defined.
.Pp
Note that there is currently no mass install feature for this.
+This build is designed for producing packages, that can then be installed
+on a target system.
.Pp
+The implementation in
+.Fx
+is incomplete.
+Completion would require leaf directories for building each kernel
+and package so that their dependencies can be tracked.
When set, it enforces these options:
.Pp
.Bl -item -compact
@@ -573,6 +530,10 @@ When set, it enforces these options:
When set, these options are also in effect:
.Pp
.Bl -inset -compact
+.It Va WITH_META_ERROR_TARGET
+(unless
+.Va WITHOUT_META_ERROR_TARGET
+is set explicitly)
.It Va WITH_META_MODE
(unless
.Va WITHOUT_META_MODE
@@ -609,6 +570,13 @@ This must be set in the environment, make command line, or
.Pa /etc/src-env.conf ,
not
.Pa /etc/src.conf .
+.It Va WITH_DISK_IMAGE_TOOLS_BOOTSTRAP
+Build
+.Xr etdump 1 ,
+.Xr makefs 8
+and
+.Xr mkimg 1
+as bootstrap tools.
.It Va WITHOUT_DMAGENT
Do not build dma Mail Transport Agent.
.It Va WITHOUT_DOCCOMPRESS
@@ -622,6 +590,11 @@ When set, it enforces these options:
.It
.Va WITHOUT_CTF
.El
+.It Va WITH_DTRACE_ASAN
+Compile userspace DTrace code (libdtrace, dtrace(1), lockstat(1), plockstat(1))
+with address and undefined behavior sanitizers.
+Requires that Clang be used as the base system compiler
+and that the runtime support library is available.
.It Va WITH_DTRACE_TESTS
Build and install the DTrace test suite in
.Pa /usr/tests/cddl/usr.sbin/dtrace .
@@ -645,7 +618,7 @@ and
.Xr efivar 8 .
.Pp
This is a default setting on
-powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le.
+i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_EFI
Build
.Xr efivar 3
@@ -653,7 +626,7 @@ and
.Xr efivar 8 .
.Pp
This is a default setting on
-amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm/armv7 and arm64/aarch64.
.It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
Do not build ELF Tool Chain tools
(addr2line, nm, size, strings and strip)
@@ -666,11 +639,18 @@ Avoid installing examples to
.Pa /usr/share/examples/ .
.It Va WITH_EXPERIMENTAL
Include experimental features in the build.
-.It Va WITH_EXTRA_TCP_STACKS
-Build extra TCP stack modules.
+.It Va WITHOUT_FDT
+Do not build Flattened Device Tree support as part of the base system.
+This includes the device tree compiler (dtc) and libfdt support library.
+.Pp
+This is a default setting on
+amd64/amd64 and i386/i386.
.It Va WITH_FDT
Build Flattened Device Tree support as part of the base system.
This includes the device tree compiler (dtc) and libfdt support library.
+.Pp
+This is a default setting on
+arm/armv7, arm64/aarch64, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITHOUT_FILE
Do not build
.Xr file 1
@@ -736,12 +716,12 @@ Do not build HTML docs.
Do not build or install HyperV utilities.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, arm64/aarch64, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_HYPERV
Build or install HyperV utilities.
.Pp
This is a default setting on
-amd64/amd64 and i386/i386.
+amd64/amd64, arm64/aarch64 and i386/i386.
.It Va WITHOUT_ICONV
Do not build iconv as part of libc.
.It Va WITHOUT_INCLUDES
@@ -775,15 +755,6 @@ Do not build
.Xr inetd 8 .
.It Va WITHOUT_INET_SUPPORT
Build libraries, programs, and kernel modules without IPv4 support.
-.It Va WITH_INIT_ALL_PATTERN
-Build the base system or kernel with stack variables initialized to
-.Pq compiler defined
-debugging patterns on function entry.
-This option requires the clang compiler.
-.It Va WITH_INIT_ALL_ZERO
-Build the base system or kernel with stack variables initialized
-to zero on function entry.
-This option requires that the clang compiler be used.
.It Va WITHOUT_INSTALLLIB
Set this to not install optional libraries.
For example, when creating a
@@ -843,9 +814,17 @@ is set explicitly)
Build some programs without Kerberos support, like
.Xr ssh 1 ,
.Xr telnet 1 ,
-.Xr sshd 8 ,
and
-.Xr telnetd 8 .
+.Xr sshd 8 .
+.It Va WITH_KERNEL_BIN
+Generate and install kernel.bin from kernel as part of the normal build and
+install processes for the kernel. Available only on arm and arm64.
+
+Usually this will be added to the kernel config file with:
+
+makeoptions WITH_KERNEL_BIN=1
+
+though it can also be used on the command line.
.It Va WITH_KERNEL_RETPOLINE
Enable the "retpoline" mitigation for CVE-2017-5715 in the kernel
build.
@@ -897,14 +876,21 @@ On 64-bit platforms, do not build 32-bit library set and a
runtime linker.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64le and riscv/riscv64.
+.It Va WITH_LIB32
+On 64-bit platforms, build the 32-bit library set and a
+.Nm ld-elf32.so.1
+runtime linker.
+.Pp
+This is a default setting on
+amd64/amd64, arm64/aarch64 and powerpc/powerpc64.
.It Va WITHOUT_LLD
Do not build LLVM's lld linker.
.It Va WITHOUT_LLDB
Do not build the LLDB debugger.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7 and riscv/riscv64.
.It Va WITH_LLDB
Build the LLDB debugger.
.Pp
@@ -914,23 +900,36 @@ amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64 and po
Do not build the LLD linker during the bootstrap phase of
the build.
To be able to build the system an alternate linker must be provided via XLD.
-.It Va WITHOUT_LLD_IS_LD
-Do not install a
-.Pa /usr/bin/ld symlink
-to
-.Pa ld.lld .
-The system will not have a usable tool chain unless a linker is provided
-some other way.
.It Va WITHOUT_LLVM_ASSERTIONS
Disable debugging assertions in LLVM.
.It Va WITH_LLVM_BINUTILS
-Install LLVM's binutils (ar, addr2line, nm, etc.) instead of ELF Tool Chain's.
+Install LLVM's binutils (without an llvm- prefix),
+instead of ELF Tool Chain's tools.
+This includes
+.Xr addr2line 1 ,
+.Xr ar 1 ,
+.Xr nm 1 ,
+.Xr objcopy 1 ,
+.Xr ranlib 1 ,
+.Xr readelf 1 ,
+.Xr size 1 ,
+and
+.Xr strip 1 .
+Regardless of this setting, LLVM tools are used for
+.Xr c++filt 1
+and
+.Xr objdump 1 .
+.Xr strings 1
+is always provided by ELF Tool Chain.
.It Va WITHOUT_LLVM_COV
Do not build the
.Xr llvm-cov 1
tool.
.It Va WITHOUT_LLVM_CXXFILT
Install ELF Tool Chain's cxxfilt as c++filt, instead of LLVM's llvm-cxxfilt.
+.It Va WITH_LLVM_FULL_DEBUGINFO
+Generate full debug information for LLVM libraries and tools, which uses
+more disk space and build resources, but allows for easier debugging.
.It Va WITHOUT_LLVM_TARGET_AARCH64
Do not build LLVM target support for AArch64.
The
@@ -989,13 +988,14 @@ Do not build LLVM target support for X86.
The
.Va LLVM_TARGET_ALL
option should be used rather than this in most cases.
+.It Va WITH_LOADER_BIOS_TEXTONLY
+Use the old, FreeBSD 12 vidconsole.c.
+This only supports text mode without teken, without any graphics, font or video mode support.
+This setting only affects the i386 and amd64 BIOS boot loader.
.It Va WITH_LOADER_EFI_SECUREBOOT
Enable building
.Xr loader 8
with support for verification based on certificates obtained from UEFI.
-.It Va WITH_LOADER_FIREWIRE
-Enable firewire support in /boot/loader on x86.
-This option is a nop on all other platforms.
.It Va WITHOUT_LOADER_GELI
Disable inclusion of GELI crypto support in the boot chain binaries.
.Pp
@@ -1005,17 +1005,17 @@ powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le.
Build GELI bootloader support.
.Pp
This is a default setting on
-amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
.It Va WITHOUT_LOADER_KBOOT
Do not build kboot, a linuxboot environment loader
.Pp
This is a default setting on
-arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_LOADER_KBOOT
Build kboot, a linuxboot environment loader
.Pp
This is a default setting on
-amd64/amd64 and powerpc/powerpc64.
+amd64/amd64, arm64/aarch64 and powerpc/powerpc64.
.It Va WITHOUT_LOADER_LUA
Do not build LUA bindings for the boot loader.
.Pp
@@ -1025,12 +1025,12 @@ powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le.
Build LUA bindings for the boot loader.
.Pp
This is a default setting on
-amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
.It Va WITHOUT_LOADER_OFW
Disable building of openfirmware bootloader components.
.Pp
This is a default setting on
-amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
.It Va WITH_LOADER_OFW
Build openfirmware bootloader components.
.Pp
@@ -1040,12 +1040,12 @@ powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le.
Disable building of ubldr.
.Pp
This is a default setting on
-amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_LOADER_UBOOT
Build ubldr.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, powerpc/powerpc and powerpc/powerpc64.
+arm/armv7, powerpc/powerpc and powerpc/powerpc64.
.It Va WITH_LOADER_VERBOSE
Build with extra verbose debugging in the loader.
May explode already nearly too large loader over the limit.
@@ -1077,6 +1077,14 @@ The kernel has to be built with a module to parse the manifest.
.Pp
Depends on
.Va WITH_LOADER_VERIEXEC .
+.It Va WITH_LOADER_VERIEXEC_VECTX
+Enable building
+.Xr loader 8
+with support for hashing and verifying kernel and modules as a side effect
+of loading.
+.Pp
+Depends on
+.Va WITH_LOADER_VERIEXEC .
.It Va WITHOUT_LOADER_ZFS
Do not build ZFS file system boot loader support.
.It Va WITHOUT_LOCALES
@@ -1094,6 +1102,8 @@ and related programs.
Build
.Xr ls 1
without support for colors to distinguish file types.
+.It Va WITHOUT_MACHDEP_OPTIMIZATIONS
+Prefer machine-independent non-assembler code in libc and libm.
.It Va WITHOUT_MAIL
Do not build any mail support (MUA or MTA).
When set, it enforces these options:
@@ -1141,8 +1151,8 @@ is set explicitly)
.It Va WITHOUT_MANCOMPRESS
Do not install compressed man pages.
Only the uncompressed versions will be installed.
-.It Va WITH_MANSPLITPKG
-Split man pages into their own packages during make package.
+.It Va WITHOUT_MANSPLITPKG
+Do not split man pages into their own packages during make package.
.It Va WITHOUT_MAN_UTILS
Do not build utilities for manual pages,
.Xr apropos 1 ,
@@ -1151,6 +1161,25 @@ Do not build utilities for manual pages,
.Xr whatis 1 ,
.Xr manctl 8 ,
and related support files.
+.It Va WITH_META_ERROR_TARGET
+Enable the META_MODE .ERROR target.
+.Pp
+This target will copy the meta file of a failed target
+to
+.Va ERROR_LOGDIR
+(default is
+.Ql ${SRCTOP:H}/error )
+to help with failure analysis.
+Depends on
+.Va WITH_META_MODE .
+This default when
+.Va WITH_DIRDEPS_BUILD
+is set.
+.Pp
+This must be set in the environment, make command line, or
+.Pa /etc/src-env.conf ,
+not
+.Pa /etc/src.conf .
.It Va WITH_META_MODE
Create
.Xr make 1
@@ -1212,7 +1241,7 @@ Do not build
.Xr mlx5tool 8
.Pp
This is a default setting on
-arm/armv6, arm/armv7, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, powerpc/powerpc and riscv/riscv64.
.It Va WITH_MLX5TOOL
Build
.Xr mlx5tool 8
@@ -1230,8 +1259,6 @@ When set, it enforces these options:
.Pp
.Bl -item -compact
.It
-.Va WITHOUT_ATM
-.It
.Va WITHOUT_BLUETOOTH
.El
.Pp
@@ -1245,6 +1272,15 @@ is set explicitly)
.El
.It Va WITHOUT_NETGRAPH_SUPPORT
Build libraries, programs, and kernel modules without netgraph support.
+.It Va WITHOUT_NETLINK
+Do not build
+.Xr genl 1
+utility.
+.It Va WITHOUT_NETLINK_SUPPORT
+Make libraries and programs use rtsock and
+.Xr sysctl 3
+interfaces instead of
+.Xr snl 3 .
.It Va WITHOUT_NIS
Do not build
.Xr NIS 8
@@ -1276,26 +1312,28 @@ will not be built either if this option is set.
Do not build
.Xr ntpd 8
and related programs.
-.It Va WITHOUT_NVME
-Do not build nvme related tools and kernel modules.
-.Pp
-This is a default setting on
-arm/armv6, arm/armv7, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
-.It Va WITH_NVME
-Build nvme related tools and kernel modules.
-.Pp
-This is a default setting on
-amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le.
+.It Va WITHOUT_NUAGEINIT
+Do not install the limited cloud init support scripts.
.It Va WITHOUT_OFED
-Disable the build of the
+Do not build the
.Dq "OpenFabrics Enterprise Distribution"
-Infiniband software stack, including kernel modules and userspace libraries.
+InfiniBand software stack, including kernel modules and userspace libraries.
+.Pp
+This is a default setting on
+arm/armv7.
When set, it enforces these options:
.Pp
.Bl -item -compact
.It
.Va WITHOUT_OFED_EXTRA
.El
+.It Va WITH_OFED
+Build the
+.Dq "OpenFabrics Enterprise Distribution"
+InfiniBand software stack, including kernel modules and userspace libraries.
+.Pp
+This is a default setting on
+amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_OFED_EXTRA
Build the non-essential components of the
.Dq "OpenFabrics Enterprise Distribution"
@@ -1306,12 +1344,12 @@ Enable building LDAP support for kerberos using an openldap client from ports.
Do not build LLVM's OpenMP runtime.
.Pp
This is a default setting on
-arm/armv6, arm/armv7 and powerpc/powerpc.
+arm/armv7 and powerpc/powerpc.
.It Va WITH_OPENMP
Build LLVM's OpenMP runtime.
.Pp
This is a default setting on
-amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITHOUT_OPENSSH
Do not build OpenSSH.
.It Va WITHOUT_OPENSSL
@@ -1330,6 +1368,8 @@ When set, it enforces these options:
.It
.Va WITHOUT_LDNS_UTILS
.It
+.Va WITHOUT_LOADER_ZFS
+.It
.Va WITHOUT_OPENSSH
.It
.Va WITHOUT_OPENSSL_KTLS
@@ -1353,12 +1393,12 @@ is set explicitly)
Do not include kernel TLS support in OpenSSL.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, i386/i386, powerpc/powerpc and riscv/riscv64.
.It Va WITH_OPENSSL_KTLS
Include kernel TLS support in OpenSSL.
.Pp
This is a default setting on
-amd64/amd64 and arm64/aarch64.
+amd64/amd64, arm64/aarch64, powerpc/powerpc64 and powerpc/powerpc64le.
.It Va WITHOUT_PAM
Do not build PAM library and modules.
.Bf -symbolic
@@ -1388,6 +1428,15 @@ When set, it enforces these options:
.It Va WITHOUT_PIE
Do not build dynamically linked binaries as
Position-Independent Executable (PIE).
+.Pp
+This is a default setting on
+arm/armv7, i386/i386 and powerpc/powerpc.
+.It Va WITH_PIE
+Build dynamically linked binaries as
+Position-Independent Executable (PIE).
+.Pp
+This is a default setting on
+amd64/amd64, arm64/aarch64, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITHOUT_PKGBOOTSTRAP
Do not build
.Xr pkg 7
@@ -1396,10 +1445,6 @@ bootstrap tool.
Do not build
.Xr pmccontrol 8
and related programs.
-.It Va WITHOUT_PORTSNAP
-Do not build or install
-.Xr portsnap 8
-and related files.
.It Va WITHOUT_PPP
Do not build
.Xr ppp 8
@@ -1409,6 +1454,8 @@ Build profiled libraries for use with
.Xr gprof 8 .
This option is deprecated and may not be present in a future version of
.Fx .
+.It Va WITHOUT_PTHREADS_ASSERTIONS
+Disable debugging assertions in pthreads library.
.It Va WITHOUT_QUOTAS
Do not build
.Xr quota 1
@@ -1456,6 +1503,11 @@ utility.
Build
.Xr rpcbind 8
with warmstart support.
+.It Va WITHOUT_SCTP_SUPPORT
+Disable support in the kernel for the
+.Xr sctp 4
+Stream Control Transmission Protocol
+loadable kernel module.
.It Va WITHOUT_SENDMAIL
Do not build
.Xr sendmail 8
@@ -1471,12 +1523,6 @@ as a set-user-ID root program.
Do not build the
.Bx 4.4
legacy docs.
-.It Va WITHOUT_SHARED_TOOLCHAIN
-Build the toolchain binaries as statically linked executables.
-The set includes
-.Xr cc 1 ,
-.Xr make 1
-and necessary utilities like assembler, linker and library archive manager.
.It Va WITH_SORT_THREADS
Enable threads in
.Xr sort 1 .
@@ -1505,7 +1551,7 @@ When set, it enforces these options:
.Va WITHOUT_KERNEL_SYMBOLS
.El
.It Va WITHOUT_SSP
-Do not build world with propolice stack smashing protection.
+Do not build world with stack smashing protection.
.It Va WITH_STAGING
Enable staging of files to a stage tree.
This can be best thought of as auto-install to
@@ -1640,7 +1686,7 @@ Do not build or install
and
.Xr tftpd 8 .
.It Va WITHOUT_TOOLCHAIN
-Do not install header or
+Do not install
programs used for program development,
compilers, debuggers etc.
When set, it enforces these options:
@@ -1655,8 +1701,6 @@ When set, it enforces these options:
.It
.Va WITHOUT_CLANG_FULL
.It
-.Va WITHOUT_INCLUDES
-.It
.Va WITHOUT_LLD
.It
.Va WITHOUT_LLDB
@@ -1672,6 +1716,9 @@ and that the runtime support library is available
Do not build
.Xr unbound 8
and related programs.
+.It Va WITHOUT_UNDEFINED_VERSION
+Link libraries with --no-undefined-version to ensure all symbols are
+provided.
.It Va WITHOUT_UNIFIED_OBJDIR
Use the historical object directory format for
.Xr build 7
@@ -1772,6 +1819,46 @@ When set, it enforces these options:
.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
Build leapsecond information in to the timezone database.
.El
+.Pp
+The following options accept a single value from a list of valid values.
+.Bl -tag -width indent
+.It Va INIT_ALL
+Control default initialization of stack variables in C and C++ code.
+Options other than
+.Li none
+require the Clang compiler or GCC 12.0 or later.
+The default value is
+.Li none .
+Valid values are:
+.Bl -tag -width indent
+.It Li none
+Do not initialize stack variables (standard C/C++ behavior).
+.It Li pattern
+Build the base system or kernel with stack variables initialized to
+.Pq compiler defined
+debugging patterns on function entry.
+.It Li zero
+Build the base system or kernel with stack variables initialized
+to zero on function entry.
+This value is converted to
+.Li none
+for amd64 kernel builds due to incompatability with ifunc memset.
+.El
+.It Va LIBC_MALLOC
+Specify the
+.Xr malloc 3
+implementation used by libc.
+The default value is
+.Li jemalloc .
+Valid values are:
+.Bl -tag -width indent
+.It Li jemalloc
+.El
+.Pp
+Other implementations are expected in the future in both
+.Fx
+and downstream consumers.
+.El
.Sh FILES
.Bl -tag -compact -width Pa
.It Pa /etc/src.conf
diff --git a/share/man/man5/stab.5 b/share/man/man5/stab.5
index 194c6afd6533..3070c5760ac6 100644
--- a/share/man/man5/stab.5
+++ b/share/man/man5/stab.5
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)stab.5 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd June 10, 2010
.Dt STAB 5
.Os
diff --git a/share/man/man5/style.Makefile.5 b/share/man/man5/style.Makefile.5
index 4ced85704640..cc5d2f6bb28a 100644
--- a/share/man/man5/style.Makefile.5
+++ b/share/man/man5/style.Makefile.5
@@ -1,4 +1,4 @@
-.\" Copyright (c) 2002-2003 David O'Brien <obrien@FreeBSD.org>
+.\" Copyright (c) 2002-2003, 2023 David O'Brien <obrien@FreeBSD.org>
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -25,9 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 18, 2021
+.Dd July 17, 2023
.Dt STYLE.MAKEFILE 5
.Os
.Sh NAME
@@ -43,7 +41,7 @@ source tree.
.Bl -bullet
.It
.Cm .PATH :
-comes next if needed, and is spelled
+comes first if needed, and is spelled
.Dq Li ".PATH: " ,
with a single
.Tn ASCII
@@ -66,7 +64,7 @@ order is:
.Va PROG Ns / Ns Oo Va SH Oc Ns Va LIB Ns / Ns Va SCRIPTS
.Va FILES
.Va LINKS
-.Oo Va NO_ Oc Ns Va MAN
+.Va MAN
.Va MLINKS
.Va INCS
.Va SRCS
@@ -88,7 +86,7 @@ order is:
.Va INCS
.Va FILES
.Va LINKS
-.Oo Va NO_ Oc Ns Va MAN
+.Va MAN
.Va MLINKS .
.It
Omit
@@ -243,8 +241,6 @@ The simplest program
.Pa Makefile
is:
.Bd -literal -offset indent
-# $FreeBSD\&$
-
PROG= foo
\&.include <bsd.prog.mk>
@@ -254,8 +250,6 @@ The simplest library
.Pa Makefile
is:
.Bd -literal -offset indent
-# $FreeBSD\&$
-
LIB= foo
SHLIB_MAJOR= 1
MAN= libfoo.3
@@ -268,10 +262,12 @@ SRCS= foo.c
.Xr make.conf 5 ,
.Xr style 9
.Sh HISTORY
-This manual page is inspired from the same source as
+This manual page is inspired from the
.Xr style 9
-manual page in
-.Fx .
+manual page and first appeared in
+.Fx 5.1 .
+.Sh AUTHORS
+.An David O'Brien Aq deo@NUXI.org
.Sh BUGS
There are few hard and fast style rules here.
The style of many things is too dependent on the context of the whole makefile,
diff --git a/share/man/man5/style.mdoc.5 b/share/man/man5/style.mdoc.5
index 81f10b9df845..42dbc940074c 100644
--- a/share/man/man5/style.mdoc.5
+++ b/share/man/man5/style.mdoc.5
@@ -1,5 +1,5 @@
-.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\"-
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2018-2022 Mateusz Piotrowski <0mp@FreeBSD.org>
.\"
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 29, 2022
+.Dd April 12, 2024
.Dt STYLE.MDOC 5
.Os
.Sh NAME
@@ -34,7 +32,7 @@
.Nd
.Fx
.Xr mdoc 7
-file style guide
+manual page style guide
.Sh DESCRIPTION
This file specifies the preferred style for manual pages in the
.Fx
@@ -84,17 +82,17 @@ Format the
section in the following way:
.Bd -literal -offset indent
\&.Bl -tag -width 0n
-\&.It Sy Example 1\\&: No Doing Something
+\&.It Sy Example 1\\&: Doing Something
\&.Pp
The following command does something.
\&.Bd -literal -offset 2n
-\&.Li # Ic make -VLEGAL
+\&.Ic # make -VLEGAL
\&.Ed
-\&.It Sy Example 2\\&: No Doing Something Different
+\&.It Sy Example 2\\&: Doing Something Different
\&.Pp
The following command does something different.
\&.Bd -literal -offset 2n
-\&.Li # Ic bectl list
+\&.Ic # bectl list
\&.Ed
\&.Pp
It is good to know this command.
@@ -102,24 +100,22 @@ It is good to know this command.
.Ed
.Pp
which renders as:
-.Bd -filled -offset indent
.Bl -tag -width 0n
-.It Sy Example 1\&: No Doing Something
+.It Sy Example 1\&: Doing Something
.Pp
The following command does something.
.Bd -literal -offset 2n
-.Li # Ic make -VLEGAL
+.Ic # make -VLEGAL
.Ed
-.It Sy Example 2\&: No Doing Something Different
+.It Sy Example 2\&: Doing Something Different
.Pp
The following command does something different.
.Bd -literal -offset 2n
-.Li # Ic bectl list
+.Ic # bectl list
.Ed
.Pp
It is good to know this command.
.El
-.Ed
.El
.Ss Lists
.Bl -dash -width ""
@@ -287,6 +283,7 @@ that would be rendered as:
.Xr man 1 ,
.Xr mandoc 1 ,
.Xr mdoc 7 ,
+.Xr roff 7 ,
.Xr style 9
.Sh HISTORY
This manual page first appeared in
diff --git a/share/man/man5/sysctl.conf.5 b/share/man/man5/sysctl.conf.5
index 5df168661d85..cff141720fed 100644
--- a/share/man/man5/sysctl.conf.5
+++ b/share/man/man5/sysctl.conf.5
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 30, 2022
.Dt SYSCTL.CONF 5
.Os
@@ -51,6 +49,13 @@ Comments can also exist at the end of a line,
as seen in the
.Sx EXAMPLES
section, below.
+.Pp
+For kernel modules loaded via
+.Xr rc.subr 8
+system,
+additional module-specific settings can be applied
+by adding a file in the same format named
+.Pf /etc/sysctl.kld.d/<module name>.conf .
.Sh FILES
.Bl -tag -width /etc/rc.d/sysctl_lastload -compact
.It Pa /etc/rc.d/sysctl
@@ -69,6 +74,9 @@ Initial settings for
.It Pa /etc/sysctl.conf.local
Machine-specific settings for sites with a common
.Pa /etc/sysctl.conf .
+.It Pa /etc/sysctl.kld.d
+Module specific settings for kernel modules loaded via
+.Xr rc.subr 8 .
.El
.Sh EXAMPLES
To turn off logging of programs that exit due to fatal signals you may use
diff --git a/share/man/man5/tarfs.5 b/share/man/man5/tarfs.5
new file mode 100644
index 000000000000..56c56ac43287
--- /dev/null
+++ b/share/man/man5/tarfs.5
@@ -0,0 +1,126 @@
+.\"-
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2022 Klara, Inc.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 February 14, 2023
+.Dt TARFS 5
+.Os
+.Sh NAME
+.Nm tarfs
+.Nd tarball filesystem
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following line in
+your kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "options TARFS"
+.Ed
+.Pp
+Alternatively, to load the driver as a module at boot time, place the
+following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+tarfs_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver implements a read-only filesystem backed by a
+.Xr tar 5
+file.
+Currently, only POSIX archives, optionally compressed with
+.Xr zstd 1 ,
+are supported.
+.Pp
+The preferred I/O size for
+.Nm
+filesystems can be adjusted using the
+.Va vfs.tarfs.ioshift
+sysctl setting and tunable.
+Setting it to 0 will reset it to its default value.
+Note that changes to this setting only apply to filesystems mounted
+after the change.
+.Pp
+When the backing tar file is compressed with
+.Xr zstd 1 ,
+I/O performance can be improved by ensuring that compressed data is
+broken up into multiple frames.
+This helps minimize unnecessary decompression work.
+When using
+.Xr bsdtar 1
+to create the tar file, this can be achieved using the
+.Cm zstd:max-frame-size
+and
+.Cm ztsd:frame-per-file
+options.
+Sensible frame sizes are powers of 2 between the system's base page size
+(see
+.Xr arch 7 )
+and the value of the
+.Sy kern.maxphys
+sysctl.
+Smaller frames will generally yield a worse compression ratio and require extra
+kernel memory to maintain an index, and larger frames will on average require
+more CPU time to access data when performing random I/O.
+.Sh DIAGNOSTICS
+If enabled by the
+.Dv TARFS_DEBUG
+kernel option, the
+.Va vfs.tarfs.debug
+sysctl setting can be used to control debugging output from the
+.Nm
+driver.
+Debugging output for individual sections of the driver can be enabled
+by adding together the relevant values from the table below.
+.Bl -column Value Description
+.It 0x01 Ta Memory allocations
+.It 0x02 Ta Checksum calculations
+.It 0x04 Ta Filesystem operations (vfsops)
+.It 0x08 Ta Path lookups
+.It 0x10 Ta File operations (vnops)
+.It 0x20 Ta General I/O
+.It 0x40 Ta Decompression
+.It 0x80 Ta Decompression index
+.It 0x100 Ta Sparse file mapping
+.It 0x200 Ta Bounce buffer usage
+.El
+.Sh SEE ALSO
+.Xr tar 1 ,
+.Xr zstd 1 ,
+.Xr fstab 5 ,
+.Xr tar 5 ,
+.Xr mount 8 ,
+.Xr sysctl 8
+.Sh HISTORY
+.An -nosplit
+The
+.Nm
+driver was developed by
+.An Stephen J. Kiernan Aq Mt stevek@FreeBSD.org
+and
+.An Dag-Erling Smørgrav Aq Mt des@FreeBSD.org
+for Juniper Networks and Klara Systems.
+This manual page was written by
+.An Dag-Erling Smørgrav Aq Mt des@FreeBSD.org
+for Juniper Networks and Klara Systems.
diff --git a/share/man/man5/tmpfs.5 b/share/man/man5/tmpfs.5
index b934fe02868d..f3d6a2f6c2b5 100644
--- a/share/man/man5/tmpfs.5
+++ b/share/man/man5/tmpfs.5
@@ -51,9 +51,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 21, 2022
+.Dd September 18, 2023
.Dt TMPFS 5
.Os
.Sh NAME
@@ -110,36 +108,79 @@ The following options are available when
mounting
.Nm
file systems:
-.Bl -tag -width "It Cm maxfilesize"
+.Bl -tag -width "maxfilesize"
+.It Cm easize
+Set the maximum memory size used by extended attributes in bytes.
+The default is 16 megabytes.
+.It Cm export
+Accept the
+.Cm export
+option for compatibility with
+.Xr nfsv4 4 .
+This option does nothing.
.It Cm gid
-Specifies the group ID of the root inode of the file system.
-Defaults to the mount point's GID.
-.It Cm uid
-Specifies the user ID of the root inode of the file system.
-Defaults to the mount point's UID.
-.It Cm mode
-Specifies the mode (in octal notation) of the root inode of the file system.
-Defaults to the mount point's mode.
-.It Cm nonc
-Do not use namecache to resolve names to files for the created mount.
-This saves memory, but currently might impair scalability for highly
-used mounts on large machines.
+Set the group ID of the root inode of the file system.
+The default is the mount point's GID.
.It Cm inodes
-Specifies the maximum number of nodes available to the file system.
+Set the maximum number of nodes available to the file system.
If not specified, the file system chooses a reasonable maximum based on
the file system size, which can be limited with the
.Cm size
option.
+.It Cm maxfilesize
+Set the maximum file size in bytes.
+The default is the maximum possible value.
+.It Cm mode
+Set the mode (in octal notation) of the root inode of the file system.
+The default is the mount point's mode.
+.It Cm nomtime
+Disable the tracking of mtime updates caused by writes to the
+shared mapped areas backed by
+.Nm
+files.
+This option removes periodic scans,
+which downgrade read-write-mapped pages to read-only to note the writes.
+.It Cm nonc
+Do not use namecache to resolve names to files for the created mount.
+This saves memory, but currently might impair scalability for highly
+used mounts on large machines.
+.It Cm nosymfollow
+Do not follow
+.Xr symlink 7 Ap s
+on the mounted file system.
+.It Cm pgread
+Enable pgcache read for the mount.
.It Cm size
-Specifies the total file system size in bytes, unless suffixed
+Set the total file system size in bytes, unless suffixed
with one of k, m, g, t, or p, which denote byte, kilobyte,
megabyte, gigabyte, terabyte and petabyte respectively.
If zero (the default) or a value larger than SIZE_MAX - PAGE_SIZE
is given, the available amount of memory (including
main memory and swap space) will be used.
-.It Cm maxfilesize
-Specifies the maximum file size in bytes.
-Defaults to the maximum possible value.
+.It Cm uid
+Set the user ID of the root inode of the file system.
+The default is the mount point's UID.
+.It Cm union
+Refer to
+.Xr mount 8 .
+.El
+.Sh SYSCTL VARIABLES
+The following
+.Xr sysctl 8
+variables are available:
+.Bl -tag -width indent
+.It Va vfs.tmpfs.memory_percent
+The percentage of memory plus swap space available at kernel file system
+initialization that can be used by a file system with a size of 0.
+When this amount of space in use is reached, new files cannot be created
+and files cannot be extended.
+The default is 95%.
+Changing this value also changes
+.Va vfs.tmpfs.memory_reserved .
+.It Va vfs.tmpfs.memory_reserved
+The currently-reserved amount of memory plus swap space
+based on the memory percentage.
+The minimum is compiled into the system, and defaults to 4 MB.
.El
.Sh EXAMPLES
Mount a
diff --git a/share/man/man5/unionfs.5 b/share/man/man5/unionfs.5
index 7d5e16e3ff68..a20889d54839 100644
--- a/share/man/man5/unionfs.5
+++ b/share/man/man5/unionfs.5
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 27, 2020
.Dt UNIONFS 5
.Os
@@ -69,6 +67,7 @@ The
device driver first appeared in
.Fx 5.0 .
.Sh AUTHORS
+.An -nosplit
The
.Nm
device driver was written by Jan-Simon Pendry for
diff --git a/share/man/man6/Makefile b/share/man/man6/Makefile
index be6547e592b5..b97fae54a03d 100644
--- a/share/man/man6/Makefile
+++ b/share/man/man6/Makefile
@@ -1,4 +1,3 @@
-# $FreeBSD$
MAN= intro.6
diff --git a/share/man/man6/Makefile.depend b/share/man/man6/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man6/Makefile.depend
+++ b/share/man/man6/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man6/intro.6 b/share/man/man6/intro.6
index d3978384efac..2cd184f934af 100644
--- a/share/man/man6/intro.6
+++ b/share/man/man6/intro.6
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 27, 2017
.Dt INTRO 6
.Os
diff --git a/share/man/man7/Makefile b/share/man/man7/Makefile
index 228c4ea393d5..f163d4e0a0d8 100644
--- a/share/man/man7/Makefile
+++ b/share/man/man7/Makefile
@@ -1,5 +1,3 @@
-# @(#)Makefile 8.1 (Berkeley) 6/5/93
-# $FreeBSD$
.include <src.opts.mk>
@@ -20,12 +18,15 @@ MAN= arch.7 \
hostname.7 \
intro.7 \
maclabel.7 \
+ mitigations.7 \
operator.7 \
orders.7 \
ports.7 \
release.7 \
sdoc.7 \
security.7 \
+ simd.7 \
+ sizeof.7 \
sprog.7 \
stats.7 \
stdint.7 \
@@ -34,6 +35,7 @@ MAN= arch.7 \
tuning.7
MLINKS= intro.7 miscellaneous.7
+MLINKS+= growfs.7 growfs_fstab.7
MLINKS+= security.7 securelevel.7
MLINKS+= c.7 c78.7
MLINKS+= c.7 c89.7
@@ -44,6 +46,11 @@ MLINKS+= c.7 c11.7
MLINKS+= c.7 c17.7
MLINKS+= c.7 c2x.7
+.if ${MK_INET} != "no"
+MAN+= networking.7
+MLINKS+= networking.7 wifi.7
+.endif
+
.if ${MK_TESTS} != "no"
ATF= ${SRCTOP}/contrib/atf
.PATH: ${ATF}/doc
diff --git a/share/man/man7/Makefile.depend b/share/man/man7/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man7/Makefile.depend
+++ b/share/man/man7/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man7/arch.7 b/share/man/man7/arch.7
index c7c2e224b33d..35a7b0246389 100644
--- a/share/man/man7/arch.7
+++ b/share/man/man7/arch.7
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 25, 2021
+.Dd September 2, 2023
.Dt ARCH 7
.Os
.Sh NAME
@@ -97,14 +95,13 @@ release to support each architecture.
.It powerpc64 Ta 9.0
.It powerpc64le Ta 13.0
.It riscv64 Ta 12.0
-.It riscv64sf Ta 12.0
.El
.Pp
Discontinued architectures are shown in the following table.
.Bl -column -offset indent "Architecture" "Initial Release" "Final Release"
.It Sy Architecture Ta Sy Initial Release Ta Sy Final Release
.It alpha Ta 3.2 Ta 6.4
-.It arm Ta 6.0 Ta 12.x
+.It arm Ta 6.0 Ta 12.4
.It armeb Ta 8.0 Ta 11.4
.It ia64 Ta 5.0 Ta 10.4
.It mips Ta 8.0 Ta 13.x
@@ -117,7 +114,8 @@ Discontinued architectures are shown in the following table.
.It mips64elhf Ta 12.0 Ta 13.x
.It mips64hf Ta 12.0 Ta 13.x
.It pc98 Ta 2.2 Ta 11.4
-.It sparc64 Ta 5.0 Ta 12.x
+.It riscv64sf Ta 12.0 Ta 13.x
+.It sparc64 Ta 5.0 Ta 12.4
.El
.Ss Type sizes
All
@@ -158,7 +156,6 @@ Examples are:
.It Sy LP64 Ta Sy ILP32 counterpart
.It Dv amd64 Ta Dv i386
.It Dv powerpc64 Ta Dv powerpc
-.It Dv mips64* Ta Dv mips*
.It Dv aarch64 Ta Dv armv6/armv7
.El
.Pp
@@ -169,7 +166,9 @@ or
.Dv armv7
binaries if the CPU implements
.Dv AArch32
-execution state, however
+execution state, however older
+.Dv armv4
+and
.Dv armv5
binaries aren't supported.
.Pp
@@ -199,21 +198,11 @@ Machine-dependent type sizes:
.It armv6 Ta 4 Ta 8 Ta 8
.It armv7 Ta 4 Ta 8 Ta 8
.It i386 Ta 4 Ta 12 Ta 4
-.It mips Ta 4 Ta 8 Ta 8
-.It mipsel Ta 4 Ta 8 Ta 8
-.It mipselhf Ta 4 Ta 8 Ta 8
-.It mipshf Ta 4 Ta 8 Ta 8
-.It mipsn32 Ta 4 Ta 8 Ta 8
-.It mips64 Ta 8 Ta 8 Ta 8
-.It mips64el Ta 8 Ta 8 Ta 8
-.It mips64elhf Ta 8 Ta 8 Ta 8
-.It mips64hf Ta 8 Ta 8 Ta 8
.It powerpc Ta 4 Ta 8 Ta 8
.It powerpcspe Ta 4 Ta 8 Ta 8
.It powerpc64 Ta 8 Ta 8 Ta 8
.It powerpc64le Ta 8 Ta 8 Ta 8
.It riscv64 Ta 8 Ta 16 Ta 8
-.It riscv64sf Ta 8 Ta 16 Ta 8
.El
.Pp
.Sy time_t
@@ -226,21 +215,11 @@ is 8 bytes on all supported architectures except i386.
.It armv6 Ta little Ta unsigned
.It armv7 Ta little Ta unsigned
.It i386 Ta little Ta signed
-.It mips Ta big Ta signed
-.It mipsel Ta little Ta signed
-.It mipselhf Ta little Ta signed
-.It mipshf Ta big Ta signed
-.It mipsn32 Ta big Ta signed
-.It mips64 Ta big Ta signed
-.It mips64el Ta little Ta signed
-.It mips64elhf Ta little Ta signed
-.It mips64hf Ta big Ta signed
.It powerpc Ta big Ta unsigned
.It powerpcspe Ta big Ta unsigned
.It powerpc64 Ta big Ta unsigned
.It powerpc64le Ta little Ta unsigned
.It riscv64 Ta little Ta signed
-.It riscv64sf Ta little Ta signed
.El
.Ss Page Size
.Bl -column -offset indent "Architecture" "Page Sizes"
@@ -250,21 +229,11 @@ is 8 bytes on all supported architectures except i386.
.It armv6 Ta 4K, 1M
.It armv7 Ta 4K, 1M
.It i386 Ta 4K, 2M (PAE), 4M
-.It mips Ta 4K
-.It mipsel Ta 4K
-.It mipselhf Ta 4K
-.It mipshf Ta 4K
-.It mipsn32 Ta 4K
-.It mips64 Ta 4K
-.It mips64el Ta 4K
-.It mips64elhf Ta 4K
-.It mips64hf Ta 4K
.It powerpc Ta 4K
.It powerpcspe Ta 4K
.It powerpc64 Ta 4K
.It powerpc64le Ta 4K
.It riscv64 Ta 4K, 2M, 1G
-.It riscv64sf Ta 4K, 2M, 1G
.El
.Ss Floating Point
.Bl -column -offset indent "Architecture" "float, double" "long double"
@@ -274,21 +243,11 @@ is 8 bytes on all supported architectures except i386.
.It armv6 Ta hard Ta hard, double precision
.It armv7 Ta hard Ta hard, double precision
.It i386 Ta hard Ta hard, 80 bit
-.It mips Ta soft Ta identical to double
-.It mipsel Ta soft Ta identical to double
-.It mipselhf Ta hard Ta identical to double
-.It mipshf Ta hard Ta identical to double
-.It mipsn32 Ta soft Ta identical to double
-.It mips64 Ta soft Ta identical to double
-.It mips64el Ta soft Ta identical to double
-.It mips64elhf Ta hard Ta identical to double
-.It mips64hf Ta hard Ta identical to double
.It powerpc Ta hard Ta hard, double precision
.It powerpcspe Ta hard Ta hard, double precision
.It powerpc64 Ta hard Ta hard, double precision
.It powerpc64le Ta hard Ta hard, double precision
.It riscv64 Ta hard Ta hard, quad precision
-.It riscv64sf Ta soft Ta soft, quad precision
.El
.Ss Default Tool Chain
.Fx
@@ -319,9 +278,8 @@ or similar things like boot sequences.
.It amd64 Ta amd64 Ta amd64
.It arm Ta arm Ta armv6, armv7
.It i386 Ta i386 Ta i386
-.It mips Ta mips Ta mips, mipsel, mips64, mips64el, mipshf, mipselhf, mips64elhf, mipsn32
.It powerpc Ta powerpc Ta powerpc, powerpcspe, powerpc64, powerpc64le
-.It riscv Ta riscv Ta riscv64, riscv64sf
+.It riscv Ta riscv Ta riscv64
.El
.Ss Predefined Macros
The compiler provides a number of predefined macros.
@@ -353,21 +311,11 @@ Architecture-specific macros:
.It armv6 Ta Dv __arm__ , Dv __ARM_ARCH >= 6
.It armv7 Ta Dv __arm__ , Dv __ARM_ARCH >= 7
.It i386 Ta Dv __i386__
-.It mips Ta Dv __mips__ , Dv __MIPSEB__ , Dv __mips_o32
-.It mipsel Ta Dv __mips__ , Dv __mips_o32
-.It mipselhf Ta Dv __mips__ , Dv __mips_o32
-.It mipshf Ta Dv __mips__ , Dv __MIPSEB__ , Dv __mips_o32
-.It mipsn32 Ta Dv __mips__ , Dv __MIPSEB__ , Dv __mips_n32
-.It mips64 Ta Dv __mips__ , Dv __MIPSEB__ , Dv __mips_n64
-.It mips64el Ta Dv __mips__ , Dv __mips_n64
-.It mips64elhf Ta Dv __mips__ , Dv __mips_n64
-.It mips64hf Ta Dv __mips__ , Dv __MIPSEB__ , Dv __mips_n64
.It powerpc Ta Dv __powerpc__
.It powerpcspe Ta Dv __powerpc__ , Dv __SPE__
.It powerpc64 Ta Dv __powerpc__ , Dv __powerpc64__
.It powerpc64le Ta Dv __powerpc__ , Dv __powerpc64__
.It riscv64 Ta Dv __riscv , Dv __riscv_xlen == 64
-.It riscv64sf Ta Dv __riscv , Dv __riscv_xlen == 64 , Dv __riscv_float_abi_soft
.El
.Pp
Compilers may define additional variants of architecture-specific macros.
@@ -429,17 +377,13 @@ It may also encode a variation in the size of the integer or pointer.
It may also encode a ISA revision.
It may also encode hard versus soft floating point ABI and usage.
It may also encode a variant ABI when the other factors do not
-uniquely define the ABI (e.g., MIPS' n32 ABI).
+uniquely define the ABI.
It, along with
.Dv MACHINE ,
defines the ABI used by the system.
-For example, the MIPS CPU processor family supports 9 different
-combinations encoding pointer size, endian and hard versus soft float (for
-8 combinations) as well as N32 (which only ever had one variation of
-all these).
Generally, the plain CPU name specifies the most common (or at least
first) variant of the CPU.
-This is why mips and mips64 imply 'big endian' while 'armv6' and 'armv7'
+This is why powerpc and powerpc64 imply 'big endian' while 'armv6' and 'armv7'
imply little endian.
If we ever were to support the so-called x32 ABI (using 32-bit
pointers on the amd64 architecture), it would most likely be encoded
@@ -453,10 +397,6 @@ Represents the source location for a given
.Dv MACHINE_ARCH .
It is generally the common prefix for all the MACHINE_ARCH that
share the same implementation, though 'riscv' breaks this rule.
-For example,
-.Dv MACHINE_CPUARCH
-is defined to be mips for all the flavors of mips that we support
-since we support them all with a shared set of sources.
While amd64 and i386 are closely related, MACHINE_CPUARCH is not x86
for them.
The
@@ -491,7 +431,8 @@ it is unused outside of that scope.
.El
.Sh SEE ALSO
.Xr src.conf 5 ,
-.Xr build 7
+.Xr build 7 ,
+.Xr simd 7
.Sh HISTORY
An
.Nm
diff --git a/share/man/man7/ascii.7 b/share/man/man7/ascii.7
index 713a4922e759..3e4693153e99 100644
--- a/share/man/man7/ascii.7
+++ b/share/man/man7/ascii.7
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)ascii.7 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
-.Dd September 21, 2019
+.Dd November 12, 2022
.Dt ASCII 7
.Os
.Sh NAME
@@ -142,6 +139,44 @@ ESC ; [ { 11011
RS > ^ - 11110
US ? _ DEL 11111
.Ed
+.Pp
+The full
+.Nm names
+of the control character set:
+.Bd -literal -offset left
+NUL NULl
+SOH Start Of Heading
+STX Start Of Text
+ETX End Of Text
+EOT End Of Transmission
+ENQ ENQuiry
+ACK ACKnowledge
+BEL BELl
+ BS BackSpace
+ HT Horizontal Tab
+ LF Line Feed (new line)
+ VT Vertical Tab
+ FF new page Form Feed
+ CR Carriage Return
+ SO Shift Out
+ SI Shift In
+DLE Data Link Escape
+DC1 Device Control 1
+DC2 Device Control 2
+DC3 Device Control 3
+DC4 Device Control 4
+NAK Negative AcKnowledge
+SYN SYNchronous idle
+ETB End of Transmission Block
+CAN CANcel
+ EM End of Medium
+SUB SUBstitute
+ESC ESCape
+ FS File Separator
+ GS Group Separator
+ RS Record Separator
+ US Unit Separator
+.Ed
.Sh FILES
.Bl -tag -width /usr/share/misc/ascii -compact
.It Pa /usr/share/misc/ascii
diff --git a/share/man/man7/bsd.snmpmod.mk.7 b/share/man/man7/bsd.snmpmod.mk.7
index 299daf227e18..fc6ca0ae20e1 100644
--- a/share/man/man7/bsd.snmpmod.mk.7
+++ b/share/man/man7/bsd.snmpmod.mk.7
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 8, 2008
.Dt BSD.SNMPMOD.MK 7
.Os
diff --git a/share/man/man7/build.7 b/share/man/man7/build.7
index 4e499c81b45c..596c64da0673 100644
--- a/share/man/man7/build.7
+++ b/share/man/man7/build.7
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 10, 2021
+.Dd August 1, 2023
.Dt BUILD 7
.Os
.Sh NAME
@@ -509,7 +507,23 @@ Additionally, builds in
are influenced by the following
.Xr make 1
variables:
-.Bl -tag -width ".Va SUBDIR_OVERRIDE"
+.Bl -tag -width ".Va LOCAL_MODULES_DIR"
+.It Va CROSS_TOOLCHAIN
+Requests use of an external toolchain to build either the world or kernel.
+This value of this variable can either be the full path to a file,
+or the base name of a file in
+.Pa ${LOCALBASE}/share/toolchains .
+The file should be a make file which sets variables to request an external
+toolchain such as
+.Va XCC .
+.Pp
+External toolchains are available in ports for both LLVM and GCC/binutils.
+For external toolchains available in ports,
+.Va CROSS_TOOLCHAIN
+should be set to the name of the package.
+LLVM toolchain packages use the name llvm<major version>.
+GCC toolchains provide separate packages for each architecture and use the
+name ${MACHINE_ARCH}-gcc<major version>.
.It Va KERNCONF
Overrides which kernel to build and install for the various kernel
make targets.
@@ -656,7 +670,7 @@ and
will only build the specified directory as was done historically.
When combined with
.Cm buildworld
-it is necesarry to override
+it is necessary to override
.Va LOCAL_LIB_DIRS
with any custom directories containing libraries.
This allows building a subset of the system in the same way as
@@ -713,7 +727,7 @@ using the
.Fl D
option of
.Xr make 1 :
-.Bl -tag -width ".Va -DNO_KERNELCONFIG"
+.Bl -tag -width ".Va LOADER_DEFAULT_INTERP"
.It Va LOADER_DEFAULT_INTERP
Defines what interpreter the default loader program will have.
Valid values include
@@ -783,6 +797,10 @@ If set, the libraries phase will be skipped.
If set, no object directories will be created.
This should only be used if object directories were created in a
previous build and no new directories are connected.
+.It Va UNIVERSE_TOOLCHAIN
+Requests use of the toolchain built as part of the
+.Cm universe
+target as an external toolchain.
.It Va WORLDFAST
If set, the build target
.Cm buildworld
@@ -812,7 +830,7 @@ Builds using the
and related targets are influenced by the following
.Xr make 1
variables:
-.Bl -tag -width ".Va MAKE_JUST_KERNELS"
+.Bl -tag -width ".Va USE_GCC_TOOLCHAINS"
.It Va JFLAG
Pass the value of this variable to each
.Xr make 1
@@ -834,6 +852,10 @@ target for each supported architecture instead of the default action of
building a world and one or more kernels.
This variable implies
.Va WITHOUT_KERNELS .
+.It Va USE_GCC_TOOLCHAINS
+Use external GCC toolchains to build the requested targets.
+If the required toolchain package for a supported architecture is not installed,
+the build for that architecture is skipped.
.It Va TARGETS
Only build the listed targets instead of each supported architecture.
.It Va EXTRA_TARGETS
@@ -887,7 +909,6 @@ manpage first appeared in
.Xr tests 7 ,
.Xr config 8 ,
.Xr etcupdate 8 ,
-.Xr mergemaster 8 ,
.Xr reboot 8 ,
.Xr shutdown 8
.Sh AUTHORS
diff --git a/share/man/man7/c.7 b/share/man/man7/c.7
index f8943cd9ca29..97869fe0f8f2 100644
--- a/share/man/man7/c.7
+++ b/share/man/man7/c.7
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 20, 2021
.Dt C 7
.Os
diff --git a/share/man/man7/clocks.7 b/share/man/man7/clocks.7
index 06b41ed551ca..3a218f844450 100644
--- a/share/man/man7/clocks.7
+++ b/share/man/man7/clocks.7
@@ -24,8 +24,6 @@
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.\" "
.Dd January 18, 2008
.Dt CLOCKS 7
diff --git a/share/man/man7/crypto.7 b/share/man/man7/crypto.7
index 941650d16371..37c441562fa4 100644
--- a/share/man/man7/crypto.7
+++ b/share/man/man7/crypto.7
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 11, 2022
.Dt CRYPTO 7
.Os
diff --git a/share/man/man7/development.7 b/share/man/man7/development.7
index 346772b4fbb0..0eb5377bd07b 100644
--- a/share/man/man7/development.7
+++ b/share/man/man7/development.7
@@ -21,9 +21,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 21, 2022
+.Dd November 1, 2022
.Dt DEVELOPMENT 7
.Os
.Sh NAME
@@ -39,14 +37,14 @@ Doc is the documentation, such as the
Handbook.
To read more, see:
.Pp
-.Lk https://www.FreeBSD.org/doc/en/books/fdp-primer/
+.Lk https://docs.FreeBSD.org/en/books/fdp-primer/
.Pp
Ports, described further in
.Xr ports 7 ,
are the way to build, package, and install third party software.
To read more, see:
.Pp
-.Lk https://www.FreeBSD.org/doc/en/books/porters-handbook/
+.Lk https://docs.FreeBSD.org/en/books/porters-handbook/
.Pp
The last one, src, revolves around the source code for the base system,
consisting of the kernel, and the libraries and utilities commonly called
@@ -55,7 +53,7 @@ the world.
The Committer's Guide, describing topics relevant to all committers,
can be found at:
.Pp
-.Lk https://www.FreeBSD.org/doc/en/articles/committers-guide/
+.Lk https://docs.freebsd.org/en/articles/committers-guide/
.Pp
.Fx
src development takes place in the project-hosted
@@ -69,7 +67,7 @@ The push URL is:
.Pp
There is also a list of public, read-only Git mirrors at:
.Pp
-.Lk https://docs.freebsd.org/en/books/handbook/mirrors/#external-mirrors
+.Lk https://docs.FreeBSD.org/en/books/handbook/mirrors/#external-mirrors
.Pp
The
.Ql main
@@ -82,8 +80,9 @@ with an incremented major version number.
Releases are then branched off STABLE and numbered with consecutive minor
numbers.
.Pp
-Layout of the source tree is described in
-.Xr hier 7 .
+The layout of the source tree is described in its
+.Pa README.md
+file.
Build instructions can be found in
.Xr build 7
and
diff --git a/share/man/man7/environ.7 b/share/man/man7/environ.7
index 9a77100ff6d3..51fb6544fc5a 100644
--- a/share/man/man7/environ.7
+++ b/share/man/man7/environ.7
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)environ.7 8.3 (Berkeley) 4/19/94
-.\" $FreeBSD$
-.\"
-.Dd August 5, 2020
+.Dd September 3, 2023
.Dt ENVIRON 7
.Os
.Sh NAME
@@ -67,6 +64,13 @@ are documented in the
section of the appropriate manual page.
.Sh ENVIRONMENT
.Bl -tag -width LD_LIBRARY_PATH
+.It Ev ARCHLEVEL
+On
+.Em amd64 ,
+controls the level of SIMD enhancements used.
+See
+.Xr simd 7
+for details.
.It Ev BLOCKSIZE
The size of the block units used by several disk-related commands,
most notably
@@ -197,7 +201,7 @@ The full pathname of the user's login shell.
.It Ev TERM
The kind of terminal for which output is to be prepared.
This information is used by commands, such as
-.Xr nroff 1
+.Xr nroff 1 Pq Pa ports/textproc/groff
or
.Xr plot 1
which may exploit special terminal capabilities.
@@ -306,7 +310,8 @@ built-in command in
.Xr setlocale 3 ,
.Xr system 3 ,
.Xr termcap 3 ,
-.Xr termcap 5
+.Xr termcap 5 ,
+.Xr simd 7
.Sh HISTORY
The
.Nm
diff --git a/share/man/man7/ffs.7 b/share/man/man7/ffs.7
index 13924b936a9e..7d003443f32a 100644
--- a/share/man/man7/ffs.7
+++ b/share/man/man7/ffs.7
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 3, 2020
.Dt FFS 7
.Os
diff --git a/share/man/man7/firewall.7 b/share/man/man7/firewall.7
index 48558b21d5a8..041c66bdde40 100644
--- a/share/man/man7/firewall.7
+++ b/share/man/man7/firewall.7
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 26, 2001
.Dt FIREWALL 7
.Os
diff --git a/share/man/man7/growfs.7 b/share/man/man7/growfs.7
index 2e04e00f6abf..43648d8d9f2b 100644
--- a/share/man/man7/growfs.7
+++ b/share/man/man7/growfs.7
@@ -22,48 +22,119 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 3, 2020
+.Dd November 22, 2022
.Dt GROWFS 7
.Os
.Sh NAME
-.Nm growfs
-.Nd start up script to grow the root file-system
+.Nm growfs ,
+.Nm growfs_fstab
+.Nd start up scripts to grow the root file system and add swap
.Sh DESCRIPTION
+The
+.Nm
+script normally runs at the first boot after system installation.
+If the boot disk is larger than the root file system and boot partitions,
+and the root file system is in the last partition,
+.Nm
+can expand the root file system.
+It can also add a swap partition, with a default size of 10% of the boot disk.
+Swap is limited to twice the memory size up to 4 GB,
+8 GB up to 8 GB of memory, and memory size over 8 GB.
+It is also limited to the
+.Xr sysctl 8
+value of
+.Li vm.swap_maxpages
+divided by 2.
+By default, no swap partition is created if an existing swap partition is found
+or is listed in
+.Pa /etc/fstab ,
+or the disk is under 15 GB.
+The
+.Nm growfs_fstab
+script adds any new swap partition to
+.Pa /etc/fstab
+after the root file system is made writable,
+and enables its use as a dump partition if the
+.Va dumpdev
+variable from
+.Xr rc.conf 5
+is set to
+.Li AUTO .
+.Pp
The following options in
.Pa /etc/rc.conf
control the behavior of
.Nm :
-.Bl -tag -width ".Va growfs_enable" -offset indent
+.Bl -tag -width ".Va growfs_swap_size" -offset indent
.It Va growfs_enable
.Pq Dq Li NO
If set to
.Dq Li YES ,
-the first time the machine boots, the root file-system will be automatically
-expanded, if possible, to fill up all available space after it.
+the first time the machine boots, the root file system will be automatically
+expanded, if possible, to fill up all available space after it,
+after optionally adding a swap device at the end.
+.It Va growfs_swap_size
+.Pq Dq Li \&
+If set to
+.Dq Li 0 ,
+the addition of a swap partition is disabled.
+An empty value
+.Pq Dq Li \&
+allows the creation of a swap partition with the default size.
+If set to another value,
+the swap partition will be created with the specified size in bytes,
+even if another swap partition is detected.
.El
.Pp
-To expand the root file-system with-out rebooting, run the following command:
+A setting for
+.Va growfs_swap_size
+can be set in the kernel environment, in which case it overrides
+the value from
+.Pa /etc/rc.conf .
+.Pp
+To expand the root file system without rebooting, run the following command:
.Dl % /etc/rc.d/growfs onestart
+In addition, if a swap partition is added, run the command:
+.Dl % /etc/rc.d/growfs_fstab onestart
+Note that if a disk is expanded again,
+and if the root file system had previously been expanded
+and a swap partition added, it is necessary to delete the swap
+partition before this procedure
+in order to expand the root file system to the new size.
+A new swap partition can be created during the expansion.
.Sh IMPLEMENTATION NOTES
+The
+.Nm
+script only attempts to expand the root file system,
+and free space must be available immediately after the root partition.
+It is normally used on images that have a single file system.
The script requires that
-.Pa awk
-be present and on the path.
+.Xr awk 1
+be present and in the path.
This usually means that
.Pa /usr
-should be mounted prior to running the script.
+must be available prior to running the script.
.Sh FILES
-.Pa /etc/rc.conf
+.Bl -tag -compact -width Pa
+.It Pa /etc/fstab
+.It Pa /etc/rc.conf
+.El
.Sh EXIT STATUS
.Ex -std
+.Sh SEE ALSO
+.Xr fstab 5 ,
+.Xr rc.conf 5 ,
+.Xr growfs 8 ,
+.Xr zpool 8
.Sh HISTORY
The
.Nm
manual page first appeared in
.Fx 10.1 .
-.Sh SEE ALSO
-.Xr rc.conf 5
+The ability to add a swap partition was added in
+.Fx 13.2 .
.Sh AUTHORS
The man page and script were written by
.An John-Mark Gurney Aq Mt jmg@FreeBSD.org .
+The ability to create a swap partition was added by
+.An Michael Karels Aq Mt karels@FreeBSD.org .
diff --git a/share/man/man7/hier.7 b/share/man/man7/hier.7
index f33cf5ac62cc..7d164b5683d6 100644
--- a/share/man/man7/hier.7
+++ b/share/man/man7/hier.7
@@ -1,3 +1,6 @@
+.\"-
+.\" SPDX-License-Identifier: BSD-3-Clause
+.\"
.\" Copyright (c) 1990, 1993
.\" The Regents of the University of California. All rights reserved.
.\"
@@ -25,130 +28,308 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)hier.7 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
-.Dd August 4, 2022
+.Dd April 18, 2024
.Dt HIER 7
.Os
.Sh NAME
.Nm hier
-.Nd layout of file systems
+.Nd index of
+.Fx
+file system hierarchy
.Sh DESCRIPTION
-A sketch of the file system hierarchy.
.Bl -tag -width "/libexec/"
.It Pa /
root directory of the file system
+.It Pa /COPYRIGHT
+.Fx
+copyright information
.It Pa /bin/
-user utilities fundamental to both single-user and multi-user environments
+fundamental
+.Bx
+user utilities; see
+.Xr intro 1
.It Pa /boot/
-programs and configuration files used during operating system bootstrap
+programs and configurations used during
+.Fx
+.Xr boot 8
.Pp
-.Bl -tag -width "defaults/" -compact
+.Bl -tag -width "loader.conf.d/" -compact
.It Pa defaults/
-default bootstrapping configuration files; see
+default boot configuration files; see
.Xr loader.conf 5
+.It Pa device.hints
+kernel variables for controlling drivers; see
+.Xr device.hints 5
.It Pa dtb/
-Compiled flattened device tree (FDT) files; see
+compiled flattened device tree (FDT) files; see
.Xr fdt 4
and
.Xr dtc 1
+.Pp
+.Bl -tag -width "overlays/" -compact
+.It Pa overlays/
+compiled
+.Xr fdt 4
+overlays; see
+.Va fdt_overlays
+in
+.Xr loader.conf 5
+.El
+.Pp
.It Pa efi/
-Mount point for EFI System Partition (ESP) on UEFI systems
+the
+.Xr uefi 8
+EFI System Partition (ESP) mount point
.It Pa firmware/
-loadable kernel modules containing binary firmware for hardware that needs
-firmware downloaded to it to function
+loadable binary firmware kernel modules
+.It Pa fonts/
+binary bitmap console fonts; see
+.Xr loader.conf 5
+and
+.Xr vtfontcvt 8
+.It Pa images/
+beastie boot menu images; see
+.Xr loader_lua 8
.It Pa kernel/
-pure kernel executable (the operating system loaded into memory
-at boot time) and kernel modules
+.Fx
+kernel and modules; see
+.Xr kldstat 8
+.It Pa kernel.old/
+alternative kernel and modules
+.It Pa loader.conf
+boot loader configuration; see
+.Xr loader.conf 5
+.It Pa loader.conf.d/
+.Xr loader.conf 5
+configuration files
+.It Pa lua/
+scripts for the Lua boot loader; see
+.Xr loader_lua 8
.It Pa modules/
-third-party loadable kernel modules, such as the ones installed from
+third-party loadable kernel modules, such as those installed with
+.Xr pkg 8
+or from
.Xr ports 7
-.It Pa overlays/
-Compiled flattened device tree (FDT) overlays; see
-.Xr fdt 4
-and
-.Xr dtc 1
.It Pa zfs/
-.Xr zfs 8
-zpool cache files
+ZFS
+.Xr zpool 8
+cache files
.El
-.It Pa /cdrom/
-default mount point for CD-ROM drives
.It Pa /compat/
-normally a link to
-.Pa /usr/compat .
-If not, then the
-.Pa /usr/compat
-comments apply
+files supporting binary compatibility with other operating systems
+.Pp
+.Bl -tag -width "loader.conf.d" -compact
+.It Pa linux/
+default location for
+.Xr linux 4
+compatibility run-time
+.El
.It Pa /dev/
-device special files managed by
+device nodes and special files; see
+.Xr intro 4
+and
.Xr devfs 5
.Pp
-.Bl -tag -width "defaults/" -compact
+.Bl -tag -width "loader.conf.d" -compact
+.It Pa ada0
+first ATA storage device
+.It Pa ada0p1
+first partition on ada0
+.It Pa cd0
+first optical drive
+.It Pa cuaU0
+first USB serial port; see
+.Xr cu 1
+.It Pa da0
+first SCSI storage device
+.It Pa da0s1
+first partition on da0
+.It Pa dri/
+GPU character device nodes; see
+.Xr drm 7
+.It Pa drm/
+GPU
+.Xr drm 7
+special files
.It Pa fd/
-file descriptor files;
-see
-.Xr \&fd 4
+file descriptor files; see
+.Xr fd 4
+.It Pa fd0
+first floppy drive
+.It Pa mmcsd0
+first SD storage device
+.It Pa mmcsd0s1
+first partition on mmcsd0
+.It Pa nda0
+first NVMe storage device attached via
+.Xr cam 3
+.It Pa null
+infinite loop that accepts anything and contains nothing
+.It Pa nvd0
+first NVMe storage device using NVMe namespaces
+.It Pa pts/
+pseduo-terminals; see
+.Xr pts 4
+.It Pa random
+source of weak randomness; see
+.Xr random 4
+.It Pa sa0
+first tape drive
+.It Pa usb/
+USB busses
+.It Pa vmm/
+active
+.Xr bhyve 8
+virtual machines
+.It Pa zvol/
+.Xr zfs 8
+volumes
.El
+.It Pa /entropy
+provides initial state to RNG; see
+.Xr save-entropy 8
.It Pa /etc/
-system configuration files and scripts
-.Pp
-.Bl -tag -width "defaults/" -compact
-.It Pa defaults/
-default system configuration files;
-see
-.Xr rc 8
+base system configuration files and scripts; see
+.Xr intro 5
+.Pp
+.Bl -tag -width "freebsd-update.conf" -compact
+.It Pa auto_master
+autofs
+.Xr automount 8
+configuration
.It Pa bluetooth/
bluetooth configuration files
+.It Pa cron.d/
+tables for driving scheduled tasks; see
+.Xr crontab 5
+.It Pa crontab
+root's cron table
+.It Pa defaults/
+default system configuration files; see
+.Xr rc 8
+.It Pa devd/
+configuration for
+.Xr devd 8 ,
+the device state change daemon
+.It Pa devfs.conf
+boot time device configuration
+.It Pa dma/
+configuration for
+.Xr dma 8
+.It Pa freebsd-update.conf
+configuration for the base system updater; see
+.Xr freebsd-update 8
+.It Pa fstab
+static filesystem configuration; see
+.Xr fstab 5
+.It Pa hosts
+database of local hosts if no network name server is running
+.It Pa inetd.conf
+configuration for
+.Bx
+heritage internet servers; see
+.Xr inetd 8
.It Pa localtime
-local timezone information;
-see
+local timezone information; see
.Xr ctime 3
+.It Pa jail.conf.d/
+.Xr jail 8
+startup scripts
+.It Pa login.conf
+login class capability database; see
+.Xr login.conf 5
+.It Pa machine-id
+defines the UUID for the local system, required for dbus
.It Pa mail/
-Sendmail control files
+.Xr sendmail 8
+control files
+.Pp
+.Bl -tag -width "mailer.conf" -compact
+.It Pa aliases
+addresses to deliver system mail
+.It Pa mailer.conf
+.Xr mailwrapper 8
+configuration
+.El
+.Pp
+.It Pa motd.template
+message displayed upon tty login; see
+.Xr motd 5
.It Pa mtree/
-mtree configuration files;
-see
+system mapper specification; see
.Xr mtree 8
+.It Pa newsyslog.conf.d/
+log rotation configuration files.
+.It Pa ntp/
+stored time for the Network Time Protocol
+.It Pa ntp.conf
+configuration for the NTP client,
+.Xr ntpd 8
.It Pa pam.d/
-configuration files for the Pluggable Authentication Modules (PAM)
-library
+configuration files for the Pluggable Authentication Modules (PAM) library;
+see
+.Xr pam 3
.It Pa periodic/
-scripts that are run daily, weekly, and monthly, via
+scripts that are run daily, weekly, or monthly by
.Xr cron 8 ;
see
.Xr periodic 8
+.It Pa pf.conf
+configuration for the Packet Filter firewall; see
+.Xr pf 4
+.It Pa pkg/
+default configuration for the package manager,
+.Xr pkg 8
+.It Pa ppp/
+PPP configuration files; see
+.Xr ppp 8
+.It Pa rc.conf
+system and daemon configuration; see
+.Xr rc.conf 5
.It Pa rc.d/
-system and daemon startup/control scripts;
-see
+system and daemon startup/control scripts; see
.Xr rc 8
+.It Pa resolv.conf
+DNS configuration; see
+.Xr resolv.conf 5
+.It Pa resolvconf.conf
+DNS configuration manager configuration, often generated by
+local-unbound; see
+.Xr local-unbound 8
+or
+.Xr resolvconf 8
.It Pa security/
-OpenBSM audit configuration files;
-see
+OpenBSM audit configuration files; see
.Xr audit 8
-.It Pa ppp/
-ppp configuration files;
-see
-.Xr ppp 8
.It Pa ssh/
-OpenSSH configuration files;
-see
+OpenSSH configuration files; see
.Xr ssh 1
.It Pa ssl/
OpenSSL configuration files
-.El
+.It Pa sysctl.conf
+kernel state defaults; see
+.Xr sysctl.conf 5
+.It Pa syslog.conf
+system log configuration
+.It Pa ttys
+tty creation configuration; see
+.Xr getty 8
+.It Pa wpa_supplicant.conf
+client wifi configuration; see
+.Xr wpa_supplicant.conf 5
+.El
+.It Pa /home/
+home directories for users; the typical home for an interactive user
+.Va beastie
+would be
+.Pa /home/beastie/
.It Pa /lib/
-critical system libraries needed for binaries in
+system libraries critical to binaries in
.Pa /bin
and
.Pa /sbin
.Pp
-.Bl -tag -width "defaults/" -compact
-.It Pa casper/
-service-specific
-.Xr libcasper 3
-Capsicum support libraries
+.Bl -tag -width "nvmecontrol/" -compact
.It Pa geom/
class-specific libraries for the
.Xr geom 8
@@ -159,53 +340,55 @@ vendor-specific libraries to extend the
utility
.El
.It Pa /libexec/
-critical system utilities needed for binaries in
+system utilities critical to binaries in
.Pa /bin
and
.Pa /sbin
.It Pa /media/
-contains subdirectories to be used as mount points
-for removable media such as CDs, USB drives, and
-floppy disks
+mount points for removable storage media such as CDs, DVDs,
+and USB drives; see
+.Xr automount 8 ,
+or
+.Xr bsdisks 8
+if a using a desktop environment from
+.Xr ports 7
.It Pa /mnt/
empty directory commonly used by
system administrators as a temporary mount point
.It Pa /net/
-automounted NFS shares;
-see
+automounted NFS shares; see
.Xr auto_master 5
.It Pa /nonexistent/
a non-existent directory;
-by convention, it serves as a home directory
-for special user accounts
-that need no home directory;
-see also
+by convention, it serves as a home directory for user accounts
+that need no home directory; see also
.Pa /var/empty/
.It Pa /proc/
-process file system;
-see
+process file system; see
.Xr procfs 5
.It Pa /rescue/
-statically linked programs for emergency recovery;
-see
+statically linked programs for emergency recovery; see
.Xr rescue 8
.It Pa /root/
-root's HOME directory
+home directory of the root user
.It Pa /sbin/
-system programs and administration utilities
-fundamental to both single-user and multi-user environments
+fundamental
+.Bx
+system administration utilities; see
+.Xr intro 8
.It Pa /tmp/
-temporary files that are not guaranteed to persist across system reboots
+temporary files commonly removed between system reboots;
+see
+.Va clear_tmp_enable
+in
+.Xr rc.conf 5
.It Pa /usr/
contains the majority of user utilities and applications
.Pp
.Bl -tag -width "freebsd-dist/" -compact
.It Pa bin/
-common utilities, programming tools, and applications
-.It Pa compat/
-files needed to support binary compatibility with other operating systems;
-see
-.Xr linux 4
+common utilities, programming tools, and applications; see
+.Xr intro 1
.It Pa freebsd-dist/
distribution files
.Pq like base.txz ;
@@ -214,302 +397,180 @@ see
and
.Xr bsdinstall 8
.It Pa include/
-standard C include files
-.Pp
-.Bl -tag -width "kerberos5/" -compact
-.It Pa arpa/
-C include files for Internet service protocols
-.It Pa bsnmp/
-C include files for the SNMP daemon
-.It Pa c++/
-C++ include files
-.It Pa cam/
-C include files for the Common Access Methods Layer
-.Bl -tag -width "kerberos5/" -compact
-.It Pa scsi/
-SCSI device on top of CAM
-.El
-.It Pa dev/
-C include files for programming various
-.Fx
-devices
-.Bl -tag -width "kerberos5/" -compact
-.It Pa ic/
-various header files describing driver- and bus-independent
-hardware circuits
-.It Pa ofw/
-Open Firmware support
-.It Pa pbio/
-8255 PPI cards;
-see
-.Xr pbio 4
-.It Pa ppbus/
-parallel port bus;
-see
-.Xr ppbus 4
-.It Pa usb/
-USB subsystem
-.El
-.It Pa fs/
-.Bl -tag -width "kerberos5/" -compact
-.It Pa fdescfs/
-per-process file descriptors file system
-.It Pa msdosfs/
-MS-DOS file system
-.It Pa nfs/
-C include files for NFS (Network File System) version 2, 3 and 4
-.It Pa nullfs/
-loopback file system
-.It Pa procfs/
-process file system
-.It Pa smbfs/
-SMB/CIFS file system
-.It Pa udf/
-UDF file system
-.It Pa unionfs
-union file system
-.El
-.It Pa geom/
-GEOM framework
-.Bl -tag -width "kerberos5/" -compact
-.It Pa concat/
-CONCAT GEOM class
-.It Pa gate/
-GATE GEOM class
-.It Pa mirror/
-MIRROR GEOM class
-.It Pa nop/
-NOP GEOM class
-.It Pa raid3/
-RAID3 GEOM class
-.It Pa stripe/
-STRIPE GEOM class
-.El
-.It Pa libmilter/
-C include files for libmilter,
-the
-.Xr sendmail 8
-mail filter API
-.It Pa machine/
-machine-specific C include files
-.It Pa net/
-miscellaneous network C include files
-.Bl -tag -width Fl -compact
-.It Pa altq/
-C include files for alternate packet queueing; see
-.Xr altq 4
-.El
-.It Pa net80211/
-C include files for 802.11 wireless networking;
-see
-.Xr net80211 4
-.It Pa netinet/
-C include files for Internet standard protocols;
-see
-.Xr inet 4
-.It Pa netinet6/
-C include files for Internet protocol version 6;
-see
-.Xr inet6 4
-.It Pa netipsec/
-kernel key-management service;
-see
-.Xr ipsec 4
-.It Pa netsmb/
-SMB/CIFS requester
-.It Pa nfs/
-C include files for NFS (Network File System) version 2 and 3 (legacy)
-.It Pa openssl/
-OpenSSL (Cryptography/SSL toolkit) headers
-.It Pa protocols/
-C include files for Berkeley service protocols
-.It Pa rpc/
-remote procedure calls;
-see
-.Xr rpc 3
-.It Pa rpcsvc/
-definition of RPC service structures; see
-.Xr rpc 3
-.It Pa security/
-PAM; see
-.Xr pam 8
-.It Pa sys/
-system C include files (kernel data structures)
-.\" .It Pa tcl/
-.\" Tcl language;
-.\" see
-.\" .Xr Tcl n
-.\" .Bl -tag -width "kerberos5/" -compact
-.\" .It Pa generic/
-.\" ???
-.\" .It Pa unix/
-.\" ???
-.\" .El
-.It Pa ufs/
-C include files for UFS (The U-word File System)
-.Bl -tag -width "kerberos5/" -compact
-.It Pa ffs/
-Fast file system
-.It Pa ufs/
-UFS file system
-.El
-.It Pa vm/
-virtual memory;
-see
-.Xr vmstat 8
-.El
-.Pp
+standard C include header files
.It Pa lib/
-shared and archive
+shared and
.Xr ar 1 Ns -type
-libraries
+libraries; see
+.Xr intro 3
.Pp
.Bl -tag -width Fl -compact
+.It Pa clang/
+shared libraries for the system compiler,
+.Xr clang 1
.It Pa compat/
shared libraries for compatibility
.It Pa debug/
standalone debug data for the kernel and base system libraries and binaries
.It Pa dtrace/
-DTrace library scripts
+.Xr dtrace 1
+library scripts
.It Pa engines/
-OpenSSL (Cryptography/SSL toolkit) dynamically loadable engines
+OpenSSL
+.Pq Cryptography/SSL toolkit
+dynamically loadable engines
+.It Pa flua/
+.Fx
+Lua shared libraries
+.It Pa i18n/
+shared libraries for internationalization
.El
.Pp
+.It Pa lib32/
+32-bit compatibility libraries
.It Pa libdata/
miscellaneous utility data files
.Pp
.Bl -tag -width Fl -compact
-.It Pa gcc/
-.Xr gcc 1
-configuration data
.It Pa ldscripts/
-linker scripts;
-see
+linker scripts; see
.Xr ld 1
.It Pa pkgconfig/
-pc files
+collections of compiler and linker flags for the
+.Xr pkgconf 1
+development tool
.El
.Pp
.It Pa libexec/
-system daemons & system utilities (executed by other programs)
+system daemons and utilities executed by programs
.Pp
-.Bl -tag -width Fl -compact
-.It Pa aout/
-utilities to manipulate a.out executables
-.It Pa elf/
-utilities to manipulate ELF executables
+.Bl -tag -width "bsdinstall/" -compact
+.It Pa bsdconfig/
+utilities called by the ncurses
+.Fx
+configuration wizard
+.It Pa bsdinstall/
+utilities for
+.Xr bsdinstall 8
+.It Pa dwatch/
+profiles for
+.Xr dwatch 1
+.It Pa fwget/
+utilities called by
+.Xr fwget 8
+.It Pa hyperv/
+scripts for communicating with the Hyper-V hypervisor
.It Pa lpr/
-utilities and filters for LP print system;
-see
+utilities and filters for the line printer system; see
.Xr lpr 1
.It Pa sendmail/
the
.Xr sendmail 8
-binary;
-see
+binary; see
.Xr mailwrapper 8
.It Pa sm.bin/
restricted shell for
.Xr sendmail 8 ;
see
.Xr smrsh 8
+.It Pa zfs/
+Z file system utilities
.El
.Pp
.It Pa local/
-local executables, libraries, etc.
-Also used as the default destination for the
+local executables, libraries, etc, installed by
+.Xr pkg 7
+or
.Xr ports 7
-framework.
-Within
-.Pa local/ ,
-the general layout sketched out by
-.Nm
-for
-.Pa /usr
-should be used.
-Exceptions are the
-ports documentation
-.Po in
-.Pa share/doc/<port>/ Ns Pc ,
-and
-.Pa /usr/local/etc
-.Po mimics
-.Pa /etc Ns Pc .
+.Pp
+.Bl -tag -width Fl -compact
+.It Pa bin/
+local user utilities, see
+.Xr intro 1
+.It Pa etc/
+local program configurations
+.It Pa include/
+local library headers
+.It Pa lib/
+local libraries
+.It Pa lib32/
+local 32-bit compatability libraries
+.It Pa libdata/
+local utility data files
+.It Pa libexec/
+utilities executed by local utilities
+.It Pa man/
+local manual pages; see
+.Xr man 1
+.It Pa sbin/
+local administration utilities
+.It Pa share/
+local architecture-independent files
+.It Pa share/doc/
+local documentation
+.It Pa share/doc/freebsd/
+articles, books, FAQ, and handbooks available from the
+.Fx
+project
+.El
+.Pp
.It Pa obj/
architecture-specific target tree produced by building
.Fx
-from source;
-see
+from source; see
.Xr build 7
.It Pa ports/
.Fx
ports collection; see
.Xr ports 7
.It Pa sbin/
-system daemons & system utilities (executed by users)
+system daemons and utilities meant for user execution; see
+.Xr intro 8
.It Pa share/
architecture-independent files
.Pp
.Bl -tag -width Fl -compact
+.It Pa atf/
+scripts for the Automated Testing Framework; see
+.Xr ATF 7
+.It Pa bhyve/
+.Xr bhyve 8
+keyboard mappings
.It Pa calendar/
-a variety of pre-fab calendar files;
-see
+system-wide calendar files; see
.Xr calendar 1
+.It Pa certs/
+TLS certificates for
+.Xr openssl 1
.It Pa dict/
-word lists;
-see
+word lists; see
.Xr look 1
+.Pp
.Bl -tag -width Fl -compact
.It Pa freebsd
.Fx Ns -specific
terms, proper names, and jargon
.It Pa web2
-words from Webster's 2nd International
+words from Webster's Second International
.El
+.Pp
.It Pa doc/
-miscellaneous documentation;
-source for most of the printed
-.Bx
-manuals (available
-from the
-.Tn USENIX
-association)
-.Bl -tag -width Fl -compact
-.It Pa FAQ/
-Frequently Asked Questions
-.It Pa IPv6/
-implementation notes for IPv6
-.It Pa es/
-Spanish translations of documents in /usr/share/doc
-.It Pa handbook/
-.Fx
-Handbook
-.It Pa ja/
-Japanese translations of documents in /usr/share/doc
-.It Pa legal/
-License files for vendor supplied firmware files
-.It Pa ncurses/
-HTML documents pertaining to ncurses;
-see
-.Xr ncurses 3
-.It Pa ntp/
-HTML documents pertaining to the Network Time Protocol
-.It Pa ru/
-Russian translations of documents in /usr/share/doc
-.It Pa tutorials/
-.Fx
-tutorials
-.It Pa zh/
-Chinese translations of documents in /usr/share/doc
-.El
+miscellaneous documentation
+.It Pa dtrace/
+scripts for the Dynamic Tracing Compiler; see
+.Xr dtrace 1
.It Pa examples/
various examples for users and programmers
.It Pa firmware/
firmware images loaded by userland programs
.It Pa games/
-ASCII text files used by various games
+ASCII text files used by
+.Bx
+heritage games, see
+.Xr intro 6
.It Pa keys/
known trusted and revoked keys
+.Pp
.Bl -tag -width Fl -compact
.It Pa pkg/
fingerprints for
@@ -517,25 +578,31 @@ fingerprints for
and
.Xr pkg 8
.El
+.Pp
.It Pa locale/
-localization files;
-see
+localization files; see
.Xr setlocale 3
.It Pa man/
-manual pages
+system manual pages; see
+.Xr man 1
.It Pa misc/
-miscellaneous system-wide ASCII text files
+miscellaneous system-wide files
+.Pp
.Bl -tag -width Fl -compact
-.It Pa fonts/
-???
+.It Pa ascii
+chart of the ASCII codepoints
+.It Pa flowers
+the meanings of flowers
+.It Pa magic
+magic numbers used by
+.Xr file 1
.It Pa termcap
-terminal characteristics database;
-see
+terminal characteristics database; see
.Xr termcap 5
.El
+.Pp
.It Pa mk/
-templates for make;
-see
+templates for make; see
.Xr make 1
.It Pa nls/
national language support files
@@ -551,259 +618,149 @@ example
(dot) files for new accounts
.It Pa snmp/
MIBs, example files and tree definitions for the SNMP daemon
+.Pp
.Bl -tag -width Fl -compact
.It Pa defs/
tree definition files for use with
.Xr gensnmptree 1
.It Pa mibs/
-MIB files
+management Information Base
+.Pq MIB
+files
.El
+.Pp
.It Pa syscons/
-files used by syscons;
-see
.Xr syscons 4
+files
+.Pp
.Bl -tag -width Fl -compact
.It Pa fonts/
-console fonts;
-see
+console fonts; see
.Xr vidcontrol 1
and
.Xr vidfont 1
.It Pa keymaps/
-console keyboard maps;
-see
+console keyboard maps; see
.Xr kbdcontrol 1
and
.Xr kbdmap 1
.It Pa scrnmaps/
console screen maps
.El
+.Pp
.It Pa sysroot/
files necessary for the -sysroot compiler/linker argument to build non-native
-binaries.
-.Bl -tag -width Fl -compact
+binaries
+.Pp
+.Bl -tag -width "VERSION/" -compact
.It Pa VERSION/
files for
.Fx
-release VERSION.
-By convention,
+release VERSION;
+by convention,
.Dq VERSION
matches
.Xr uname 1
-.Fl r .
-.Bl -tag -width Fl -compact
-.It Pa MACHINE.MACHINE_ARCH/
-represent the binary ABI for these files.
+.Fl r
+.It Pa VERSION/MACHINE.MACHINE_ARCH/
+represent the binary ABI for these files;
.Dq MACHINE
matches
.Xr uname 1
-.Fl m .
+.Fl m ;
.Dq MACHINE_ARCH
matches
.Xr uname 1
-.Fl p .
-.El
+.Fl p
.El
+.Pp
.It Pa tabset/
tab description files for a variety of terminals; used in
-the termcap file;
-see
+the termcap file; see
.Xr termcap 5
.It Pa vi/
-localization support and utilities for
+localization support and utilities for the
.Xr vi 1
+editor
.It Pa vt/
-files used by vt;
-see
+files used by the system console; see
.Xr vt 4
+.Pp
.Bl -tag -width Fl -compact
.It Pa fonts/
-console fonts;
-see
-.Xr vidcontrol 1
+console fonts; see
+.Xr vidcontrol 1 ,
+.Xr vidfont 1 ,
and
-.Xr vidfont 1
+.Xr vtfontcvt 8
.It Pa keymaps/
-console keyboard maps;
-see
+console keyboard maps; see
.Xr kbdcontrol 1
and
.Xr kbdmap 1
-.\" .It Pa scrnmaps/
-.\" console screen maps
.El
+.Pp
.It Pa zoneinfo/
-timezone configuration information;
-see
+timezone configuration information; see
.Xr tzfile 5
.El
.Pp
.It Pa src/
.Fx
source code; see
-.Xr development 7
-.Pp
-.Bl -tag -width "kerberos5/" -compact
-.It Pa bin/
-source code for files in /bin
-.It Pa cddl/
-utilities covered by the Common Development and Distribution License
-.It Pa contrib/
-source code for contributed software
-.It Pa crypto/
-source code for contributed cryptography software
-.It Pa etc/
-source code for files in
-.Pa /etc
-.It Pa gnu/
-utilities covered by the GNU General Public License
-.It Pa include/
-source code for files in
-.Pa /usr/include
-.It Pa kerberos5/
-build infrastructure for Kerberos version 5
-.It Pa lib/
-source code for files in
-.Pa /lib
-and
-.Pa /usr/lib
-.It Pa libexec/
-source code for files in
-.Pa /usr/libexec
-.It Pa release/
-files required to produce a
-.Fx
-release
-.It Pa rescue/
-source code for files in
-.Pa /rescue
-.It Pa sbin/
-source code for files in
-.Pa /sbin
-.It Pa secure/
-build directory for files in
-.Pa /usr/src/crypto
-.It Pa share/
-source for files in
-.Pa /usr/share
-.It Pa stand/
-boot loader source code
-.It Pa sys/
-kernel source code
-.Bl -tag -width Fl -compact
-.It Pa amd64/
-AMD64 architecture support
-.It Pa arm/
-ARM architecture support
-.It Pa arm64/
-ARMv8 architecture support
-.It Pa cam/
-.Xr cam 4
-and
-.Xr ctl 4
-.It Pa cddl/
-CDDL-licensed optional sources, including ZFS
-and DTrace
-.It Pa ddb/
-.Xr ddb 4
-.It Pa fs/
-most filesystems
-.It Pa dev/
-device drivers
-.It Pa geom/
-.Xr geom 4
-.It Pa i386/
-i386 (32 bit) architecture support
-.It Pa kern/
-main part of the kernel
-.It Pa net80211/
-.Xr net80211 4
-.It Pa netgraph/
-.Xr netgraph 4
-.It Pa netinet/
-.Xr inet 4
-.It Pa netinet6/
-.Xr inet6 4
-.It Pa netipsec/
-.Xr ipsec 4
-.It Pa netpfil/
-.Xr ipfw 4
-and
-.Xr pf 4
-.It Pa opencrypto/
-.Xr crypto 7
-.It Pa powerpc/
-PowerPC/POWER architecture support
-.It Pa riscv/
-RISC-V architecture support
-.It Pa security/
-.Xr audit 4
-and
-.Xr mac 4
-.It Pa sys/
-kernel headers
-.It Pa ufs/
-Unix File System
-.It Pa x86/
-code shared by AMD64 and i386 architectures
-.El
-.It Pa targets/
-support for experimental DIRDEPS_BUILD
-.It Pa tests/
-source code for files in
-.Pa /usr/tests
-.It Pa tools/
-tools used for maintenance and testing of
-.Fx
-.It Pa usr.bin/
-source code for files in
-.Pa /usr/bin
-.It Pa usr.sbin/
-source code for files in
-.Pa /usr/sbin
-.El
+.Xr development 7 ;
+the layout of the source tree is described by the top-level
+.Pa README.md
+file
.Pp
.It Pa tests/
-The
+the
.Fx
test suite; see
.Xr tests 7
.El
.It Pa /var/
-multi-purpose log, temporary, transient, and spool files
+log, temporary, transient, and spool files
.Pp
-.Bl -tag -width "defaults/" -compact
+.Bl -tag -width "preserve/" -compact
.It Pa account/
system accounting files
.Pp
-.Bl -tag -width Fl -compact
+.Bl -tag -width Ds -compact
.It Pa acct
-execution accounting file;
-see
+execution accounting file; see
.Xr acct 5
.El
.Pp
.It Pa at/
-timed command scheduling files;
-see
-.Xr \&at 1
+timed command scheduling files; see
+.Xr at 1
.Pp
-.Bl -tag -width Fl -compact
+.Bl -tag -width Ds -compact
.It Pa jobs/
-directory containing job files
+job files
.It Pa spool/
-directory containing output spool files
+output spool files
.El
.Pp
+.It Pa audit/
+security event audit trail files; see
+.Xr audit 8
+.It Pa authpf/
+user shell sessions for authenticating gateways; see
+.Xr authpf 8
.It Pa backups/
-miscellaneous backup files
+critical system configuration backups
.It Pa cache/
-miscellaneous cached files
+miscellaneous cache files
.Pp
-.Bl -tag -width Fl -compact
+.Bl -tag -width Ds -compact
.It Pa pkg/
cached packages for
.Xr pkg 8
+.It Pa cups/
+cached printers for the Common Unix Prinitng system; see
+.Xr cups 1
.El
.Pp
.It Pa crash/
@@ -812,66 +769,130 @@ default directory to store kernel crash dumps; see
and
.Xr savecore 8
.It Pa cron/
-files used by cron;
-see
+files used by cron; see
.Xr cron 8
.Pp
-.Bl -tag -width Fl -compact
+.Bl -tag -width Ds -compact
.It Pa tabs/
-crontab files;
-see
+crontab files; see
.Xr crontab 5
.El
.Pp
.It Pa db/
-miscellaneous automatically generated system-specific database files
-.Bl -tag -width Fl -compact
+autogenerated system-specific database files
+.Pp
+.Bl -tag -width "freebsd-update/" -compact
+.It Pa etcupdate/
+temporary files and log for
+.Xr etcupdate 8
.It Pa freebsd-update/
+downloads and temporary files for
.Xr freebsd-update 8
-work directory for temporary files and downloaded updates
+.It Pa pkg/
+package database
.El
+.Pp
.It Pa empty/
-empty directory for use by programs that need a specifically empty directory.
-Used for instance by
+for use by programs that require an empty directory,
+used for instance by
.Xr sshd 8
for privilege separation
.It Pa games/
-miscellaneous game status and score files
+status and score files for
+.Bx
+heritage games
.It Pa heimdal/
Kerberos server databases; see
.Xr kdc 8
+.It Pa lib/
+state information for ported Linux applications
.It Pa log/
-miscellaneous system log files
-.Pp
-.Bl -tag -width Fl -compact
-.It Pa utx.lastlogin
-last login log;
+system log files
+.Pp
+.Bl -tag -width "bsdinstall_log" -compact
+.It Pa Xorg.0.log
+.Xr Xserver 1
+log, if
+.Xr X 7
+is installed rotates to
+.Pa Xorg.0.log.old
+.It Pa aculog
+serial line access log; see
+.Xr cu 1
+.It Pa auth.log
+system authentication log
+.It Pa bsdinstall_log
+system installation log
+.It Pa cron
+scheduled task log; see
+.Xr cron 8
+.It Pa cups/
+logs for
+.Xr cups 1
+.It Pa daemon.log
+default log for system daemons
+.It Pa devd.log
+default log for device state change daemon
+.It Pa dmesg.today
+system message buffer log, rotates to
+.Pa dmesg.yesterday
+.It Pa debug.log
+undiscarded debug syslog messages
+.It Pa lpd-errs
+logs for the line printer spooler daemon; see
+.Xr lpd 8
+.It Pa maillog
+.Xr sendmail 8
+log, rotates and compresses to maillog.0.bz2
+.It Pa messages
+general system log; see
+.Xr syslogd 8
+.It Pa mount.today
+currently loaded
+.Xr fstab 5 ,
+rotates to
+.Pa mount.yesterday
+.It Pa pf.today
+packet filter firewall log; see
+.Xr pf 4
+.It Pa pflog
+saved packets caught by
+.Xr pflogd 8
+.It Pa ppp.log
see
+.Xr ppp 8
+.It Pa security
+transcript of events marked with the security flag
+.It Pa setuid.today
+listing of executable files which run with elevated permissions, rotates
+to
+.Pa setuid.yesterday
+.It Pa userlog
+logs changes in users or groups
+.It Pa utx.lastlogin
+last login log; see
.Xr getutxent 3
.It Pa utx.log
-login/logout log;
-see
+login/logout log; see
.Xr getutxent 3
+.It Pa xferlog
+default log for
+.Xr ftpd 8
.El
.Pp
.It Pa mail/
user mailbox files
.It Pa msgs/
-system messages database;
-see
+system messages database; see
.Xr msgs 1
.It Pa preserve/
-temporary home of files preserved after an accidental death
-of an editor;
-see
-.Xr \&ex 1
+unused, present for historical reasons
.It Pa quotas/
-file system quota information files
+UFS quota information files
.It Pa run/
-system information files describing various info about
-system since it was booted
+files containing information about the operating system since it was booted
.Pp
-.Bl -tag -width Fl -compact
+.Bl -tag -width "wpa_supplicant/" -compact
.It Pa bhyve/
.Xr bhyve 8
virtual machine
@@ -882,46 +903,61 @@ writable by the
group for command connection sockets; see
.Xr ppp 8
.It Pa utx.active
-database of current users;
-see
+database of current users; see
.Xr getutxent 3
+.It Pa wpa_supplicant/
+IEEE Std. 802.11 wifi run time files
.El
.Pp
.It Pa rwho/
-rwho data files;
-see
+information about other systems on the local network; see
.Xr rwhod 8 ,
.Xr rwho 1 ,
and
.Xr ruptime 1
.It Pa spool/
-miscellaneous printer and mail system spooling directories
+printer and mail system spooling directories
.Pp
-.Bl -tag -width Fl -compact
+.Bl -tag -width "clientmqueue/" -compact
.It Pa clientmqueue/
-undelivered submission mail queue;
-see
+undelivered submission mail queue; see
.Xr sendmail 8
+.It Pa cups/
+print jobs and temporary files for
+.Xr cups 1
+.It Pa dma/
+undelivered mail queue for
+.Dx
+Mail Agent; see
+.Xr dma 8
+.It Pa lock/
+serial device locks; see
+.Xr uucplock 3
+.It Pa lpd/
+line printer spooler daemon spool
.It Pa ftp/
-ftp root directory;
-see
+ftp root directory; see
.Xr ftpd 8
.It Pa mqueue/
-undelivered mail queue;
-see
+undelivered mail queue for
.Xr sendmail 8
.It Pa output/
line printer spooling directories
.El
.Pp
.It Pa tmp/
-temporary files that are kept between system reboots
+temporary files not removed between system reboots
.Pp
-.Bl -tag -width Fl -compact
+.Bl -tag -width "vi.recover/" -compact
.It Pa vi.recover/
-the directory where recovery files are stored
+recovery files for the
+.Xr vi 1
+editor
.El
.Pp
+.It Pa unbound/
+files and configuration for
+.Xr unbound 8
.It Pa yp/
the NIS maps; see
.Xr yp 8
@@ -930,8 +966,8 @@ the NIS maps; see
.Sh NOTES
This manual page documents the default
.Fx
-file system layout, but
-the actual hierarchy on a given system is defined at the system
+file system layout.
+The actual hierarchy on a given system is defined at the system
administrator's discretion.
A well-maintained installation will include a customized version of
this document.
@@ -945,5 +981,5 @@ this document.
.Sh HISTORY
A
.Nm
-manual page appeared in
+manual page first appeared in 1979 with
.At v7 .
diff --git a/share/man/man7/hostname.7 b/share/man/man7/hostname.7
index ac00bd9c8818..2c15fb6f47b8 100644
--- a/share/man/man7/hostname.7
+++ b/share/man/man7/hostname.7
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)hostname.7 8.2 (Berkeley) 12/30/93
-.\" $FreeBSD$
-.\"
.Dd December 25, 2013
.Dt HOSTNAME 7
.Os
diff --git a/share/man/man7/intro.7 b/share/man/man7/intro.7
index 76385eca7144..a155839bde64 100644
--- a/share/man/man7/intro.7
+++ b/share/man/man7/intro.7
@@ -25,10 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)intro.7 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
-.Dd November 19, 2020
+.Dd April 18, 2024
.Dt INTRO 7
.Os
.Sh NAME
@@ -68,6 +65,8 @@ file system hierarchy in
.Fx
.It Xr hostname 7
host name resolution description
+.It Xr networking 7
+network connection quickstart guide
.It Xr release 7
layout of
.Fx
diff --git a/share/man/man7/maclabel.7 b/share/man/man7/maclabel.7
index 0648fb565c9a..5006cc47beb3 100644
--- a/share/man/man7/maclabel.7
+++ b/share/man/man7/maclabel.7
@@ -31,8 +31,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 25, 2002
.Dt MACLABEL 7
.Os
diff --git a/share/man/man7/mitigations.7 b/share/man/man7/mitigations.7
new file mode 100644
index 000000000000..1cea86e352c5
--- /dev/null
+++ b/share/man/man7/mitigations.7
@@ -0,0 +1,367 @@
+.\" Copyright © 2023 The FreeBSD Foundation
+.\"
+.\" This documentation was written by Ed Maste <emaste@freebsd.org>, and
+.\" Olivier Certner <olce.freebsd@certner.fr> at Kumacom SAS, under
+.\" sponsorship of the FreeBSD Foundation.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 October 6, 2023
+.Dt MITIGATIONS 7
+.Os
+.Sh NAME
+.Nm mitigations
+.Nd FreeBSD Security Vulnerability Mitigations
+.Sh SYNOPSIS
+In
+.Fx ,
+various security mitigations are employed to limit the impact of
+vulnerabilities and protect the system from malicious attacks.
+Some of these mitigations have run-time controls to enable them on a global
+or per-process basis, some are optionally enabled or disabled at compile time,
+and some are inherent to the implementation and have no controls.
+.Pp
+The following vulnerability mitigations are covered in this document:
+.Bl -bullet -compact
+.It
+Address Space Layout Randomization (ASLR)
+.It
+Position Independent Executable (PIE)
+.It
+Write XOR Execute page protection policy
+.It
+.Dv PROT_MAX
+.It
+Relocation Read-Only (RELRO)
+.It
+Bind Now
+.\".It
+.\"Stack Smashing Protection (SSP)
+.\".It
+.\"Supervisor Mode Memory Protection
+.It
+Hardware Vulnerability Mitigation Controls
+.It
+Capsicum
+.El
+.Pp
+Please note that the effectiveness and availability of these mitigations may
+vary depending on the
+.Fx
+version and system configuration.
+.Sh DESCRIPTION
+Security vulnerability mitigations are techniques employed in
+.Fx
+to limit the potential impact of security vulnerabilities in software and
+hardware.
+It is essential to understand that mitigations do not directly address the
+underlying security issues.
+They are not a substitute for secure coding practices.
+Mitigations serve as an additional layer of defense, helping to reduce the
+likelihood of a successful exploitation of vulnerabilities by making it
+more difficult for attackers to achieve their objectives.
+.Pp
+This manual page describes the security mitigations implemented in
+.Fx
+to enhance the overall security of the operating system.
+Each mitigation is designed to protect against specific types of attacks
+and vulnerabilities.
+.\"
+.Sh SOFTWARE VULNERABILITY MITIGATIONS
+.Ss Address Space Layout Randomization (ASLR)
+Address Space Layout Randomization (ASLR) is a security mitigation technique
+that works by randomizing the memory addresses where system and application
+code, data, and libraries are loaded, making it more challenging for attackers
+to predict the memory layout and exploit vulnerabilities.
+.Pp
+ASLR introduces randomness into the memory layout during process execution,
+reducing the predictability of memory addresses.
+ASLR is intended to make exploitation more difficult in the event that an
+attacker discovers a software vulnerability, such as a buffer overflow.
+.Pp
+ASLR can be enabled on both a global and per-process basis.
+Global control is provided by a separate set of
+.Xr sysctl 8
+knobs for 32- and 64-bit processes.
+It can be or disabled on a per-process basis via
+.Xr proccontrol 1 .
+Note that an ASLR mode change takes effect upon address space change,
+i.e., upon
+.Xr execve 2 .
+.Pp
+Global controls for 32-bit processes:
+.Bl -tag -width kern.elf32.aslr.pie_enable
+.It Va kern.elf32.aslr.enable
+Enable ASLR for 32-bit ELF binaries, other than Position Independent
+Executable (PIE) binaries.
+.It Va kern.elf32.aslr.pie_enable
+Enable ASLR for 32-bit Position Independent Executable (PIE) ELF binaries.
+.It Va kern.elf32.aslr.honor_sbrk
+Reserve the legacy
+.Xr sbrk 2
+region for compatibility with older binaries.
+.It Va kern.elf32.aslr.stack
+Randomize the stack location for 32-bit ELF binaries.
+.El
+.Pp
+Global controls for 64-bit processes:
+.Bl -tag -width kern.elf64.aslr.pie_enable
+.It Va kern.elf64.aslr.enable
+Enable ASLR for 64-bit ELF binaries, other than Position Independent
+Executable (PIE) binaries.
+.It Va kern.elf64.aslr.pie_enable
+Enable ASLR for 64-bit Position Independent Executable (PIE) ELF binaries.
+.It Va kern.elf64.aslr.honor_sbrk
+Reserve the legacy
+.Xr sbrk 2
+region for compatibility with older binaries.
+.It Va kern.elf64.aslr.stack
+Randomize the stack location for 64-bit ELF binaries.
+.El
+.Pp
+To execute a command with ASLR enabled or disabled:
+.Pp
+proccontrol
+.Fl m Ar aslr
+.Op Fl s Ar enable | disable
+.Ar command
+.\"
+.Ss Position Independent Executable (PIE)
+PIE binaries are executable files that do not have a fixed load address.
+They can be loaded at an arbitrary memory address by the
+.Xr rtld
+run-time linker.
+With ASLR they are loaded at a random address on each execution.
+.\"
+.Ss Write XOR Execute page protection policy
+Write XOR Execute (W^X) is a vulnerability mitigation strategy that strengthens
+the security of the system by controlling memory access permissions.
+.Pp
+Under the W^X mitigation, memory pages may be writable (W) or executable (E),
+but not both at the same time.
+This means that code execution is prevented in areas of memory that are
+designated as writable, and writing or modification of memory is restricted in
+areas marked for execution.
+Applications that perform Just In Time (JIT) compilation need to be adapted
+to be compatible with W^X.
+.Pp
+There are separate
+.Xr sysctl 8
+knobs to control W^X policy enforcement for 32- and 64-bit processes.
+The W^X policy is enabled by setting the appropriate
+.Dv allow_wx
+sysctl to 0.
+.Bl -tag -width kern.elf64.allow_wx
+.It Va kern.elf32.allow_wx
+Allow 32-bit processes to map pages simultaneously writable and executable.
+.It Va kern.elf64.allow_wx
+Allow 64-bit processes to map pages simultaneously writable and executable.
+.El
+.\"
+.Ss PROT_MAX
+.Dv PROT_MAX
+is a FreeBSD-specific extension to
+.Xr mmap 2 .
+.Dv PROT_MAX
+provides the ability to set the maximum protection of a region allocated by
+.Xr mmap
+and later altered by
+.Xr mprotect .
+For example, memory allocated originally with an mmap prot argument of
+PROT_MAX(PROT_READ | PROT_WRITE) | PROT_READ
+may be made writable by a future
+.Xr mprotect
+call, but may not be made executable.
+.\"
+.Ss Relocation Read-Only (RELRO)
+Relocation Read-Only (RELRO) is a mitigation tool that makes certain portions
+of a program's address space that contain ELF metadata read-only, after
+relocation processing by
+.Xr rtld 1 .
+.Pp
+When enabled in isolation the RELRO option provides
+.Em partial RELRO
+support.
+In this case the Procedure Linkage Table (PLT)-related part of the
+Global Offset Table (GOT) (in the section typically named .got.plt) remains
+writable.
+.Pp
+RELRO is enabled by default.
+The
+.Xr src.conf 5
+build-time option
+.Va WITHOUT_RELRO
+may be used to disable it.
+.Ss BIND_NOW
+The
+.Va WITH_BIND_NOW
+.Xr src.conf 5
+build-time option causes binaries to be built with the
+.Dv DF_BIND_NOW
+flag set.
+The run-time loader
+.Xr rtld 1
+will then perform all relocation processing when the process starts, instead of
+on demand (on the first access to each symbol).
+.Pp
+When enabled in combination with
+.Dv RELRO
+(which is enabled by default) this provides
+.Em full RELRO .
+The entire GOT (.got and .got.plt) are made read-only at program startup,
+preventing attacks on the relocation table.
+Note that this results in a nonstandard Application Binary Interface (ABI),
+and it is possible that some applications may not function correctly.
+.\"
+.\".Ss Stack Smashing Protection (SSP)
+.\"
+.\".Ss Supervisor mode memory protection
+.\"
+.Ss Hardware vulnerability controls
+See
+.Xr security 7
+for more information.
+.\"
+.Ss Capsicum
+Capsicum is a lightweight OS capability and sandbox framework.
+See
+.Xr capsicum 4
+for more information.
+.Pp
+.Sh HARDWARE VULNERABILITY MITIGATIONS
+Recent years have seen an unending stream of new hardware vulnerabilities,
+notably CPU ones generally caused by detectable microarchitectural side-effects
+of speculative execution which leak private data from some other thread or
+process or sometimes even internal CPU state that is normally inaccessible.
+Hardware vendors usually address these vulnerabilities as they are discovered by
+releasing microcode updates, which may then be bundled into platform firmware
+updates
+.Pq historically called BIOS updates for PCs .
+.Pp
+The best defense overall against hardware vulnerabilities is to timely apply
+these updates when available and to disable the affected hardware's problematic
+functionalities when possible (e.g., CPU Simultaneous Multi-Threading).
+Software mitigations are only partial substitutes for these, but they can be
+helpful on out-of-support hardware or as complements for just-discovered
+vulnerabilities not yet addressed by vendors.
+Some software mitigations depend on hardware capabilities provided by a
+microcode update.
+.Pp
+FreeBSD's usual policy is to apply by default all OS-level mitigations that do
+not require recompilation, except those the particular hardware it is running on
+is known not to be vulnerable to
+.Pq which sometimes requires firmware updates ,
+or those that are extremely detrimental to performance in proportion to the
+protection they actually provide.
+OS-level mitigations generally can have noticeable performance impacts on
+specific workloads.
+If your threat model allows it, you may want to try disabling some of them in
+order to possibly get better performance.
+Conversely, minimizing the risks may require you to explicitly enable the most
+expensive ones.
+The description of each vulnerability/mitigation indicates whether it is enabled
+or disabled by default and under which conditions.
+It also lists the knobs to tweak to force a particular status.
+.Ss Zenbleed
+The
+.Dq Zenbleed
+vulnerability exclusively affects AMD processors based on the Zen2
+microarchitecture.
+In contrast with, e.g., Meltdown and the different variants of Spectre, which
+leak data by leaving microarchitectural traces, Zenbleed is a genuine hardware
+bug affecting the CPU's architectural state.
+With particular sequences of instructions whose last ones are mispredicted by
+speculative execution, it is possible to make appear in an XMM register data
+previously put in some XMM register by some preceding or concurrent task
+executing on the same physical core
+.Po disabling Simultaneous Muti-Threading
+.Pq SMT
+is thus not a sufficient protection
+.Pc .
+.Pp
+According to the vulnerability's discoverer, all Zen2-based processors are
+affected
+.Po see
+.Lk https://lock.cmpxchg8b.com/zenbleed.html
+.Pc .
+As of August 2023, AMD has not publicly listed any corresponding errata but has
+issued a security bulletin
+.Pq AMD-SB-7008
+entitled
+.Dq Cross-Process Information Leak
+indicating that platform firmware fixing the vulnerability will be distributed
+to manufacturers no sooner than the end of 2023, except for Rome processors for
+which it is already available.
+No standalone CPU microcodes have been announced so far.
+The only readily-applicable fix mentioned by the discoverer is to set a bit of
+an undocumented MSR, which reportedly completely stops XMM register leaks.
+.Pp
+.Fx
+currently sets this bit by default on all Zen2 processors.
+In the future, it might set it by default only on those Zen2 processors whose
+microcode has not been updated to revisions fixing the vulnerability, once such
+microcode updates have been actually released and community-tested.
+To this mitigation are associated the following knobs:
+.Bl -tag -width indent
+.It Va machdep.mitigations.zenbleed.enable
+A read-write integer tunable and sysctl indicating whether the mitigation should
+be forcibly disabled (0), enabled (1) or if it is left to
+.Fx
+to selectively apply it (2).
+Any other integer value is silently converted to and treated as value 2.
+Note that this setting is silently ignored when running on non-Zen2 processors
+to ease applying a common configuration to heterogeneous machines.
+.It Va machdep.mitigations.zenbleed.state
+A read-only string indicating the current mitigation state.
+It can be either
+.Dq Not applicable ,
+if the processor is not Zen2-based,
+.Dq Mitigation enabled
+or
+.Dq Mitigation disabled .
+This state is automatically updated each time the sysctl
+.Va machdep.mitigations.zenbleed.enable
+is written to.
+Note that it can become inaccurate if the chicken bit is set or cleared
+directly via
+.Xr cpuctl 4
+.Po which includes the
+.Xr cpucontrol 8
+utility
+.Pc .
+.El
+.Pp
+The performance impact and threat models related to these mitigations
+should be considered when configuring and deploying them in a
+.Fx
+system.
+.Pp
+.Sh SEE ALSO
+.Xr elfctl 1 ,
+.Xr proccontrol 1 ,
+.Xr rtld 1 ,
+.Xr mmap 2 ,
+.Xr src.conf 5 ,
+.Xr sysctl.conf 5 ,
+.Xr security 7 ,
+.Xr cpucontrol 8 ,
+.Xr sysctl 8
diff --git a/share/man/man7/networking.7 b/share/man/man7/networking.7
new file mode 100644
index 000000000000..869812c05a9b
--- /dev/null
+++ b/share/man/man7/networking.7
@@ -0,0 +1,101 @@
+.\"-
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2024 Alexander Ziaee <concussious@runbox.com>
+.\"
+.Dd April 17, 2024
+.Dt "NETWORKING" 7
+.Os
+.Sh NAME
+.Nm networking ,
+.Nm wifi
+.Nd quickstart guide to connecting to a network
+.Sh DESCRIPTION
+In the following examples, it is assumed that we are connecting to Ethernet
+with the first interface found by the
+.Xr em 4
+driver, and Wi-Fi with the first interface found by the
+.Xr iwn 4
+driver, though your hardware will vary.
+.Sh EXAMPLES
+.Bl -tag -width 0n
+.It Sy Connecting to an Ethernet network with DHCP:
+.Bd -literal -offset 2n
+.Ic # dhclient em0
+.Ed
+.It Sy Connecting to a cellular network with USB tethering:
+.Pp
+Load the USB tethering driver,
+.Xr urndis 4 :
+.Bd -literal -offset 2n
+.Ic # kldload urndis
+.Ed
+.Pp
+Ask for a DHCP lease on the USB tethering interface:
+.Bd -literal -offset 2n
+.Ic # dhclient ue0
+.Ed
+.It Sy Connecting to a Wi-Fi network:
+.Pp
+Identify your Wi-Fi hardware:
+.Bd -literal -offset 2n
+.Ic % sysctl net.wlan.devices
+.Ed
+.Pp
+Configure your Wi-Fi hardware as wlan0 interface:
+.Ed
+.Bd -literal -offset 2n
+.Ic # sysrc wlans_iwn0="wlan0"
+.Ed
+.Pp
+Set that interface to negotiate a DHCP lease with
+.Xr wpa_supplicant 8 :
+.Bd -literal -offset 2n
+.Ic # sysrc ifconfig_wlan0="WPA SYNCDHCP"
+.Ed
+.Pp
+Enter the details of the Wi-Fi network:
+.Bd -literal -offset 2n
+.Ic # wpa_passphrase \(dqmyssid\(dq \(dqmypassphrase\(dq >> wpa_supplicant.conf
+.Ed
+.Pp
+Restart the network interface daemon:
+.Bd -literal -offset 2n
+.Ic # service netif restart
+.Ed
+.Pp
+.It Sy Scanning for Wi-Fi networks:
+.Bd -literal -offset 2n
+.Ic % ifconfig wlan0 scan
+.Ed
+.It Sy Airplane mode:
+.Bd -literal -offset 2n
+.Ic # service netif stop
+.Ed
+.El
+.Sh SEE ALSO
+.Xr bsdconfig 8 ,
+.Xr dhclient 8 ,
+.Xr ifconfig 8 ,
+.Xr wpa_passphrase 8
+.Pp
+The Advanced Networking chapter of the
+.Fx
+Handbook.
+.Sh CAVEATS
+Shell Special Characters in the
+.Ar SSID
+or
+.Ar passphrase
+will need to be escaped for
+.Xr wpa_passphrase 8 ,
+commonly using
+.Ql \e ,
+see the manual page for your shell for more details.
+.Pp
+Currently
+.Ql Ic service netif restart
+does not restart routing.
+A common workaround is to issue
+.Ql Ic service netif restart && service routing restart
+instead.
diff --git a/share/man/man7/operator.7 b/share/man/man7/operator.7
index 1971f2ff7ff0..8d6f0d7085a4 100644
--- a/share/man/man7/operator.7
+++ b/share/man/man7/operator.7
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)operator.7 8.1 (Berkeley) 6/9/93
-.\" $FreeBSD$
-.\"
.Dd April 8, 2009
.Dt OPERATOR 7
.Os
diff --git a/share/man/man7/orders.7 b/share/man/man7/orders.7
index e8aa4d79f9f2..aef44adde125 100644
--- a/share/man/man7/orders.7
+++ b/share/man/man7/orders.7
@@ -27,9 +27,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 6, 2011
+.Dd November 20, 2022
.Dt ORDERS 7
.Os
.Sh NAME
@@ -48,7 +46,9 @@ The following table lists common multiples of bytes.
.It Exabyte Ta EB Ta 2^60 Ta 10^18
.It Zettabyte Ta ZB Ta 2^70 Ta 10^21
.It Yottabyte Ta YB Ta 2^80 Ta 10^24
-.El
+.It Ronnabyte Ta RB Ta 2^90 Ta 10^27
+.It Quettabyte Ta QB Ta 2^100 Ta 10^30.
+El
.Pp
The following table lists common bit rates as a power of ten.
.Bl -column -offset 2n \
@@ -70,6 +70,8 @@ The following table lists common orders of magnitude as a power of ten.
.Bl -column -offset 2n \
"Septillionth" "Order" "Prefix" "Symbol" "Decimal"
.It Sy Name Ta Sy Order Ta Sy Prefix Ta Sy Symbol Ta Sy Decimal
+.It Nonillionth Ta 10^-30 Ta quecto Ta q Ta 0.000000000000000000000000000001
+.It Octillionth Ta 10^-27 Ta ronto Ta r Ta 0.000000000000000000000000001
.It Septillionth Ta 10^-24 Ta yocto Ta y Ta 0.000000000000000000000001
.It Sextillionth Ta 10^-21 Ta zepto Ta z Ta 0.000000000000000000001
.It Quintillionth Ta 10^-18 Ta atto Ta a Ta 0.000000000000000001
@@ -91,6 +93,8 @@ The following table lists common orders of magnitude as a power of ten.
.It Quintillion Ta 10^18 Ta exa Ta E Ta 1000000000000000000
.It Sextillion Ta 10^21 Ta zetta Ta Z Ta 1000000000000000000000
.It Septillion Ta 10^24 Ta yotta Ta Y Ta 1000000000000000000000000
+.It Octillion Ta 10^27 Ta ronna Ta R Ta 1000000000000000000000000000
+.It Nonillion Ta 10^30 Ta quetta Ta Q Ta 1000000000000000000000000000000
.El
.Sh SEE ALSO
.Xr units 1 ,
diff --git a/share/man/man7/ports.7 b/share/man/man7/ports.7
index 4ffa418d1dbb..911135a8b631 100644
--- a/share/man/man7/ports.7
+++ b/share/man/man7/ports.7
@@ -23,9 +23,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 22, 2021
+.Dd September 24, 2023
.Dt PORTS 7
.Os
.Sh NAME
@@ -249,20 +247,20 @@ Configure
for this port and all its dependencies using
.Xr dialog4ports 1 .
.It Cm fetch-list
-Show list of files to be fetched in order to build the port.
+Show the list of files to fetch in order to build the port (but not its
+dependencies).
.It Cm fetch-recursive
Fetch the distfiles of the port and all its dependencies.
.It Cm fetch-recursive-list
Show list of files that would be retrieved by
.Cm fetch-recursive .
-.It Cm run-depends-list , build-depends-list
-Print a list of all the compile and run dependencies, and dependencies
-of those dependencies, by port directory.
+.It Cm build-depends-list , run-depends-list
+Print a list of all the direct compile or run dependencies for this port.
.It Cm all-depends-list
-Print a list of all dependencies for the port.
-.It Cm pretty-print-run-depends-list , pretty-print-build-depends-list
-Print a list of all the compile and run dependencies, and dependencies
-of those dependencies, by port name and version.
+Print a list of all recursive dependencies for this port.
+.It Cm pretty-print-build-depends-list , pretty-print-run-depends-list
+Print a list of all the recursive compile or run dependencies for this port by
+port name and version.
.It Cm missing
Print a list of missing dependencies to be installed for the port.
.It Cm clean
@@ -506,7 +504,7 @@ cluster (for
.Cm fetchindex
target).
Defaults to
-.Pa https://www.FreeBSD.org/ports/ .
+.Pa https://download.FreeBSD.org/ports/index/ .
.It Va FETCHINDEX
Command to get
.Pa INDEX
diff --git a/share/man/man7/release.7 b/share/man/man7/release.7
index be475979dd0f..0a56f0762591 100644
--- a/share/man/man7/release.7
+++ b/share/man/man7/release.7
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 21, 2022
+.Dd August 6, 2023
.Dt RELEASE 7
.Os
.Sh NAME
@@ -365,6 +363,25 @@ is used, the resulting files compressed with
.Xr xz 1
compress to roughly the same size, regardless of the specified disk image
size.
+.It Va VMFS
+(Deprecated.)
+Set to specify which of the filesystem(s) listed in
+.Va VMFSLIST
+is linked to the historical non-filesystem-labelled file name.
+Valid values are
+.Va ufs
+and
+.Va zfs .
+The default value is
+.Va ufs .
+.It Va VMFSLIST
+Set to specify the list of file system types to build images for.
+Valid values are one or both of
+.Va ufs
+and
+.Va zfs .
+The default value is
+.Va ufs zfs .
.It Va VMFORMATS
Set to the target virtual disk image format(s) to create.
By default, the
@@ -503,7 +520,7 @@ Displays the list of valid
values.
.It Cm list-vmtargets
Displays the list of valid
-.Va VMFORMAT
+.Va VMFORMATS
and
.Va CLOUDWARE
values.
diff --git a/share/man/man7/sdoc.7 b/share/man/man7/sdoc.7
index d678c97e2818..cdfb25f0f59a 100644
--- a/share/man/man7/sdoc.7
+++ b/share/man/man7/sdoc.7
@@ -26,7 +26,6 @@
.\" SUCH DAMAGE.
.\"
.\" $Id: sec-doc.7,v 1.7 2001/12/22 00:14:12 rwatson Exp$
-.\" $FreeBSD$
.\"
.Dd September 5, 2005
.Dt SDOC 7
diff --git a/share/man/man7/security.7 b/share/man/man7/security.7
index 0ebc61cfbd5c..ccbeeb4575ce 100644
--- a/share/man/man7/security.7
+++ b/share/man/man7/security.7
@@ -26,9 +26,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 14, 2022
+.Dd October 5, 2023
.Dt SECURITY 7
.Os
.Sh NAME
@@ -97,9 +95,9 @@ It may not be able to take your machine down, but it can fill up your Internet
pipe.
.Pp
A user account compromise is even more common than a DoS attack.
-Many
-sysadmins still run standard
-.Xr telnetd 8
+Some
+sysadmins still run
+.Nm telnetd
and
.Xr ftpd 8
servers on their machines.
@@ -338,8 +336,8 @@ virtually every server ever run as root, including basic system servers.
If you are running a machine through which people only log in via
.Xr sshd 8
and never log in via
-.Xr telnetd 8
-then turn off those services!
+.Nm telnetd
+then turn off this service!
.Pp
.Fx
now defaults to running
@@ -390,7 +388,7 @@ access, and get rid of
.Pq Dq Li "chmod 000"
any SUID binaries that nobody uses.
A server with no display generally does not need an
-.Xr xterm 1
+.Xr xterm 1 Pq Pa ports/x11/xterm
binary.
SGID binaries can be almost as dangerous.
If an intruder can break an SGID-kmem binary the
@@ -537,7 +535,10 @@ kernel modules (see
may not be loaded or unloaded.
The kernel debugger may not be entered using the
.Va debug.kdb.enter
-sysctl.
+sysctl unless a
+.Xr MAC 9
+policy grants access, for example using
+.Xr mac_ddb 4 .
A panic or trap cannot be forced using the
.Va debug.kdb.panic ,
.Va debug.kdb.panic_str
@@ -958,16 +959,18 @@ Backwards compatibility shims for the interim sysctls under
will not be added.
.Bl -tag -width security.bsd.unprivileged_proc_debug
.It Dv security.bsd.see_other_uids
-Controls visibility of processes owned by different uid.
+Controls visibility and reachability of subjects (e.g., processes) and objects
+(e.g., sockets) owned by a different uid.
The knob directly affects the
.Dv kern.proc
sysctls filtering of data, which results in restricted output from
utilities like
.Xr ps 1 .
.It Dv security.bsd.see_other_gids
-Same, for processes owned by different gid.
+Same, for subjects and objects owned by a different gid.
.It Dv security.bsd.see_jail_proc
-Same, for processes belonging to a jail.
+Same, for subjects and objects belonging to a different jail, including
+sub-jails.
.It Dv security.bsd.conservative_signals
When enabled, unprivileged users are only allowed to send job control
and usual termination signals like
@@ -1047,7 +1050,7 @@ Controls mitigation of Special Register Buffer Data Sampling versus
optimization of the MCU access.
When set to zero, the mitigation is disabled, and the RDSEED and RDRAND
instructions do not incur serialization overhead for shared buffer accesses,
-and do not serialize off-core memory accessses.
+and do not serialize off-core memory accesses.
.It Dv kern.elf32.aslr.enable
Controls system-global Address Space Layout Randomization (ASLR) for
normal non-PIE (Position Independent Executable) 32-bit ELF binaries.
@@ -1062,8 +1065,7 @@ position-independent (PIE) 32-bit binaries.
Makes ASLR less aggressive and more compatible with old binaries
relying on the sbrk area.
.It Dv kern.elf32.aslr.stack
-If ASLR is enabled for a binary, a non-zero value enables randomization
-of the stack.
+Enable randomization of the stack for 32-bit binaries.
Otherwise, the stack is mapped at a fixed location determined by the
process ABI.
.It Dv kern.elf64.aslr.enable
@@ -1098,6 +1100,7 @@ Enables mapping of simultaneously writable and executable pages for
.Xr xdm 1 Pq Pa ports/x11/xorg-clients ,
.Xr group 5 ,
.Xr ttys 5 ,
+.Xr mitigations 7 ,
.Xr accton 8 ,
.Xr init 8 ,
.Xr sshd 8 ,
diff --git a/share/man/man7/simd.7 b/share/man/man7/simd.7
new file mode 100644
index 000000000000..fd9485524aef
--- /dev/null
+++ b/share/man/man7/simd.7
@@ -0,0 +1,241 @@
+.\" Copyright (c) 2023 The FreeBSD Foundation
+.
+.\" This documentation was written by Robert Clausecker <fuz@FreeBSD.org>
+.\" under sponsorship from the FreeBSD Foundation.
+.
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ''AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 December 6, 2023
+.Dt SIMD 7
+.Os
+.Sh NAME
+.Nm simd
+.Nd SIMD enhancements
+.
+.Sh DESCRIPTION
+On some architectures, the
+.Fx
+.Em libc
+provides enhanced implementations of commonly used functions, replacing
+the architecture-independent implementations used otherwise.
+Depending on architecture and function, an enhanced
+implementation of a function may either always be used or the
+.Em libc
+detects at runtime which SIMD instruction set extensions are
+supported and picks the most suitable implementation automatically.
+On
+.Cm amd64 ,
+the environment variable
+.Ev ARCHLEVEL
+can be used to override this mechanism.
+.Pp
+Enhanced functions are present for the following architectures:
+.Bl -column FUNCTION_________ aarch64_ arm_ amd64_ i386_ ppc64_ -offset indent
+.It Em FUNCTION Ta Em AARCH64 Ta Em ARM Ta Em AMD64 Ta Em I386 Ta Em PPC64
+.It bcmp Ta Ta Ta S1 Ta S
+.It bcopy Ta Ta S Ta S Ta S Ta SV
+.It bzero Ta Ta S Ta S Ta S
+.It div Ta Ta Ta S Ta S
+.It index Ta S Ta Ta S1
+.It ldiv Ta Ta Ta S Ta S
+.It lldiv Ta Ta Ta S
+.It memchr Ta S Ta Ta S1
+.It memcmp Ta S Ta S Ta S1 Ta S
+.It memccpy Ta Ta Ta S1
+.It memcpy Ta S Ta S Ta S Ta S Ta SV
+.It memmove Ta S Ta S Ta S Ta S Ta SV
+.It memrchr Ta Ta Ta S1
+.It memset Ta S Ta S Ta S Ta S
+.It rindex Ta S Ta Ta S1 Ta S
+.It stpcpy Ta S Ta Ta S1
+.It stpncpy Ta Ta Ta S1
+.It strcat Ta Ta Ta S1 Ta S
+.It strchr Ta S Ta Ta S1 Ta S
+.It strchrnul Ta S Ta Ta S1
+.It strcmp Ta S Ta S Ta S1 Ta S
+.It strcpy Ta S Ta Ta S1 Ta S Ta S2
+.It strcspn Ta Ta Ta S2
+.It strlcat Ta Ta Ta S1
+.It strlcpy Ta Ta Ta S1
+.It strlen Ta S Ta S Ta S1
+.It strncat Ta Ta Ta S1
+.It strncmp Ta S Ta S Ta S1 Ta S
+.It strncpy Ta Ta Ta S1 Ta Ta S2
+.It strnlen Ta S Ta Ta S1
+.It strrchr Ta S Ta Ta S1 Ta S
+.It strpbrk Ta Ta Ta S2
+.It strsep Ta Ta Ta S2
+.It strspn Ta Ta Ta S2
+.It swab Ta Ta Ta Ta S
+.It timingsafe_bcmp Ta Ta Ta S1
+.It timingsafe_memcmp Ta Ta Ta S
+.It wcschr Ta Ta Ta Ta S
+.It wcscmp Ta Ta Ta Ta S
+.It wcslen Ta Ta Ta Ta S
+.It wmemchr Ta Ta Ta Ta S
+.El
+.Pp
+.Sy S Ns :\ scalar (non-SIMD),
+.Sy 1 Ns :\ amd64 baseline,
+.Sy 2 Ns :\ x86-64-v2
+or PowerPC\ 2.05,
+.Sy 3 Ns :\ x86-64-v3,
+.Sy 4 Ns :\ x86-64-v4,
+.Sy V Ns :\ PowerPC\ VSX.
+.
+.Sh ENVIRONMENT
+.Bl -tag
+.It Ev ARCHLEVEL
+On
+.Em amd64 ,
+controls the level of SIMD enhancements used.
+If this variable is set to an architecture level from the list below
+and that architecture level is supported by the processor, SIMD
+enhancements up to
+.Ev ARCHLEVEL
+are used.
+If
+.Ev ARCHLEVEL
+is unset, not recognised, or not supported by the processor, the highest
+level of SIMD enhancements supported by the processor is used.
+.Pp
+A suffix beginning with
+.Sq ":"
+or
+.Sq "+"
+in
+.Ev ARCHLEVEL
+is ignored and may be used for future extensions.
+The architecture level can be prefixed with a
+.Sq "!"
+character to force use of the requested architecture level, even if the
+processor does not advertise that it is supported.
+This usually causes applications to crash and should only be used for
+testing purposes or if architecture level detection yields incorrect
+results.
+.Pp
+The architecture levels follow the AMD64 SysV ABI supplement:
+.Bl -tag -width x86-64-v2
+.It Cm scalar
+scalar enhancements only (no SIMD)
+.It Cm baseline
+cmov, cx8, x87 FPU, fxsr, MMX, osfxsr, SSE, SSE2
+.It Cm x86-64-v2
+cx16, lahf/sahf, popcnt, SSE3, SSSE3, SSE4.1, SSE4.2
+.It Cm x86-64-v3
+AVX, AVX2, BMI1, BMI2, F16C, FMA, lzcnt, movbe, osxsave
+.It Cm x86-64-v4
+AVX-512F/BW/CD/DQ/VL
+.El
+.El
+.
+.Sh DIAGNOSTICS
+.Bl -diag
+.It "Illegal Instruction"
+Printed by
+.Xr sh 1
+if a command is terminated through delivery of a
+.Dv SIGILL
+signal, see
+.Xr signal 3 .
+.Pp
+Use of an unsupported architecture level was forced by setting
+.Ev ARCHLEVEL
+to a string beginning with a
+.Sq "!"
+character, causing a process to crash due to use of an unsupported
+instruction.
+Unset
+.Ev ARCHLEVEL ,
+remove the
+.Sq "!"
+prefix or select a supported architecture level.
+.Pp
+Message may also appear for unrelated reasons.
+.El
+.
+.Sh SEE ALSO
+.Xr string 3 ,
+.Xr arch 7
+.Rs
+.%A H. J. Lu
+.%A Michael Matz
+.%A Milind Girkar
+.%A Jan Hubi\[u010D]ka \" \(vc
+.%A Andreas Jaeger
+.%A Mark Mitchell
+.%B System V Application Binary Interface
+.%D May 23, 2023
+.%T AMD64 Architecture Processor Supplement
+.%O Version 1.0
+.Re
+.
+.Sh HISTORY
+Architecture-specific enhanced
+.Em libc
+functions were added starting
+with
+.Fx 2.0
+for
+.Cm i386 ,
+.Fx 6.0
+for
+.Cm arm ,
+.Fx 6.1
+for
+.Cm amd64 ,
+.Fx 11.0
+for
+.Cm aarch64 ,
+and
+.Fx 12.0
+for
+.Cm powerpc64 .
+SIMD-enhanced functions were first added with
+.Fx 13.0
+for
+.Cm powerpc64
+and with
+.Fx 14.1
+for
+.Cm amd64 .
+.Pp
+A
+.Nm
+manual page appeared in
+.Fx 14.1 .
+.
+.Sh AUTHOR
+.An Robert Clausecker Aq Mt fuz@FreeBSD.org
+.
+.Sh CAVEATS
+Other parts of
+.Fx
+such as cryptographic routines in the kernel or in
+OpenSSL may also use SIMD enhancements.
+These enhancements are not subject to the
+.Ev ARCHLEVEL
+variable and may have their own configuration
+mechanism.
+.
+.Sh BUGS
+Use of SIMD enhancements cannot be configured on powerpc64.
diff --git a/share/man/man7/sizeof.7 b/share/man/man7/sizeof.7
new file mode 100644
index 000000000000..b3c3af1acb52
--- /dev/null
+++ b/share/man/man7/sizeof.7
@@ -0,0 +1,308 @@
+.\"
+.\" Copyright (C) 2022 Jan Schaumann <jschauma@netmeister.org>.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 December 12, 2022
+.Dt sizeof 7
+.Os
+.Sh NAME
+.Nm sizeof
+operator
+.Nd yield the storage size of the given operand
+.Sh SYNTAX
+.Nm Vt ( type )
+.br
+.Nm Vt expression
+.Sh DESCRIPTION
+The
+.Nm
+operator yields the size of its operand.
+The
+.Nm
+operator cannot be applied to incomplete types and expressions
+with incomplete types (e.g.
+.Vt void ,
+or forward-defined
+.Vt struct foo ),
+and function types.
+.Pp
+The size of primitive (non-derived) data types in C may differ
+across hardware platforms and implementations.
+They are defined by corresponding Application Binary Interface (ABI)
+specifications, see
+.Xr arch 7
+for details about ABI used by
+.Fx .
+It may be necessary or useful for a program to be able
+to determine the storage size of a data type or object
+to account for the platform specifics.
+.Pp
+The unary
+.Nm
+operator yields the storage size of an expression or
+data type in
+.Em char sized units
+(C language bytes).
+As a result,
+.Ql sizeof(char)
+is always guaranteed to be 1.
+(The number of bits per
+.Vt char
+is given by the
+.Dv CHAR_BIT
+definition in the
+.In limits.h
+header; many systems also provide the "number of bits
+per byte" definition as
+.Dv NBBY
+in the
+.In sys/param.h
+header.)
+.Sh EXAMPLES
+Different platforms may use different data models.
+For example, systems on which integers, longs, and
+pointers are using 32 bits (e.g., i386) are referred
+to as using the "ILP32" data model, systems using
+64 bit longs and pointers (e.g., amd64 / x86_64)
+as the "LP64" data model.
+.Pp
+The following examples illustrate the possible results
+of calling
+.Nm
+on an ILP32 vs. an LP64 system:
+.Pp
+When applied to a simple variable or data type,
+.Nm
+returns the storage size of the data type of the object:
+.Bl -column -offset indent \
+ ".Li sizeof(struct flex)" ".Sy Result (ILP32)" ".Sy Result (LP64)"
+.It Sy Object or type \
+ Ta Sy Result (ILP32) \
+ Ta Sy Result (LP64)
+.It Li sizeof(char) \
+ Ta 1 \
+ Ta 1
+.It Li sizeof(int) \
+ Ta 4 \
+ Ta 4
+.It Li sizeof(long) \
+ Ta 4 \
+ Ta 8
+.It Li sizeof(float) \
+ Ta 4 \
+ Ta 4
+.It Li sizeof(double) \
+ Ta 8 \
+ Ta 8
+.It Li sizeof(char *) \
+ Ta 4 \
+ Ta 8
+.El
+.Pp
+For initialized data or uninitialized arrays of a
+fixed size known at compile time,
+.Nm
+will return the correct storage size:
+.Bd -literal -offset indent
+#define DATA "1234567890"
+char buf1[] = "abc";
+char buf2[1024];
+char buf3[1024] = { 'a', 'b', 'c' };
+.Ed
+.Bl -column -offset indent \
+ ".Li sizeof(struct flex)" ".Sy Result"
+.It Sy Object or type \
+ Ta Sy Result
+.It Li sizeof(DATA) \
+ Ta 11
+.It Li sizeof(buf1) \
+ Ta 4
+.It Li sizeof(buf2) \
+ Ta 1024
+.It Li sizeof(buf3) \
+ Ta 1024
+.El
+.Pp
+The examples above are the same for ILP32 and LP64
+platforms, as they are based on character units.
+.Pp
+When applied to a struct or union,
+.Nm
+returns the total number of bytes in the object,
+including any internal or trailing padding used to
+align the object in memory.
+This result may thus be larger than if the storage
+size of each individual member had been added:
+.Bd -literal -offset indent
+struct s1 {
+ char c;
+};
+
+struct s2 {
+ char *s;
+ int i;
+};
+
+struct s3 {
+ char *s;
+ int i;
+ int j;
+};
+
+struct s4 {
+ int i;
+ uint64_t i64;
+};
+
+struct s5 {
+ struct s1 a;
+ struct s2 b;
+ struct s3 c;
+ struct s4 d;
+};
+.Ed
+.Bl -column -offset indent \
+ ".Li sizeof(struct flex)" ".Sy Result (ILP32) " ".Sy Result (LP64)"
+.It Sy Object or type \
+ Ta Sy Result (ILP32) \
+ Ta Sy Result (LP64)
+.It Li sizeof(struct s1) \
+ Ta 1 \
+ Ta 1
+.It Li sizeof(struct s2) \
+ Ta 8 \
+ Ta 16
+.It Li sizeof(struct s3) \
+ Ta 12 \
+ Ta 16
+.It Li sizeof(struct s4) \
+ Ta 12 \
+ Ta 16
+.It Li sizeof(struct s5) \
+ Ta 36 \
+ Ta 56
+.El
+.Pp
+When applied to a struct containing a flexible array
+member,
+.Nm
+returns the size of the struct
+.Em without
+the array, although again possibly including any
+padding the compiler deemed appropriate:
+.Bd -literal -offset indent
+struct flex {
+ char c;
+ long b;
+ char array[];
+}
+.Ed
+.Bl -column -offset indent \
+ ".Li sizeof(struct flex)" ".Sy Result (ILP32) " ".Sy Result (LP64)"
+.It Sy Object or type \
+ Ta Sy Result (ILP32) \
+ Ta Sy Result (LP64)
+.It Li sizeof(struct flex) \
+ Ta 8 \
+ Ta 16
+.El
+.Pp
+One of the more common uses of the
+.Nm
+operator is to determine the correct amount of memory
+to allocate:
+.Bd -literal -offset indent
+int *nums = calloc(512, sizeof(int));
+.Ed
+.Pp
+The
+.Nm
+operator can be used to calculate the number of
+elements in an array by dividing the size of the array
+by the size of one of its elements:
+.Bd -literal -offset indent
+int nums[] = { 1, 2, 3, 4, 5 };
+const int howmany = sizeof(nums) / sizeof(nums[0]);
+.Ed
+.Pp
+Many systems provide this shortcut as the macro
+.Dv ntimes()
+via the
+.In sys/param.h
+header file.
+.Sh RESULT
+The result of the
+.Nm
+operator is an unsigned integer type, defined in the
+.Dv stddef.h
+header as a
+.Vt size_t .
+.Sh NOTES
+It is a common mistake to apply
+.Nm
+to a dynamically allocated array:
+.Bd -literal -offset indent
+char *buf;
+if ((buf = malloc(BUFSIZ)) == NULL) {
+ perror("malloc");
+}
+/* Warning: wrong! */
+(void)strncat(buf, input, sizeof(buf) - 1);
+.Ed
+.Pp
+In that case, the operator will return the storage
+size of the pointer (
+.Ql sizeof(char *)
+), not the
+allocated memory.
+.Pp
+.Nm
+determines the
+.Ev size
+of the result of the expression given, but
+.Em does not
+evaluate the expression:
+.Bd -literal -offset indent
+int a = 42;
+printf("%ld - %d\\n", sizeof(a = 10), a); /* Result: "4 - 42" */
+.Ed
+.Pp
+Since it is evaluated by the compiler and not the
+preprocessor, the
+.Nm
+operator cannot be used in a preprocessor expression.
+.Sh SEE ALSO
+.Xr arch 7 ,
+.Xr operator 7
+.Sh STANDARDS
+The
+.Nm
+operator conforms to
+.St -ansiC .
+.Pp
+Handling of flexible array members in structures
+conforms to
+.St -isoC-99 .
+.Sh AUTHORS
+This manual page was written by
+.An Jan Schaumann Aq Mt jschauma@netmeister.org .
diff --git a/share/man/man7/sprog.7 b/share/man/man7/sprog.7
index f5a2d9ca4ec6..cc021a39b807 100644
--- a/share/man/man7/sprog.7
+++ b/share/man/man7/sprog.7
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 3, 2001
.Dt SPROG 7
.Os
diff --git a/share/man/man7/stats.7 b/share/man/man7/stats.7
index 8be124392d19..715db70e118b 100644
--- a/share/man/man7/stats.7
+++ b/share/man/man7/stats.7
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2020 Daniel Ebdrup Jensen
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 22, 2021
.Dt STATS 7
.Os
diff --git a/share/man/man7/stdint.7 b/share/man/man7/stdint.7
index 2f36953d9a16..70bfac4ba283 100644
--- a/share/man/man7/stdint.7
+++ b/share/man/man7/stdint.7
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 15, 2002
.Dt STDINT 7
.Os
diff --git a/share/man/man7/sticky.7 b/share/man/man7/sticky.7
index 28fab62ea4c9..7c2ae04e2532 100644
--- a/share/man/man7/sticky.7
+++ b/share/man/man7/sticky.7
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)sticky.8 8.1 (Berkeley) 6/5/93
-.\" $FreeBSD$
-.\"
.Dd June 5, 1993
.Dt STICKY 7
.Os
diff --git a/share/man/man7/tests.7 b/share/man/man7/tests.7
index b253c1ab2458..1fbaad7d42a0 100644
--- a/share/man/man7/tests.7
+++ b/share/man/man7/tests.7
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\" $NetBSD: tests.kyua.7,v 1.2 2013/07/20 21:39:59 wiz Exp $
.\"
.\" Copyright (c) 2010 The NetBSD Foundation, Inc.
diff --git a/share/man/man7/tuning.7 b/share/man/man7/tuning.7
index 63e09ecce098..f04500d0f0dc 100644
--- a/share/man/man7/tuning.7
+++ b/share/man/man7/tuning.7
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 16, 2020
+.Dd November 17, 2023
.Dt TUNING 7
.Os
.Sh NAME
@@ -482,7 +480,7 @@ By default
is set at the maximum allowable port number.
.Pp
The
-.Va kern.ipc.somaxconn
+.Va kern.ipc.soacceptqueue
sysctl limits the size of the listen queue for accepting new TCP connections.
The default value of 128 is typically too low for robust handling of new
connections in a heavily loaded web server environment.
@@ -700,6 +698,7 @@ over services you export from your box (web services, email).
.Xr login.conf 5 ,
.Xr rc.conf 5 ,
.Xr sysctl.conf 5 ,
+.Xr ffs 7 ,
.Xr firewall 7 ,
.Xr hier 7 ,
.Xr ports 7 ,
diff --git a/share/man/man8/Makefile b/share/man/man8/Makefile
index 1257f3ab97bf..1e2c22e97d8e 100644
--- a/share/man/man8/Makefile
+++ b/share/man/man8/Makefile
@@ -1,16 +1,14 @@
-# @(#)Makefile 8.1 (Berkeley) 6/5/93
-# $FreeBSD$
.include <src.opts.mk>
MAN= \
beinstall.8 \
crash.8 \
+ debug.sh.8 \
diskless.8 \
intro.8 \
nanobsd.8 \
rc.8 \
- rc.sendmail.8 \
rc.subr.8 \
rescue.8 \
${_uefi.8} \
diff --git a/share/man/man8/Makefile.depend b/share/man/man8/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man8/Makefile.depend
+++ b/share/man/man8/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man8/beinstall.8 b/share/man/man8/beinstall.8
index dc43f53a119b..e403f25d2f35 100644
--- a/share/man/man8/beinstall.8
+++ b/share/man/man8/beinstall.8
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2018 Mateusz Piotrowski <0mp@FreeBSD.org>
.\"
@@ -23,8 +23,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd October 30, 2020
.Dt BEINSTALL.SH 8
.Os
diff --git a/share/man/man8/crash.8 b/share/man/man8/crash.8
index 63b814881bd1..27c9c56533a5 100644
--- a/share/man/man8/crash.8
+++ b/share/man/man8/crash.8
@@ -30,8 +30,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 23, 2011
.Dt CRASH 8
.Os
@@ -196,7 +194,7 @@ See
for details.
.Pp
To analyze a dump you should begin by running
-.Xr kgdb 1
+.Xr kgdb 1 Pq Pa ports/devel/gdb
on the system load image and core dump.
If the core image is the result of a panic,
the panic message is printed.
@@ -205,7 +203,7 @@ the
.%B "FreeBSD Developers' Handbook"
.Pq Pa https://www.freebsd.org/doc/en/books/developers-handbook/ .
.Sh SEE ALSO
-.Xr kgdb 1 ,
+.Xr kgdb 1 Pq Pa ports/devel/gdb ,
.Xr dumpon 8 ,
.Xr reboot 8 ,
.Xr savecore 8
diff --git a/share/man/man8/debug.sh.8 b/share/man/man8/debug.sh.8
new file mode 100644
index 000000000000..2c137ff3fd42
--- /dev/null
+++ b/share/man/man8/debug.sh.8
@@ -0,0 +1,182 @@
+.\" Copyright (c) 1994-2021 Simon J. Gerraty
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" This file is provided in the hope that it will
+.\" be of use. There is absolutely NO WARRANTY.
+.\" Permission to copy, redistribute or otherwise
+.\" use this file is hereby granted provided that
+.\" the above copyright notice and this notice are
+.\" left intact.
+.\"
+.\" Please send copies of changes and bug-fixes to:
+.\" sjg@crufty.net
+.\"
+.Dd January 31, 2024
+.Dt DEBUG.SH 8
+.Os
+.Sh NAME
+.Nm debug.sh
+.Nd selectively debug scripts
+.Sh SYNOPSIS
+.Bl -item -compact
+.It
+.Ic $_DEBUG_SH .\& Pa debug.sh
+.Pp
+.It
+.Ic DebugOn Oo Fl eo Oc Ar tag ...
+.It
+.Ic DebugOff Oo Fl eo Oc Oo Cm rc= Ns Ar rc Oc Ar tag ...
+.It
+.Ic Debugging
+.It
+.Ic DebugEcho Op Ar message
+.It
+.Ic DebugLog Op Ar message
+.It
+.Ic DebugShell Ar tag ...
+.It
+.Ic DebugTrace Ar message
+.It
+.Ic Debug Ar tag ...
+.El
+.Sh DESCRIPTION
+.Nm
+provides the following functions to facilitate flexible
+run-time tracing of complicated shell scripts.
+.Bl -tag -width 4n
+.It Ic DebugOn Oo Fl eo Oc Ar tag ...
+turns tracing on if any
+.Ar tag
+is found in
+.Va DEBUG_SH
+(a comma separated list of tags).
+.Pp
+It turns tracing off if
+.Ar !tag
+is found in
+.Va DEBUG_SH .
+.Pp
+It sets
+.Va DEBUG_ON
+to the
+.Ar tag
+that caused tracing to be enabled, or
+.Va DEBUG_OFF
+if we matched
+.Ar !tag .
+.Pp
+If
+.Fl e
+option is present, returns 1 if no
+.Ar tag
+matched.
+.Pp
+If
+.Fl o
+option is present, tracing is turned off unless there
+was a matched
+.Ar tag ,
+useful for functions too noisy to tace.
+.It Ic DebugOff Oo Fl eo Oc Oo Cm rc= Ns Ar rc Oc Ar tag ...
+turns tracing on if any
+.Ar tag
+matches
+.Va DEBUG_OFF
+or off if any
+.Ar tag
+matches
+.Va DEBUG_ON .
+This allows nested functions to not interfere with each other.
+.Pp
+The flags
+.Fl e
+and
+.Fl o
+are ignored, they just allow for symmetry with calls to
+.Fn DebugOn .
+.Pp
+The optional
+.Ar rc
+value will be returned rather than the default of 0.
+Thus if
+.Fn DebugOff
+is the last operation in a function,
+.Ar rc
+will be the return code of the function.
+.It Ic Debugging
+returns true if tracing is enabled.
+It is useful for bounding complex debug actions, rather than
+using lots of
+.Ic $DEBUG_DO
+lines.
+.It Ic DebugEcho
+is just shorthand for:
+.Bd -literal -offset indent
+$DEBUG_DO echo "$@"
+.Ed
+.It Ic DebugLog Op Ar message
+If debugging is enabled, output
+.Ar message
+prefixed with a time-stamp.
+.It Ic DebugShell Ar tag ...
+runs an interactive shell if any
+.Ar tag
+is found in
+.Va DEBUG_INTERACTIVE ,
+and there is a tty available.
+The shell used is defined by
+.Va DEBUG_SHELL
+or
+.Va SHELL
+and defaults to
+.Pa /bin/sh .
+.It Ic DebugTrace Ar message
+Debug output can be very noisy, and it can be tricky
+to align with the script.
+This function outputs a very noticable banner indicating the value of
+.Va DEBUG_ON ,
+and
+.Ar message
+is passed to
+.Fn DebugLog ,
+finally the banner is repeated.
+.It Ic Debug Ar tag ...
+For backwards compatibility, calls
+.Fn DebugOn
+and if that does not turn tracing on,
+it calls
+.Fn DebugOff
+to turn it off.
+.El
+.Pp
+The variables
+.Va DEBUG_SKIP
+and
+.Va DEBUG_DO
+are set so as to enable/disable code that should be
+skipped/run when debugging is turned on.
+.Va DEBUGGING
+is the same as
+.Va DEBUG_SKIP
+for backwards compatability and is only set by
+.Fn Debug .
+.Pp
+The use of
+.Ic $_DEBUG_SH
+is to prevent multiple inclusion,
+though it does no harm in this case.
+.Sh BUGS
+Does not work with some versions of
+.Xr ksh 1 .
+If a function turns tracing on, ksh turns it off when the
+function returns - useless.
+.Pp
+PD ksh works ok ;-)
+.Sh AUTHOR
+.An -nosplit
+.Nm
+was written by
+.An Simon J Gerraty Aq Mt sjg@crufty.net .
+
+
diff --git a/share/man/man8/diskless.8 b/share/man/man8/diskless.8
index 0e956f3b4505..8839e27e11ba 100644
--- a/share/man/man8/diskless.8
+++ b/share/man/man8/diskless.8
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 3, 2020
.Dt DISKLESS 8
.Os
diff --git a/share/man/man8/intro.8 b/share/man/man8/intro.8
index 2c3649c4b18e..39b72af5f741 100644
--- a/share/man/man8/intro.8
+++ b/share/man/man8/intro.8
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)intro.8 8.2 (Berkeley) 12/11/93
-.\" $FreeBSD$
-.\"
.Dd October 22, 2006
.Dt INTRO 8
.Os
diff --git a/share/man/man8/nanobsd.8 b/share/man/man8/nanobsd.8
index c32527344493..140a63b3d2f3 100644
--- a/share/man/man8/nanobsd.8
+++ b/share/man/man8/nanobsd.8
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 19, 2016
.Dt NANOBSD 8
.Os
diff --git a/share/man/man8/rc.8 b/share/man/man8/rc.8
index 8b6fc094b7db..fda04bceaf4c 100644
--- a/share/man/man8/rc.8
+++ b/share/man/man8/rc.8
@@ -28,10 +28,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" @(#)rc.8 8.2 (Berkeley) 12/11/93
-.\" $FreeBSD$
-.\"
-.Dd July 4, 2022
+.Dd January 31, 2024
.Dt RC 8
.Os
.Sh NAME
@@ -124,10 +121,9 @@ to load various
.Xr rc.subr 8
shell functions to use.
.It
-Load the configuration files.
+Load the configuration files (see below for reloading).
.It
-Determine if booting in a jail,
-and add
+Determine if booting in a jail, and add
.Dq Li nojail
(no jails allowed) or
.Dq Li nojailvnet
@@ -152,9 +148,13 @@ KEYWORD (refer to
.Fl s
flag).
.It
-Call each script in turn using
+Call
+.Fn run_rc_scripts
+with the list of scripts to be run.
+.Pp
+For each script that will call
.Fn run_rc_script
-(from
+(both functions are from
.Xr rc.subr 8 ) ,
which sets
.Va $1
@@ -175,9 +175,11 @@ Re-run
this time including the scripts in the
.Va $local_startup
directories.
-Ignore everything up to the
-.Va $early_late_divider ,
-then start executing the scripts as described above.
+Call
+.Fn run_rc_scripts
+again with the new list of scripts.
+It will skip any that have already been run and
+execute the rest as described above.
.It
If the file
.Va ${firstboot_sentinel}
@@ -371,6 +373,17 @@ the command name (see the
.Sx EXAMPLES
section).
.Pp
+The configuration files are normally read only once at the start of a boot
+sequence; if a script needs to
+.Cm enable
+or
+.Cm disable
+any other script that would run later in the sequence, it must send a
+.Dv SIGALRM
+to the rc process (identified by
+.Ev $RC_PID )
+to have it re-read the files.
+.Pp
The following key points apply to old-style scripts in
.Pa /usr/local/etc/rc.d/ :
.Bl -bullet
@@ -575,8 +588,8 @@ is unnecessary, but is often included.
.Xr sysrc 8
.Pp
.Rs
-.%T "Practical rc.d scripting in BSD"
-.%U "https://docs.freebsd.org/en/articles/rc-scripting/"
+.%T Practical rc.d scripting in BSD
+.%U <https://docs.freebsd.org/en/articles/rc-scripting/>
.Re
.Sh HISTORY
The
diff --git a/share/man/man8/rc.sendmail.8 b/share/man/man8/rc.sendmail.8
deleted file mode 100644
index d8dff43fdbe3..000000000000
--- a/share/man/man8/rc.sendmail.8
+++ /dev/null
@@ -1,298 +0,0 @@
-.\" Copyright (c) 1995
-.\" Jordan K. Hubbard
-.\" Copyright (c) 2002 The FreeBSD Project
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd October 19, 2013
-.Dt RC.SENDMAIL 8
-.Os
-.Sh NAME
-.Nm rc.sendmail
-.Nd
-.Xr sendmail 8
-startup script
-.Sh DESCRIPTION
-The
-.Nm
-script is used by
-.Pa /etc/rc
-at boot time to start
-.Xr sendmail 8 .
-It is meant to be
-.Xr sendmail 8
-specific and not a generic script for all MTAs.
-It is only called by
-.Pa /etc/rc
-if the
-.Xr rc.conf 5
-.Va mta_start_script
-variable is set to
-.Pa /etc/rc.sendmail .
-.Pp
-The
-.Nm
-script can take an optional argument specifying the action to
-perform.
-The available actions are:
-.Bl -tag -width ".Cm restart-mspq"
-.It Cm start
-Starts both the MTA and the MSP queue runner.
-.It Cm stop
-Stops both the MTA and the MSP queue runner.
-.It Cm restart
-Restarts both the MTA and the MSP queue runner.
-.It Cm start-mta
-Starts just the MTA.
-.It Cm stop-mta
-Stops just the MTA.
-.It Cm restart-mta
-Restarts just the MTA.
-.It Cm start-mspq
-Starts just the MSP queue runner.
-.It Cm stop-mspq
-Stops just the MSP queue runner.
-.It Cm restart-mspq
-Restarts just the MSP queue runner.
-.El
-.Pp
-If no action is specified,
-.Cm start
-is assumed.
-.Pp
-The
-.Nm
-script is also used by
-.Pa /etc/mail/Makefile
-to enable the
-.Pa Makefile Ns 's
-.Cm start , stop ,
-and
-.Cm restart
-targets.
-.Sh RC.CONF VARIABLES
-The following variables affect the behavior of
-.Nm .
-They are defined in
-.Pa /etc/defaults/rc.conf
-and can be changed in
-.Pa /etc/rc.conf .
-.Bl -tag -width indent
-.It Va sendmail_enable
-.Pq Vt str
-If set to
-.Dq Li YES ,
-run the
-.Xr sendmail 8
-daemon at system boot time.
-If set to
-.Dq Li NO ,
-do not run a
-.Xr sendmail 8
-daemon to listen for incoming network mail.
-This does not preclude a
-.Xr sendmail 8
-daemon listening on the SMTP port of the loopback interface.
-The
-.Dq Li NONE
-option is deprecated and should not be used.
-It will be removed in a future release.
-.It Va sendmail_cert_create
-.Pq Vt str
-If
-.Va sendmail_enable
-is set to
-.Dq Li YES ,
-create a signed certificate
-.Pa /etc/mail/certs/host.cert
-representing
-.Pa /etc/mail/certs/host.key
-by the CA certificate in
-.Pa /etc/mail/certs/cacert.pem .
-This will enable connecting hosts to negotiate STARTTLS allowing incoming
-email to be encrypted in transit.
-.Xr sendmail 8
-needs to be configured to use these generated files.
-The default configuration in
-.Pa /etc/mail/freebsd.mc
-has the required options in it.
-.It Va sendmail_cert_cn
-.Pq Vt str
-If
-.Va sendmail_enable
-is set to
-.Dq Li YES
-and
-.Va sendmail_cert_create
-is set to
-.Dq Li YES ,
-this is the Common Name (CN) of the certificate that will be created.
-If
-.Va sendmail_cert_cn
-is not set, the system's hostname will be used.
-If there is no hostname set,
-.Dq Li amnesiac
-will be used.
-.It Va sendmail_flags
-.Pq Vt str
-If
-.Va sendmail_enable
-is set to
-.Dq Li YES ,
-these are the flags to pass to the
-.Xr sendmail 8
-daemon.
-.It Va sendmail_submit_enable
-.Pq Vt bool
-If set to
-.Dq Li YES
-and
-.Va sendmail_enable
-is set to
-.Dq Li NO ,
-run
-.Xr sendmail 8
-using
-.Va sendmail_submit_flags
-instead of
-.Va sendmail_flags .
-This is intended to allow local mail submission via
-a localhost-only listening SMTP service required for running
-.Xr sendmail 8
-as a non-set-user-ID binary.
-Note that this does not work inside
-.Xr jail 2
-systems, as jails do not allow binding to just the localhost interface.
-.It Va sendmail_submit_flags
-.Pq Vt str
-If
-.Va sendmail_enable
-is set to
-.Dq Li NO
-and
-.Va sendmail_submit_enable
-is set to
-.Dq Li YES ,
-these are the flags to pass to the
-.Xr sendmail 8
-daemon.
-.It Va sendmail_outbound_enable
-.Pq Vt bool
-If set to
-.Dq Li YES
-and both
-.Va sendmail_enable
-and
-.Va sendmail_submit_enable
-are set to
-.Dq Li NO ,
-run
-.Xr sendmail 8
-using
-.Va sendmail_outbound_flags
-instead of
-.Va sendmail_flags .
-This is intended to allow local mail queue management
-for systems that do not offer a listening SMTP service.
-.It Va sendmail_outbound_flags
-.Pq Vt str
-If both
-.Va sendmail_enable
-and
-.Va sendmail_submit_enable
-are set to
-.Dq Li NO
-and
-.Va sendmail_outbound_enable
-is set to
-.Dq Li YES ,
-these are the flags to pass to the
-.Xr sendmail 8
-daemon.
-.It Va sendmail_msp_queue_enable
-.Pq Vt bool
-If set to
-.Dq Li YES ,
-start a client (MSP) queue runner
-.Xr sendmail 8
-daemon at system boot time.
-As of sendmail 8.12, a separate queue is used for command line
-submissions.
-The client queue runner ensures that nothing is
-left behind in the submission queue.
-.It Va sendmail_msp_queue_flags
-.Pq Vt str
-If
-.Va sendmail_msp_queue_enable
-is set to
-.Dq Li YES ,
-these are the flags to pass to the
-.Xr sendmail 8
-daemon.
-.El
-.Pp
-These variables are used to determine how the
-.Xr sendmail 8
-daemons are started:
-.Bd -literal -offset indent
-# MTA
-if (${sendmail_enable} == NONE)
- # Do nothing
-else if (${sendmail_enable} == YES)
- start sendmail with ${sendmail_flags}
-else if (${sendmail_submit_enable} == YES)
- start sendmail with ${sendmail_submit_flags}
-else if (${sendmail_outbound_enable} == YES)
- start sendmail with ${sendmail_outbound_flags}
-endif
-
-# MSP Queue Runner
-if (${sendmail_enable} != NONE &&
- [ -r /etc/mail/submit.cf] &&
- ${sendmail_msp_queue_enable} == YES)
- start sendmail with ${sendmail_msp_queue_flags}
-endif
-.Ed
-.Pp
-To completely prevent any
-.Xr sendmail 8
-daemons from starting, you must
-set the following variables in
-.Pa /etc/rc.conf :
-.Bd -literal -offset indent
-sendmail_enable="NO"
-sendmail_submit_enable="NO"
-sendmail_outbound_enable="NO"
-sendmail_msp_queue_enable="NO"
-.Ed
-.Sh SEE ALSO
-.Xr rc.conf 5 ,
-.Xr rc 8 ,
-.Xr sendmail 8
-.Sh HISTORY
-The
-.Nm
-file appeared in
-.Fx 4.6 .
diff --git a/share/man/man8/rc.subr.8 b/share/man/man8/rc.subr.8
index 130962ecdcdf..0906ecb2e787 100644
--- a/share/man/man8/rc.subr.8
+++ b/share/man/man8/rc.subr.8
@@ -27,9 +27,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd March 18, 2022
+.Dd February 10, 2024
.Dt RC.SUBR 8
.Os
.Sh NAME
@@ -49,22 +47,34 @@
.It
.Ic check_process Ar procname Op Ar interpreter
.It
+.Ic DebugOn Ar tag ...
+.It
+.Ic DebugOff Ar tag ...
+.It
.Ic debug Ar message
.It
+.Ic dot Ar file ...
+.It
.Ic err Ar exitval Ar message
.It
.Ic force_depend Ar name
.It
.Ic info Ar message
.It
+.Ic is_verified Ar file
+.It
.Ic load_kld Oo Fl e Ar regex Oc Oo Fl m Ar module Oc Ar file
.It
-.Ic load_rc_config Op Ar service
+.Ic load_rc_config Oo Ar flag Oc Op Ar service
.It
.Ic load_rc_config_var Ar name Ar var
.It
.Ic mount_critical_filesystems Ar type
.It
+.Ic rc_log Ar message
+.It
+.It rc_trace Ar level Ar message
+.It
.Ic rc_usage Ar command ...
.It
.Ic reverse_list Ar item ...
@@ -73,8 +83,16 @@
.It
.Ic run_rc_script Ar file Ar argument
.It
+.Ic run_rc_scripts Oo options Oc Ar file ...
+.It
+.Ic safe_dot Ar file ...
+.It
+.Ic sdot Ar file ...
+.It
.Ic startmsg Oo Fl n Oc Ar message
.It
+.Ic vdot Ar file ...
+.It
.Ic wait_for_pids Op Ar pid ...
.It
.Ic warn Ar message
@@ -193,6 +211,43 @@ argument that matches
.Ar interpreter
is handled as per
.Ic check_pidfile .
+.It Ic DebugOn Ar tag ...
+Enable tracing if not already enabled,
+and any
+.Ar tag
+is found in
+.Va DEBUG_SH
+(a comma separated list of tags).
+.Pp
+Record the
+.Ar tag
+that caused it to be enabled in
+.Va DEBUG_ON ,
+set
+.Va DEBUG_DO
+empty and
+.Va DEBUG_SKIP
+to
+.Ql \&: .
+.Pp
+See
+.Xr debug.sh 8
+for more details.
+.It Ic DebugOff Ar tag ...
+Disable tracing if enabled and any
+.Ar tag
+matches
+.Va DEBUG_ON ,
+which means it was the reason tracing was enabled.
+.Pp
+Set
+.Va DEBUG_DO
+to
+.Ql \&: ,
+and
+.Va DEBUG_ON ,
+.Va DEBUG_SKIP
+empty.
.It Ic debug Ar message
Display a debugging message to
.Va stderr ,
@@ -214,6 +269,23 @@ by the
.Xr rc.conf 5
variable
.Va rc_debug .
+.It Ic dot Ar file ...
+For reading in unverified files.
+.Pp
+Ensure shell
+.Li verify
+option is off.
+This option is only meaningful when
+.Xr mac_veriexec 4
+is active.
+.Pp
+Read each
+.Ar file
+if it exists.
+.Pp
+Restore previous state of the
+.Li verify
+option.
.It Ic err Ar exitval message
Display an error message to
.Va stderr ,
@@ -250,6 +322,18 @@ If the script fails for any reason it will output a warning
and return with a return value of 1.
If it was successful
it will return 0.
+.It Ic is_verified Ar file
+If
+.Xr veriexec 8
+does not exist, or
+.Xr mac_veriexec 4
+is not active, just return success.
+Otherwise use
+.Xr veriexec 8
+to check if
+.Ar file
+is verified.
+If not verified the return code will be 80 (EAUTH).
.It Ic info Ar message
Display an informational message to
.Va stdout ,
@@ -281,7 +365,7 @@ regular expression matching the module name can be supplied via
By default, the module is assumed to have the same name as
.Ar file ,
which is not always the case.
-.It Ic load_rc_config Op Ar service
+.It Ic load_rc_config Oo Ar flag Oc Op Ar service
Source in the configuration file(s) for
.Ar service .
If no
@@ -300,6 +384,34 @@ arguments defined by the calling script, to provide an easy
mechanism for an administrator to override the behaviour of a given
.Xr rc.d 8
script without requiring the editing of that script.
+.Pp
+The function named by
+.Va load_rc_config_reader
+(default is
+.Ic dot )
+is used to read configuration unless
+.Ar flag
+is:
+.Bl -tag -width Ds
+.It Fl s
+use
+.Ic sdot
+to read configuration,
+because we want verified configuration or
+to use
+.Ic safe_dot
+to read an unverified configuration.
+.It Fl v
+use
+.Ic vdot
+to read in configuration only if it is verified.
+.El
+.Pp
+.Ic DebugOn
+will be called with tags derived from
+.Ar name
+to enable tracing if any appear in
+.Va DEBUG_SH .
.It Ic load_rc_config_var Ar name Ar var
Read the
.Xr rc.conf 5
@@ -319,6 +431,34 @@ variable
.Va critical_filesystems_ Ns Ar type ,
mounting each one that
is not currently mounted.
+.It Ic rc_log Ar message
+Output
+.Ar message
+with a timestamp, which is both human readable and
+easily parsed for post processing, using:
+.Bd -literal -offset indent
+date "+@ %s [%Y-%m-%d %H:%M:%S %Z] $*"
+.Ed
+.It Ic rc_trace Ar level Ar message
+If the file
+.Pa /etc/rc.conf.d/rc_trace
+exists and is not empty attempt to set
+.Va RC_LEVEL
+based on its content.
+If the file is empty or does not contain
+a value for
+.Va RC_LEVEL ,
+set it to
+.Li 0 .
+.Pp
+If
+.Ar level
+is greater than or equal to
+.Va RC_LEVEL
+pass
+.Ar message
+to
+.Ic rc_log .
.It Ic rc_usage Ar command ...
Print a usage message for
.Va $0 ,
@@ -685,6 +825,9 @@ This is a generic version of
.Va ${name}_fib ,
or
.Va ${name}_nice .
+.It Va ${name}_setup
+Command to be run prior to
+.Va command .
.It Ar argument Ns Va _cmd
Shell commands which override the default method for
.Ar argument .
@@ -848,6 +991,24 @@ is started:
.Ar argument Ns Va _postcmd .
.Ed
.Pp
+Call
+.Ic rc_trace
+to indicate that
+.Ar file
+is to be run.
+.Pp
+However, if
+.Ic is_verified Ar file
+fails, just return.
+.Pp
+.Ic DebugOn
+will be called with tags derrived from
+.Va name
+and
+.Va rc_arg
+to enable tracing if any of those tags appear in
+.Va DEBUG_SH .
+.Pp
The startup behaviour of
.Ar file
depends upon the following checks:
@@ -884,6 +1045,54 @@ otherwise source
.Ar file
into the current shell.
.El
+.It Ic run_rc_scripts Oo options Oc file ...
+Call
+.Ic run_rc_script
+for each
+.Ar file ,
+unless it is already recorded as having been run.
+.Pp
+The
+.Ar options
+are:
+.Bl -tag -width "--break break"
+.It Ic --arg Ar arg
+Pass
+.Ar arg
+to
+.Ic run_rc_script ,
+default is
+.Ar _boot
+set by
+.Xr rc 8 .
+.It Ic --break Ar break
+Stop processing if any
+.Ar file
+matches any
+.Ar break
+.El
+.It Ic safe_dot Ar file ...
+Used by
+.Ic sdot
+when
+.Xr mac_veriexec 4
+is active and
+.Ar file
+is not verified.
+.Pp
+This function limits the input from
+.Ar file
+to simple variable assignments with any
+non-alphanumeric characters replaced with
+.Ql _ .
+.It Ic sdot Ar file ...
+For reading in configuration files.
+Skip files that do not exist or are empty.
+Try using
+.Ic vdot
+and if that fails (the file is unverified)
+fall back to using
+.Ic safe_dot .
.It Ic startmsg Oo Fl n Oc Ar message
Display a start message to
.Va stdout .
@@ -913,6 +1122,27 @@ signal is sent to the parent
process, which is assumed to be
.Xr rc 8 .
Otherwise, the shell exits with a non-zero status.
+.It Ic vdot Ar file ...
+For reading in only verified files.
+.Pp
+Ensure shell
+.Li verify
+option is on.
+This option is only meaningful when
+.Xr mac_veriexec 4
+is active,
+otherwise this function is effectively the same as
+.Ic dot .
+.Pp
+Read in each
+.Ar file
+if it exists and
+.Ic is_verfied Ar file
+is successful, otherwise set return code to 80 (EAUTH).
+.Pp
+Restore previous state of the
+.Li verify
+option.
.It Ic wait_for_pids Op Ar pid ...
Wait until all of the provided
.Ar pids
@@ -942,6 +1172,7 @@ file resides in
.Pa /etc .
.El
.Sh SEE ALSO
+.Xr debug.sh 8 ,
.Xr rc.conf 5 ,
.Xr rc 8
.Sh HISTORY
diff --git a/share/man/man8/rescue.8 b/share/man/man8/rescue.8
index a87ffb31b1a9..3e14230a585b 100644
--- a/share/man/man8/rescue.8
+++ b/share/man/man8/rescue.8
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 30, 2022
.Dt RESCUE 8
.Os
diff --git a/share/man/man8/uefi.8 b/share/man/man8/uefi.8
index b7d62fa4eeae..42642bb48260 100644
--- a/share/man/man8/uefi.8
+++ b/share/man/man8/uefi.8
@@ -21,9 +21,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd March 18, 2022
+.Dd August 31, 2023
.Dt UEFI 8
.Os
.Sh NAME
@@ -91,7 +89,7 @@ or
.It
.Pa loader.efi
loads and boots the kernel, as described in
-.Xr loader 8 .
+.Xr loader.efi 8 .
.El
.Pp
The
@@ -118,6 +116,7 @@ Typical non-default kernel (optional)
.Xr efidp 8 ,
.Xr efivar 8 ,
.Xr gpart 8 ,
+.Xr loader.efi 8 ,
.Xr uefisign 8
.Sh HISTORY
EFI boot support for the ia64 architecture first appeared in
diff --git a/share/man/man8/yp.8 b/share/man/man8/yp.8
index 8ca91be23cd2..1663d4da26ca 100644
--- a/share/man/man8/yp.8
+++ b/share/man/man8/yp.8
@@ -25,9 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" from: @(#)yp.8 1.0 (deraadt) 4/26/93
-.\" $FreeBSD$
-.\"
.Dd December 14, 2011
.Dt YP 8
.Os
diff --git a/share/man/man9/BUF_ISLOCKED.9 b/share/man/man9/BUF_ISLOCKED.9
index 8616ff5d65a8..09dfc458c834 100644
--- a/share/man/man9/BUF_ISLOCKED.9
+++ b/share/man/man9/BUF_ISLOCKED.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 22, 2008
.Dt BUF_ISLOCKED 9
.Os
diff --git a/share/man/man9/BUF_LOCK.9 b/share/man/man9/BUF_LOCK.9
index 9676af83efac..f70c3bb9be16 100644
--- a/share/man/man9/BUF_LOCK.9
+++ b/share/man/man9/BUF_LOCK.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 9, 2001
.Dt BUF_LOCK 9
.Os
diff --git a/share/man/man9/BUF_LOCKFREE.9 b/share/man/man9/BUF_LOCKFREE.9
index 1226ceadacd6..489e5865025c 100644
--- a/share/man/man9/BUF_LOCKFREE.9
+++ b/share/man/man9/BUF_LOCKFREE.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 9, 2001
.Dt BUF_LOCKFREE 9
.Os
diff --git a/share/man/man9/BUF_LOCKINIT.9 b/share/man/man9/BUF_LOCKINIT.9
index 98d3b2aa1149..40730c2055e8 100644
--- a/share/man/man9/BUF_LOCKINIT.9
+++ b/share/man/man9/BUF_LOCKINIT.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 6, 2005
.Dt BUF_LOCKINIT 9
.Os
diff --git a/share/man/man9/BUF_RECURSED.9 b/share/man/man9/BUF_RECURSED.9
index fccf83f40e96..48cd2a58cef2 100644
--- a/share/man/man9/BUF_RECURSED.9
+++ b/share/man/man9/BUF_RECURSED.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 22, 2008
.Dt BUF_RECURSED 9
.Os
diff --git a/share/man/man9/BUF_TIMELOCK.9 b/share/man/man9/BUF_TIMELOCK.9
index 151e7f5251b7..dc8f2420f396 100644
--- a/share/man/man9/BUF_TIMELOCK.9
+++ b/share/man/man9/BUF_TIMELOCK.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 9, 2001
.Dt BUF_TIMELOCK 9
.Os
diff --git a/share/man/man9/BUF_UNLOCK.9 b/share/man/man9/BUF_UNLOCK.9
index e305a5d7f5c1..ed9f4cb82732 100644
--- a/share/man/man9/BUF_UNLOCK.9
+++ b/share/man/man9/BUF_UNLOCK.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 9, 2001
.Dt BUF_UNLOCK 9
.Os
diff --git a/share/man/man9/BUS_ADD_CHILD.9 b/share/man/man9/BUS_ADD_CHILD.9
index ea3b2e5e7e73..bf77710866e2 100644
--- a/share/man/man9/BUS_ADD_CHILD.9
+++ b/share/man/man9/BUS_ADD_CHILD.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 8, 2018
.Dt BUS_ADD_CHILD 9
.Os
diff --git a/share/man/man9/BUS_BIND_INTR.9 b/share/man/man9/BUS_BIND_INTR.9
index 162a8b5a9e08..206d20b2468e 100644
--- a/share/man/man9/BUS_BIND_INTR.9
+++ b/share/man/man9/BUS_BIND_INTR.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 14, 2009
.Dt BUS_BIND_INTR 9
.Os
diff --git a/share/man/man9/BUS_CHILD_DELETED.9 b/share/man/man9/BUS_CHILD_DELETED.9
index 4ab46bef0a44..a7c0d736a3cc 100644
--- a/share/man/man9/BUS_CHILD_DELETED.9
+++ b/share/man/man9/BUS_CHILD_DELETED.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 21, 2012
.Dt BUS_CHILD_DELETED 9
.Os
diff --git a/share/man/man9/BUS_CHILD_DETACHED.9 b/share/man/man9/BUS_CHILD_DETACHED.9
index b79b9c412d1c..4cc00a49465b 100644
--- a/share/man/man9/BUS_CHILD_DETACHED.9
+++ b/share/man/man9/BUS_CHILD_DETACHED.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 21, 2012
.Dt BUS_CHILD_DETACHED 9
.Os
diff --git a/share/man/man9/BUS_CHILD_LOCATION.9 b/share/man/man9/BUS_CHILD_LOCATION.9
index 647b942b087a..808b55b8981c 100644
--- a/share/man/man9/BUS_CHILD_LOCATION.9
+++ b/share/man/man9/BUS_CHILD_LOCATION.9
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 22, 2021
.Dt BUS_CHILD_LOCATION 9
.Os
diff --git a/share/man/man9/BUS_CHILD_PNPINFO.9 b/share/man/man9/BUS_CHILD_PNPINFO.9
index eac9072d0514..2117aab62d38 100644
--- a/share/man/man9/BUS_CHILD_PNPINFO.9
+++ b/share/man/man9/BUS_CHILD_PNPINFO.9
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 22, 2021
.Dt BUS_CHILD_PNPINFO 9
.Os
diff --git a/share/man/man9/BUS_CONFIG_INTR.9 b/share/man/man9/BUS_CONFIG_INTR.9
index 0a049a95875e..cf6ecbb4b823 100644
--- a/share/man/man9/BUS_CONFIG_INTR.9
+++ b/share/man/man9/BUS_CONFIG_INTR.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt BUS_CONFIG_INTR 9
.Os
diff --git a/share/man/man9/BUS_DESCRIBE_INTR.9 b/share/man/man9/BUS_DESCRIBE_INTR.9
index 86034170c597..80dce06ea7dd 100644
--- a/share/man/man9/BUS_DESCRIBE_INTR.9
+++ b/share/man/man9/BUS_DESCRIBE_INTR.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 9, 2015
.Dt BUS_DESCRIBE_INTR 9
.Os
diff --git a/share/man/man9/BUS_GET_CPUS.9 b/share/man/man9/BUS_GET_CPUS.9
index d22fc2b6332a..d076bb827dec 100644
--- a/share/man/man9/BUS_GET_CPUS.9
+++ b/share/man/man9/BUS_GET_CPUS.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 1, 2016
.Dt BUS_GET_CPUS 9
.Os
diff --git a/share/man/man9/BUS_GET_PROPERTY.9 b/share/man/man9/BUS_GET_PROPERTY.9
index 6d6bc14b4d8f..74fcd7f7dee8 100644
--- a/share/man/man9/BUS_GET_PROPERTY.9
+++ b/share/man/man9/BUS_GET_PROPERTY.9
@@ -1,5 +1,5 @@
.\" -
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 Semihalf
.\"
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 18, 2022
.Dt BUS_GET_PROPERTY 9
.Os
diff --git a/share/man/man9/BUS_NEW_PASS.9 b/share/man/man9/BUS_NEW_PASS.9
index e647f8f6cbda..de34f0836dcc 100644
--- a/share/man/man9/BUS_NEW_PASS.9
+++ b/share/man/man9/BUS_NEW_PASS.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 8, 2009
.Dt BUS_NEW_PASS 9
.Os
diff --git a/share/man/man9/BUS_PRINT_CHILD.9 b/share/man/man9/BUS_PRINT_CHILD.9
index a3709d94866b..037ca59f1a70 100644
--- a/share/man/man9/BUS_PRINT_CHILD.9
+++ b/share/man/man9/BUS_PRINT_CHILD.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 6, 2005
.Dt BUS_PRINT_CHILD 9
.Os
diff --git a/share/man/man9/BUS_READ_IVAR.9 b/share/man/man9/BUS_READ_IVAR.9
index 153b324b56a4..51e17df20067 100644
--- a/share/man/man9/BUS_READ_IVAR.9
+++ b/share/man/man9/BUS_READ_IVAR.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt BUS_READ_IVAR 9
.Os
diff --git a/share/man/man9/BUS_RESCAN.9 b/share/man/man9/BUS_RESCAN.9
index fbadfc5498d3..6f3eb39d593b 100644
--- a/share/man/man9/BUS_RESCAN.9
+++ b/share/man/man9/BUS_RESCAN.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 27, 2016
.Dt BUS_RESCAN 9
.Os
diff --git a/share/man/man9/BUS_SETUP_INTR.9 b/share/man/man9/BUS_SETUP_INTR.9
index eab62e39ecc4..238f434e2d65 100644
--- a/share/man/man9/BUS_SETUP_INTR.9
+++ b/share/man/man9/BUS_SETUP_INTR.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 3, 2010
.Dt BUS_SETUP_INTR 9
.Os
diff --git a/share/man/man9/CTASSERT.9 b/share/man/man9/CTASSERT.9
index 39f25d6dbe82..0a55b45059f0 100644
--- a/share/man/man9/CTASSERT.9
+++ b/share/man/man9/CTASSERT.9
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 1, 2015
.Dt CTASSERT 9
.Os
diff --git a/share/man/man9/DB_COMMAND.9 b/share/man/man9/DB_COMMAND.9
index 15c2adce3580..b07281a353ac 100644
--- a/share/man/man9/DB_COMMAND.9
+++ b/share/man/man9/DB_COMMAND.9
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 24, 2022
+.Dd July 5, 2023
.Dt DB_COMMAND 9
.Os
.Sh NAME
@@ -34,11 +32,17 @@
.Nm DB_SHOW_COMMAND ,
.Nm DB_SHOW_COMMAND_FLAGS ,
.Nm DB_SHOW_ALL_COMMAND ,
+.Nm DB_TABLE_COMMAND ,
+.Nm DB_TABLE_COMMAND_FLAGS ,
.Nm DB_ALIAS ,
.Nm DB_ALIAS_FLAGS ,
.Nm DB_SHOW_ALIAS ,
.Nm DB_SHOW_ALIAS_FLAGS ,
-.Nm DB_SHOW_ALL_ALIAS
+.Nm DB_SHOW_ALL_ALIAS ,
+.Nm DB_TABLE_ALIAS ,
+.Nm DB_TABLE_ALIAS_FLAGS
+.Nm DB_DECLARE_TABLE ,
+.Nm DB_DEFINE_TABLE ,
.Nd Extends the ddb command set
.Sh SYNOPSIS
.In ddb/ddb.h
@@ -47,11 +51,17 @@
.Fn DB_SHOW_COMMAND "command_name" "command_function"
.Fn DB_SHOW_COMMAND_FLAGS "command_name" "command_function" "flags"
.Fn DB_SHOW_ALL_COMMAND "command_name" "command_function"
+.Fn DB_TABLE_COMMAND "table" "command_name" "command_function"
+.Fn DB_TABLE_COMMAND_FLAGS "table" "command_name" "command_function" "flags"
.Fn DB_ALIAS "alias_name" "command_function"
.Fn DB_ALIAS_FLAGS "alias_name" "command_function" "flags"
.Fn DB_SHOW_ALIAS "alias_name" "command_function"
.Fn DB_SHOW_ALIAS_FLAGS "alias_name" "command_function" "flags"
.Fn DB_SHOW_ALL_ALIAS "alias_name" "command_function"
+.Fn DB_TABLE_ALIAS "table" "alias_name" "command_function"
+.Fn DB_TABLE_ALIAS_FLAGS "table" "alias_name" "command_function" "flags"
+.Fn DB_DEFINE_TABLE "parent" "name" "table"
+.Fn DB_DECLARE_TABLE "table"
.Sh DESCRIPTION
The
.Fn DB_COMMAND
@@ -78,10 +88,18 @@ command and
command, respectively.
.Pp
The
+.Fn DB_TABLE_COMMAND
+macro is also similar to
+.Fn DB_COMMAND
+but adds the new command as a sub-command of the ddb command
+.Fa table .
+.Pp
+The
.Fn DB_ALIAS ,
.Fn DB_SHOW_ALIAS ,
+.Fn DB_SHOW_ALL_ALIAS ,
and
-.Fn DB_SHOW_ALL_ALIAS
+.Fn DB_TABLE_ALIAS
macros register the existing
.Fa command_function
under the alternative command name
@@ -117,6 +135,19 @@ For example, the
.Sy examine
command will display words in decimal form if it is passed the modifier "d".
.El
+.Pp
+The
+.Fn DB_DEFINE_TABLE
+macro adds a new command
+.Fa name
+as a sub-command of the existing command table
+.Fa parent .
+The new command defines a table named
+.Fa table
+which contains sub-commands.
+New commands and aliases can be added to this table by passing
+.Fa table
+as the first argument to one of the DB_TABLE_ macros.
.Sh EXAMPLES
In your module, the command is declared as:
.Bd -literal
diff --git a/share/man/man9/DECLARE_GEOM_CLASS.9 b/share/man/man9/DECLARE_GEOM_CLASS.9
index a6dc969e0986..108048f98ec0 100644
--- a/share/man/man9/DECLARE_GEOM_CLASS.9
+++ b/share/man/man9/DECLARE_GEOM_CLASS.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 13, 2007
.Dt DECLARE_GEOM_CLASS 9
.Os
diff --git a/share/man/man9/DECLARE_MODULE.9 b/share/man/man9/DECLARE_MODULE.9
index 56f5b4e7444a..f7c49eee07db 100644
--- a/share/man/man9/DECLARE_MODULE.9
+++ b/share/man/man9/DECLARE_MODULE.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 13, 2018
.Dt DECLARE_MODULE 9
.Os
diff --git a/share/man/man9/DEFINE_IFUNC.9 b/share/man/man9/DEFINE_IFUNC.9
index dbcd18f1b731..0bb75d1fd4da 100644
--- a/share/man/man9/DEFINE_IFUNC.9
+++ b/share/man/man9/DEFINE_IFUNC.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 18, 2019
.Dt DEFINE_IFUNC 9
.Os
diff --git a/share/man/man9/DELAY.9 b/share/man/man9/DELAY.9
index 61cd235b5575..bfc8f7949f4b 100644
--- a/share/man/man9/DELAY.9
+++ b/share/man/man9/DELAY.9
@@ -25,8 +25,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 20, 2013
.Dt DELAY 9
.Os
diff --git a/share/man/man9/DEVICE_ATTACH.9 b/share/man/man9/DEVICE_ATTACH.9
index 68727715a9a5..0946e1f13b7c 100644
--- a/share/man/man9/DEVICE_ATTACH.9
+++ b/share/man/man9/DEVICE_ATTACH.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt DEVICE_ATTACH 9
.Os
diff --git a/share/man/man9/DEVICE_DETACH.9 b/share/man/man9/DEVICE_DETACH.9
index 8b4c43c2f2d0..5f1bf7a3295f 100644
--- a/share/man/man9/DEVICE_DETACH.9
+++ b/share/man/man9/DEVICE_DETACH.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVICE_DETACH 9
.Os
diff --git a/share/man/man9/DEVICE_IDENTIFY.9 b/share/man/man9/DEVICE_IDENTIFY.9
index 0011f8a4492b..4892e66eb214 100644
--- a/share/man/man9/DEVICE_IDENTIFY.9
+++ b/share/man/man9/DEVICE_IDENTIFY.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt DEVICE_IDENTIFY 9
.Os
diff --git a/share/man/man9/DEVICE_PROBE.9 b/share/man/man9/DEVICE_PROBE.9
index 5fef21ff0349..292ffceb89d8 100644
--- a/share/man/man9/DEVICE_PROBE.9
+++ b/share/man/man9/DEVICE_PROBE.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 8, 2012
.Dt DEVICE_PROBE 9
.Os
diff --git a/share/man/man9/DEVICE_SHUTDOWN.9 b/share/man/man9/DEVICE_SHUTDOWN.9
index 0bf6a8bc8671..4ab3646bbae7 100644
--- a/share/man/man9/DEVICE_SHUTDOWN.9
+++ b/share/man/man9/DEVICE_SHUTDOWN.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 6, 2005
.Dt DEVICE_SHUTDOWN 9
.Os
diff --git a/share/man/man9/DEV_MODULE.9 b/share/man/man9/DEV_MODULE.9
index e28b245ea635..084ba1704cc3 100644
--- a/share/man/man9/DEV_MODULE.9
+++ b/share/man/man9/DEV_MODULE.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 19, 2012
.Dt DEV_MODULE 9
.Os
diff --git a/share/man/man9/DRIVER_MODULE.9 b/share/man/man9/DRIVER_MODULE.9
index 15f4a87c2276..c349375b68ce 100644
--- a/share/man/man9/DRIVER_MODULE.9
+++ b/share/man/man9/DRIVER_MODULE.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 19, 2022
.Dt DRIVER_MODULE 9
.Os
diff --git a/share/man/man9/EVENTHANDLER.9 b/share/man/man9/EVENTHANDLER.9
index b369e2f03258..4bf3eebaa445 100644
--- a/share/man/man9/EVENTHANDLER.9
+++ b/share/man/man9/EVENTHANDLER.9
@@ -21,9 +21,8 @@
.\" 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.
-.\" $FreeBSD$
.\"
-.Dd September 17, 2020
+.Dd October 7, 2022
.Dt EVENTHANDLER 9
.Os
.Sh NAME
@@ -258,150 +257,6 @@ The
function removes all deregistered callbacks from the event list
.Fa list .
.El
-.Ss Kernel Event Handlers
-The following event handlers are present in the kernel:
-.Bl -tag -width indent
-.It Vt acpi_sleep_event
-Callbacks invoked when the system is being sent to sleep.
-.It Vt acpi_wakeup_event
-Callbacks invoked when the system is being woken up.
-.It Vt app_coredump_start
-Callbacks invoked at start of application core dump.
-.It Vt app_coredump_progress
-Callbacks invoked during progress of application core dump.
-.It Vt app_coredump_finish
-Callbacks invoked at finish of application core dump.
-.It Vt app_coredump_error
-Callbacks invoked on error of application core dump.
-.It Vt bpf_track
-Callbacks invoked when a BPF listener attaches to/detaches from network interface.
-.It Vt cpufreq_levels_changed
-Callback invoked when cpu frequency levels have changed.
-.It Vt cpufreq_post_change
-Callback invoked after cpu frequency has changed.
-.It Vt cpufreq_pre_change
-Callback invoked before cpu frequency has changed.
-.It Vt dcons_poll
-Callback invoked to poll for dcons changes.
-.It Vt device_attach
-Callback invoked after a device has attached.
-.It Vt device_detach
-Callbacks invoked before and after a device has detached.
-.It Vt dev_clone
-Callbacks invoked when a new entry is created under
-.Pa /dev .
-.It Vt group_attach_event
-Callback invoked when an interfance has been added to an interface group.
-.It Vt group_change_event
-Callback invoked when an change has been made to an interface group.
-.It Vt group_detach_event
-Callback invoked when an interfance has been removed from an interface group.
-.It Vt ifaddr_event
-Callbacks invoked when an address is set up on a network interface.
-.It Vt ifaddr_event_ext
-Callback invoked when an address has been added or removed from an interface.
-.It Vt if_clone_event
-Callbacks invoked when an interface is cloned.
-.It Vt iflladdr_event
-Callback invoked when an if link layer address event has happened.
-.It Vt ifnet_arrival_event
-Callbacks invoked when a new network interface appears.
-.It Vt ifnet_departure_event
-Callbacks invoked when a network interface is taken down.
-.It Vt ifnet_link_event
-Callback invoked when an interfance link event has happened.
-.It Vt kld_load
-Callbacks invoked after a linker file has been loaded.
-.It Vt kld_unload
-Callbacks invoked after a linker file has been successfully unloaded.
-.It Vt kld_unload_try
-Callbacks invoked before a linker file is about to be unloaded.
-These callbacks may be used to return an error and prevent the unload from
-proceeding.
-.It Vt livedumper_start
-Callback invoked before beginning a kernel dump of the live system.
-.It Vt livedumper_dump
-Callback invoked for each dumped block of data during a live kernel dump.
-.It Vt livedumper_finish
-Callback invoked once a live kernel dump has completed.
-.It Vt lle_event
-Callback invoked when a link layer event has happened.
-.It Vt nmbclusters_change
-Callback invoked when the number of mbuf clusters has changed.
-.It Vt nmbufs_change
-Callback invoked when the number of mbufs has changed.
-.It Vt maxsockets_change
-Callback invoked when the maximum number of sockets has changed.
-.It Vt mountroot
-Callback invoked when root has been mounted.
-.It Vt power_profile_change
-Callbacks invoked when the power profile of the system changes.
-.It Vt power_resume
-Callback invoked when the system has resumed.
-.It Vt power_suspend
-Callback invoked just before the system is suspended.
-.It Vt process_ctor
-Callback invoked when a process is created.
-.It Vt process_dtor
-Callback invoked when a process is destroyed.
-.It Vt process_exec
-Callbacks invoked when a process performs an
-.Fn exec
-operation.
-.It Vt process_exit
-Callbacks invoked when a process exits.
-.It Vt process_fini
-Callback invoked when a process memory is destroyed.
-This is never called.
-.It Vt process_fork
-Callbacks invoked when a process forks a child.
-.It Vt process_init
-Callback invoked when a process is initialized.
-.It Vt random_adaptor_attach
-Callback invoked when a new random module has been loaded.
-.It Vt register_framebuffer
-Callback invoked when a new frame buffer is registered.
-.It Vt route_redirect_event
-Callback invoked when a route gets redirected to a new location.
-.It Vt shutdown_pre_sync
-Callbacks invoked at shutdown time, before file systems are synchronized.
-.It Vt shutdown_post_sync
-Callbacks invoked at shutdown time, after all file systems are synchronized.
-.It Vt shutdown_final
-Callbacks invoked just before halting the system.
-.It Vt tcp_offload_listen_start
-Callback invoked for TCP Offload to start listening for new connections.
-.It Vt tcp_offload_listen_stop
-Callback invoked ror TCP Offload to stop listening for new connections.
-.It Vt thread_ctor
-Callback invoked when a thread object is created.
-.It Vt thread_dtor
-Callback invoked when a thread object is destroyed.
-.It Vt thread_init
-Callback invoked when a thread object is initialized.
-.It Vt thread_fini
-Callback invoked when a thread object is deinitalized.
-.It Vt usb_dev_configured
-Callback invoked when a USB device is configured
-.It Vt unregister_framebuffer
-Callback invoked when a frame buffer is deregistered.
-.It Vt vfs_mounted
-Callback invoked when a file system is mounted.
-.It Vt vfs_unmounted
-Callback invoked when a file system is unmounted.
-.It Vt vlan_config
-Callback invoked when the vlan configuration has changed.
-.It Vt vlan_unconfig
-Callback invoked when a vlan is destroyed.
-.It Vt vm_lowmem
-Callbacks invoked when virtual memory is low.
-.It Vt vxlan_start
-Callback invoked when a vxlan interface starts.
-.It Vt vxlan_stop
-Callback invoked when a vxlan interface stops.
-.It Vt watchdog_list
-Callbacks invoked when the system watchdog timer is reinitialized.
-.El
.Sh RETURN VALUES
The macro
.Fn EVENTHANDLER_REGISTER
diff --git a/share/man/man9/KASSERT.9 b/share/man/man9/KASSERT.9
index 0c6898a7799b..bab8efe5cfac 100644
--- a/share/man/man9/KASSERT.9
+++ b/share/man/man9/KASSERT.9
@@ -1,8 +1,11 @@
-.\" -*- nroff -*-
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2000 Jonathan M. Bresler
-.\"
.\" All rights reserved.
+.\" Copyright (c) 2023-2024 The FreeBSD Foundation
+.\"
+.\" Portions of this documentation were written by Mitchell Horne
+.\" under sponsorship from the FreeBSD Foundation.
.\"
.\" This program is free software.
.\"
@@ -26,61 +29,173 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 14, 2000
+.Dd March 19, 2024
.Dt KASSERT 9
.Os
.Sh NAME
.Nm KASSERT
-.Nd kernel expression verification macro
+.Nd kernel expression verification macros
.Sh SYNOPSIS
.Cd "options INVARIANTS"
.Pp
.In sys/param.h
.In sys/systm.h
.Fn KASSERT expression msg
+.Fn MPASS expression
.Sh DESCRIPTION
-In a kernel compiled with
-.Cd "options INVARIANTS" ,
-the
-.Fn KASSERT
-macro tests the given
-.Fa expression
-and if it is false,
-calls the
+Assertions are widely used within the
+.Fx
+kernel to verify programmatic assumptions.
+For violations of run-time assumptions and invariants, it is desirable to fail
+as soon and as loudly as possible.
+Assertions are optional code; for non-recoverable error conditions an explicit
+call to
.Xr panic 9
-function, terminating the running system.
+is usually preferred.
.Pp
-In a kernel that does not have
+The
+.Fn KASSERT
+macro tests the given boolean
+.Fa expression .
+If
+.Fa expression
+evaluates to
+.Dv false ,
+and the kernel is compiled with
.Cd "options INVARIANTS" ,
the
-.Fn KASSERT
-macro is defined to be a no-op.
-The
-second argument is a
+.Xr panic 9
+function is called.
+This terminates the running system at the point of the error, possibly dropping
+into the kernel debugger or initiating a kernel core dump.
+The second argument,
+.Fa msg ,
+is a
.Xr printf 9
format string and its arguments,
enclosed in parentheses.
+The formatted string will become the panic string.
+.Pp
+In a kernel that is built without
+.Cd "options INVARIANTS" ,
+the assertion macros are defined to be no-ops.
+This eliminates the runtime overhead of widespread assertions from release
+builds of the kernel.
+Therefore, checks which can be performed in a constant amount of time can be
+added as assertions without concern about their performance impact.
+More expensive checks, such as those that output to console, or verify the
+integrity of a chain of objects are generally best hidden behind the
+.Cd DIAGNOSTIC
+kernel option.
+.Pp
+The
+.Fn MPASS
+macro (read as: "must-pass")
+is a convenience wrapper around
+.Fn KASSERT
+that automatically generates a simple assertion message including file and line
+information.
+.Ss Assertion Guidelines
+When adding new assertions, keep in mind their primary purpose: to aid in
+identifying and debugging of complex error conditions.
+.Pp
+The panic messages resulting from assertion failures should be useful without
+the resulting kernel dump; the message may be included in a bug report, and
+should contain the relevant information needed to discern how the assertion was
+violated.
+This is especially important when the error condition is difficult or
+impossible for the developer to reproduce locally.
+.Pp
+Therefore, assertions should adhere to the following guidelines:
+.Bl -enum
+.It
+Whenever possible, the value of a runtime variable checked by an assertion
+condition should appear in its message.
+.It
+Unrelated conditions must appear in separate assertions.
+.It
+Multiple related conditions should be distinguishable (e.g. by value), or split
+into separate assertions.
+.It
+When in doubt, print more information, not less.
+.El
+.Pp
+Combined, this gives greater clarity into the exact cause of an assertion
+panic; see
+.Sx EXAMPLES
+below.
.Sh EXAMPLES
-The kernel function
-.Fn vput
-must not be called with a
-.Dv NULL
-pointer.
+A hypothetical
+.Vt struct foo
+object must not have its 'active' flag set when calling
+.Fn foo_dealloc :
.Bd -literal -offset indent
void
-vput(vp)
- struct vnode *vp;
+foo_dealloc(struct foo *fp)
{
- struct proc *p = curproc;
- KASSERT(vp != NULL, ("vput: null vp"));
+
+ KASSERT((fp->foo_flags & FOO_ACTIVE) == 0,
+ ("%s: fp %p is still active, flags=%x", __func__, fp,
+ fp->foo_flags));
...
}
.Ed
+.Pp
+This assertion provides the full flag set for the object, as well as the memory
+pointer, which may be used by a debugger to examine the object in detail
+.Po
+for example with a 'show foo' command in
+.Xr ddb 4
+.Pc .
+.Pp
+The assertion
+.Bd -literal -offset indent
+MPASS(td == curthread);
+.Ed
+.Pp
+located on line 87 of a file named foo.c would generate the following panic
+message:
+.Bd -literal -offset indent
+panic: Assertion td == curthread failed at foo.c:87
+.Ed
+.Pp
+This is a simple condition, and the message provides enough information to
+investigate the failure.
+.Pp
+The assertion
+.Bd -literal -offset indent
+MPASS(td == curthread && (sz >= SIZE_MIN && sz <= SIZE_MAX));
+.Ed
+.Pp
+is
+.Em NOT
+useful enough.
+The message doesn't indicate which part of the assertion was violated, nor
+does it report the value of
+.Dv sz ,
+which may be critical to understanding
+.Em why
+the assertion failed.
+.Pp
+According to the guidelines above, this would be correctly expressed as:
+.Bd -literal -offset indent
+MPASS(td == curthread);
+KASSERT(sz >= SIZE_MIN && sz <= SIZE_MAX,
+ ("invalid size argument: %u", sz));
+.Ed
+.Sh HISTORY
+The
+.Nm MPASS
+macro first appeared in
+.Bsx
+and was imported into
+.Fx 5.0 .
+The name originates as an acronym of "multi-processor assert", but has evolved
+to mean "must pass", or "must-pass assert".
.Sh SEE ALSO
-.Xr config 8 ,
.Xr panic 9
.Sh AUTHORS
This manual page was written by
-.An Jonathan M. Bresler Aq Mt jmb@FreeBSD.org .
+.An Jonathan M. Bresler Aq Mt jmb@FreeBSD.org
+and
+.An Mitchell Horne Aq Mt mhorne@FreeBSD.org .
diff --git a/share/man/man9/LOCK_PROFILING.9 b/share/man/man9/LOCK_PROFILING.9
index 2b7777882cc9..e2b42cadb08b 100644
--- a/share/man/man9/LOCK_PROFILING.9
+++ b/share/man/man9/LOCK_PROFILING.9
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2004 Dag-Erling Coïdan Smørgrav
+.\" Copyright (c) 2004 Dag-Erling Smørgrav
.\" Copyright (c) 2005 Robert N. M. Watson
.\" Copyright (c) 2006 Kip Macy
.\" All rights reserved.
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 7, 2012
.Dt LOCK_PROFILING 9
.Os
diff --git a/share/man/man9/MD5.9 b/share/man/man9/MD5.9
index 1b9fcd2fb6e9..4418cc40b976 100644
--- a/share/man/man9/MD5.9
+++ b/share/man/man9/MD5.9
@@ -28,8 +28,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 17, 1996
.Dt MD5 9
.Os
diff --git a/share/man/man9/MODULE_DEPEND.9 b/share/man/man9/MODULE_DEPEND.9
index b8e3104e3bec..a3b433a96b07 100644
--- a/share/man/man9/MODULE_DEPEND.9
+++ b/share/man/man9/MODULE_DEPEND.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 11, 2005
.Dt MODULE_DEPEND 9
.Os
diff --git a/share/man/man9/MODULE_PNP_INFO.9 b/share/man/man9/MODULE_PNP_INFO.9
index 843135bede4b..529afd70096d 100644
--- a/share/man/man9/MODULE_PNP_INFO.9
+++ b/share/man/man9/MODULE_PNP_INFO.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 23, 2019
.Dt MODULE_PNP_INFO 9
.Os
diff --git a/share/man/man9/MODULE_VERSION.9 b/share/man/man9/MODULE_VERSION.9
index e791ded652d7..c35a7f0aeee6 100644
--- a/share/man/man9/MODULE_VERSION.9
+++ b/share/man/man9/MODULE_VERSION.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 11, 2001
.Dt MODULE_VERSION 9
.Os
diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile
index 1913f03a48fd..a5fa777d037c 100644
--- a/share/man/man9/Makefile
+++ b/share/man/man9/Makefile
@@ -1,4 +1,3 @@
-# $FreeBSD$
.include <src.opts.mk>
@@ -6,6 +5,7 @@ MAN= accept_filter.9 \
accf_data.9 \
accf_dns.9 \
accf_http.9 \
+ accf_tls.9 \
acl.9 \
alq.9 \
altq.9 \
@@ -69,10 +69,12 @@ MAN= accept_filter.9 \
copy.9 \
counter.9 \
cpuset.9 \
+ cr_bsd_visible.9 \
cr_cansee.9 \
+ cr_canseejailproc.9 \
+ cr_canseeothergids.9 \
+ cr_canseeotheruids.9 \
critical_enter.9 \
- cr_seeothergids.9 \
- cr_seeotheruids.9 \
crypto.9 \
crypto_buffer.9 \
crypto_driver.9 \
@@ -190,12 +192,13 @@ MAN= accept_filter.9 \
ifnet.9 \
inittodr.9 \
insmntque.9 \
+ intr_event.9 \
intro.9 \
- ithread.9 \
kasan.9 \
KASSERT.9 \
kern_reboot.9 \
kern_testfrwk.9 \
+ kern_yield.9 \
kernacc.9 \
kernel_mount.9 \
khelp.9 \
@@ -203,6 +206,7 @@ MAN= accept_filter.9 \
kobj.9 \
kproc.9 \
kqueue.9 \
+ kstack_contains.9 \
kthread.9 \
ktr.9 \
lock.9 \
@@ -241,11 +245,11 @@ MAN= accept_filter.9 \
OF_package_to_path.9 \
ofw_bus_is_compatible.9 \
ofw_bus_status_okay.9 \
+ ofw_graph.9 \
osd.9 \
owll.9 \
own.9 \
panic.9 \
- PCBGROUP.9 \
p_candebug.9 \
p_cansee.9 \
pci.9 \
@@ -265,6 +269,7 @@ MAN= accept_filter.9 \
pmap_copy.9 \
pmap_enter.9 \
pmap_extract.9 \
+ pmap_kextract.9 \
pmap_growkernel.9 \
pmap_init.9 \
pmap_is_modified.9 \
@@ -302,7 +307,6 @@ MAN= accept_filter.9 \
rijndael.9 \
rman.9 \
rmlock.9 \
- rtalloc.9 \
rtentry.9 \
runqueue.9 \
rwlock.9 \
@@ -319,6 +323,7 @@ MAN= accept_filter.9 \
signal.9 \
sleep.9 \
sleepqueue.9 \
+ smr.9 \
socket.9 \
stack.9 \
store.9 \
@@ -345,7 +350,6 @@ MAN= accept_filter.9 \
vaccess.9 \
vaccess_acl_nfs4.9 \
vaccess_acl_posix1e.9 \
- vcount.9 \
vflush.9 \
VFS.9 \
vfs_busy.9 \
@@ -705,6 +709,14 @@ MLINKS+=bus_space.9 bus_space_alloc.9 \
bus_space.9 bus_space_copy_region_stream_8.9 \
bus_space.9 bus_space_free.9 \
bus_space.9 bus_space_map.9 \
+ bus_space.9 bus_space_peek_1.9 \
+ bus_space.9 bus_space_peek_2.9 \
+ bus_space.9 bus_space_peek_4.9 \
+ bus_space.9 bus_space_peek_8.9 \
+ bus_space.9 bus_space_poke_1.9 \
+ bus_space.9 bus_space_poke_2.9 \
+ bus_space.9 bus_space_poke_4.9 \
+ bus_space.9 bus_space_poke_8.9 \
bus_space.9 bus_space_read_1.9 \
bus_space.9 bus_space_read_2.9 \
bus_space.9 bus_space_read_4.9 \
@@ -799,7 +811,6 @@ MLINKS+=byteorder.9 be16dec.9 \
byteorder.9 le64enc.9 \
byteorder.9 le64toh.9
MLINKS+=callout.9 callout_active.9 \
- callout.9 callout_async_drain.9 \
callout.9 callout_deactivate.9 \
callout.9 callout_drain.9 \
callout.9 callout_init.9 \
@@ -888,6 +899,7 @@ MLINKS+=counter.9 counter_u64_alloc.9 \
counter.9 counter_u64_add.9 \
counter.9 counter_enter.9 \
counter.9 counter_exit.9 \
+ counter.9 counter_ratecheck.9 \
counter.9 counter_u64_add_protected.9 \
counter.9 counter_u64_fetch.9 \
counter.9 counter_u64_zero.9 \
@@ -921,7 +933,8 @@ MLINKS+=cpuset.9 CPUSET_T_INITIALIZER.9 \
cpuset.9 CPU_OR_ATOMIC.9 \
cpuset.9 CPU_COPY_STORE_REL.9
MLINKS+=critical_enter.9 critical.9 \
- critical_enter.9 critical_exit.9
+ critical_enter.9 critical_exit.9 \
+ critical_enter.9 CRITICAL_ASSERT.9
MLINKS+=crypto_buffer.9 crypto_apply.9 \
crypto_buffer.9 crypto_apply_buf.9 \
crypto_buffer.9 crypto_buffer_contiguous_segment.9 \
@@ -973,13 +986,20 @@ MLINKS+=DB_COMMAND.9 DB_ALIAS.9 \
DB_COMMAND.9 DB_SHOW_ALL_ALIAS.9 \
DB_COMMAND.9 DB_SHOW_ALL_COMMAND.9 \
DB_COMMAND.9 DB_SHOW_COMMAND.9 \
- DB_COMMAND.9 DB_SHOW_COMMAND_FLAGS.9
+ DB_COMMAND.9 DB_SHOW_COMMAND_FLAGS.9 \
+ DB_COMMAND.9 DB_DECLARE_TABLE.9 \
+ DB_COMMAND.9 DB_DEFINE_TABLE.9 \
+ DB_COMMAND.9 DB_TABLE_COMMAND.9 \
+ DB_COMMAND.9 DB_TABLE_COMMAND_FLAGS.9 \
+ DB_COMMAND.9 DB_TABLE_ALIAS.9 \
+ DB_COMMAND.9 DB_TABLE_ALIAS_FLAGS.9
MLINKS+=DECLARE_MODULE.9 DECLARE_MODULE_TIED.9
MLINKS+=dev_clone.9 drain_dev_clone_events.9
MLINKS+=dev_refthread.9 devvn_refthread.9 \
dev_refthread.9 dev_relthread.9
MLINKS+=devfs_set_cdevpriv.9 devfs_clear_cdevpriv.9 \
- devfs_set_cdevpriv.9 devfs_get_cdevpriv.9
+ devfs_set_cdevpriv.9 devfs_get_cdevpriv.9 \
+ devfs_set_cdevpriv.9 devfs_foreach_cdevpriv.9
MLINKS+=device_add_child.9 device_add_child_ordered.9
MLINKS+=device_enable.9 device_disable.9 \
device_enable.9 device_is_enabled.9
@@ -994,6 +1014,7 @@ MLINKS+=device_get_sysctl.9 device_get_sysctl_ctx.9 \
MLINKS+=device_quiet.9 device_is_quiet.9 \
device_quiet.9 device_verbose.9
MLINKS+=device_set_desc.9 device_get_desc.9 \
+ device_set_desc.9 device_set_descf.9 \
device_set_desc.9 device_set_desc_copy.9
MLINKS+=device_set_flags.9 device_get_flags.9
MLINKS+=devstat.9 devicestat.9 \
@@ -1022,13 +1043,19 @@ MLINKS+=dnv.9 dnvlist.9 \
dnv.9 dnvlist_take_number.9 \
dnv.9 dnvlist_take_nvlist.9 \
dnv.9 dnvlist_take_string.9
-MLINKS+=domain.9 DOMAIN_SET.9 \
+MLINKS+=domain.9 protosw.9 \
domain.9 domain_add.9 \
- domain.9 domain_init.9 \
- domain.9 pfctlinput.9 \
- domain.9 pffinddomain.9 \
- domain.9 pffindproto.9 \
- domain.9 pffindtype.9
+ domain.9 protosw_register.9 \
+ domain.9 protosw_unregister.9
+MLINKS+=dpcpu.9 DPCPU_DECLARE.9 \
+ dpcpu.9 DPCPU_DEFINE.9 \
+ dpcpu.9 DPCPU_DEFINE_STATIC.9 \
+ dpcpu.9 DPCPU_GET.9 \
+ dpcpu.9 DPCPU_ID_PTR.9 \
+ dpcpu.9 DPCPU_ID_GET.9 \
+ dpcpu.9 DPCPU_ID_SET.9 \
+ dpcpu.9 DPCPU_PTR.9 \
+ dpcpu.9 DPCPU_SET.9
MLINKS+=drbr.9 drbr_free.9 \
drbr.9 drbr_enqueue.9 \
drbr.9 drbr_dequeue.9 \
@@ -1096,7 +1123,8 @@ MLINKS+=fpu_kern.9 fpu_kern_alloc_ctx.9 \
fpu_kern.9 fpu_kern_thread.9 \
fpu_kern.9 is_fpu_kern_thread.9
MLINKS+=g_attach.9 g_detach.9
-MLINKS+=g_bio.9 g_alloc_bio.9 \
+MLINKS+=g_bio.9 bio.9 \
+ g_bio.9 g_alloc_bio.9 \
g_bio.9 g_clone_bio.9 \
g_bio.9 g_destroy_bio.9 \
g_bio.9 g_duplicate_bio.9 \
@@ -1133,6 +1161,7 @@ MLINKS+=g_provider.9 g_destroy_provider.9 \
g_provider.9 g_error_provider.9 \
g_provider.9 g_new_providerf.9
MLINKS+=gone_in.9 gone_in_dev.9
+MLINKS+=groupmember.9 realgroupmember.9
MLINKS+=hash.9 hash32.9 \
hash.9 hash32_buf.9 \
hash.9 hash32_str.9 \
@@ -1187,8 +1216,7 @@ MLINKS+=ieee80211_node.9 ieee80211_dump_node.9 \
ieee80211_node.9 ieee80211_find_rxnode_withkey.9 \
ieee80211_node.9 ieee80211_free_node.9 \
ieee80211_node.9 ieee80211_iterate_nodes.9 \
- ieee80211_node.9 ieee80211_ref_node.9 \
- ieee80211_node.9 ieee80211_unref_node.9
+ ieee80211_node.9 ieee80211_ref_node.9
MLINKS+=ieee80211_output.9 ieee80211_process_callback.9 \
ieee80211_output.9 M_SEQNO_GET.9 \
ieee80211_output.9 M_WME_GETAC.9
@@ -1313,12 +1341,17 @@ MLINKS+=ifnet.9 if_addmulti.9 \
ifnet.9 ifunit.9 \
ifnet.9 ifunit_ref.9
MLINKS+=insmntque.9 insmntque1.9
-MLINKS+=ithread.9 ithread_add_handler.9 \
- ithread.9 ithread_create.9 \
- ithread.9 ithread_destroy.9 \
- ithread.9 ithread_priority.9 \
- ithread.9 ithread_remove_handler.9 \
- ithread.9 ithread_schedule.9
+MLINKS+=intr_event.9 intr_event_add_handler.9 \
+ intr_event.9 intr_event_create.9 \
+ intr_event.9 intr_event_destroy.9 \
+ intr_event.9 intr_event_handle.9 \
+ intr_event.9 intr_event_remove_handler.9 \
+ intr_event.9 intr_priority.9
+MLINKS+=KASSERT.9 MPASS.9
+MLINKS+=kern_reboot.9 reboot.9 \
+ kern_reboot.9 shutdown_nice.9
+MLINKS+=kern_yield.9 maybe_yield.9 \
+ kern_yield.9 should_yield.9
MLINKS+=kernacc.9 useracc.9
MLINKS+=kernel_mount.9 free_mntarg.9 \
kernel_mount.9 mount_arg.9 \
@@ -1340,6 +1373,7 @@ MLINKS+=kmsan.9 KMSAN.9 \
kmsan.9 kmsan_check_bio.9 \
kmsan.9 kmsan_check_ccb.9 \
kmsan.9 kmsan_check_mbuf.9 \
+ kmsan.9 kmsan_check_uio.9 \
kmsan.9 kmsan_mark.9 \
kmsan.9 kmsan_oirg.9
MLINKS+=kobj.9 DEFINE_CLASS.9 \
@@ -1366,9 +1400,7 @@ MLINKS+=kqueue.9 knlist_add.9 \
kqueue.9 knlist_empty.9 \
kqueue.9 knlist_init.9 \
kqueue.9 knlist_init_mtx.9 \
- kqueue.9 knlist_init_rw_reader.9 \
kqueue.9 knlist_remove.9 \
- kqueue.9 knlist_remove_inevent.9 \
kqueue.9 knote_fdclose.9 \
kqueue.9 KNOTE_LOCKED.9 \
kqueue.9 KNOTE_UNLOCKED.9 \
@@ -1413,13 +1445,19 @@ MLINKS+=make_dev.9 destroy_dev.9 \
make_dev.9 make_dev_p.9 \
make_dev.9 make_dev_s.9
MLINKS+=malloc.9 free.9 \
+ malloc.9 malloc_aligned.9 \
malloc.9 malloc_domainset.9 \
+ malloc.9 malloc_domainset_aligned.9 \
+ malloc.9 malloc_domainset_exec.9 \
+ malloc.9 malloc_exec.9 \
+ malloc.9 malloc_usable_size.9 \
malloc.9 mallocarray.9 \
malloc.9 mallocarray_domainset.9 \
malloc.9 MALLOC_DECLARE.9 \
malloc.9 MALLOC_DEFINE.9 \
malloc.9 realloc.9 \
- malloc.9 reallocf.9
+ malloc.9 reallocf.9 \
+ malloc.9 zfree.9
MLINKS+=mbchain.9 mb_detach.9 \
mbchain.9 mb_done.9 \
mbchain.9 mb_fixhdr.9 \
@@ -1463,6 +1501,7 @@ MLINKS+=\
mbuf.9 MGET.9 \
mbuf.9 m_get.9 \
mbuf.9 m_get2.9 \
+ mbuf.9 m_get3.9 \
mbuf.9 m_getjcl.9 \
mbuf.9 m_getcl.9 \
mbuf.9 MGETHDR.9 \
@@ -1480,6 +1519,7 @@ MLINKS+=\
mbuf.9 m_pullup.9 \
mbuf.9 m_split.9 \
mbuf.9 mtod.9 \
+ mbuf.9 mtodo.9 \
mbuf.9 M_TRAILINGSPACE.9 \
mbuf.9 m_unshare.9 \
mbuf.9 M_WRITABLE.9
@@ -1693,6 +1733,12 @@ MLINKS+=ofw_bus_is_compatible.9 ofw_bus_is_compatible_strict.9 \
ofw_bus_is_compatible.9 ofw_bus_search_compatible.9
MLINKS+= ofw_bus_status_okay.9 ofw_bus_get_status.9 \
ofw_bus_status_okay.9 ofw_bus_node_status_okay.9
+MLINKS+=ofw_graph.9 ofw_graph_get_device_by_port_ep.9 \
+ ofw_graph.9 ofw_graph_get_endpoint_by_idx.9 \
+ ofw_graph.9 ofw_graph_get_port_by_idx.9 \
+ ofw_graph.9 ofw_graph_get_remove_endpoint.9 \
+ ofw_graph.9 ofw_graph_get_remove_parent.9 \
+ ofw_graph.9 ofw_graph_port_get_num_endpoints.9
MLINKS+=osd.9 osd_call.9 \
osd.9 osd_del.9 \
osd.9 osd_deregister.9 \
@@ -1703,16 +1749,8 @@ MLINKS+=osd.9 osd_call.9 \
osd.9 osd_reserve.9 \
osd.9 osd_set.9 \
osd.9 osd_set_reserved.9
-MLINKS+=panic.9 vpanic.9
-MLINKS+=PCBGROUP.9 in_pcbgroup_byhash.9 \
- PCBGROUP.9 in_pcbgroup_byinpcb.9 \
- PCBGROUP.9 in_pcbgroup_destroy.9 \
- PCBGROUP.9 in_pcbgroup_enabled.9 \
- PCBGROUP.9 in_pcbgroup_init.9 \
- PCBGROUP.9 in_pcbgroup_remove.9 \
- PCBGROUP.9 in_pcbgroup_update.9 \
- PCBGROUP.9 in_pcbgroup_update_mbuf.9 \
- PCBGROUP.9 in6_pcbgroup_byhash.9
+MLINKS+=panic.9 vpanic.9 \
+ panic.9 KERNEL_PANICKED.9
MLINKS+=pci.9 pci_alloc_msi.9 \
pci.9 pci_alloc_msix.9 \
pci.9 pci_disable_busmaster.9 \
@@ -1775,10 +1813,9 @@ MLINKS+=PHOLD.9 PRELE.9 \
PHOLD.9 PROC_ASSERT_NOT_HELD.9
MLINKS+=pmap_copy.9 pmap_copy_page.9
MLINKS+=pmap_extract.9 pmap_extract_and_hold.9
-MLINKS+=pmap_init.9 pmap_init2.9
+MLINKS+=pmap_kextract.9 vtophys.9
MLINKS+=pmap_is_modified.9 pmap_ts_referenced.9
-MLINKS+=pmap_pinit.9 pmap_pinit0.9 \
- pmap_pinit.9 pmap_pinit2.9
+MLINKS+=pmap_pinit.9 pmap_pinit0.9
MLINKS+=pmap_qenter.9 pmap_qremove.9
MLINKS+=pmap_quick_enter_page.9 pmap_quick_remove_page.9
MLINKS+=pmap_remove.9 pmap_remove_all.9 \
@@ -1787,7 +1824,9 @@ MLINKS+=pmap_resident_count.9 pmap_wired_count.9
MLINKS+=pmap_zero_page.9 pmap_zero_area.9
MLINKS+=printf.9 log.9 \
printf.9 tprintf.9 \
- printf.9 uprintf.9
+ printf.9 uprintf.9 \
+ printf.9 vlog.9 \
+ printf.9 vprintf.9
MLINKS+=priv.9 priv_check.9 \
priv.9 priv_check_cred.9
MLINKS+=prng.9 prng32.9 \
@@ -1796,8 +1835,7 @@ MLINKS+=prng.9 prng32.9 \
prng.9 prng64_bounded.9
MLINKS+=proc_rwmem.9 proc_readmem.9 \
proc_rwmem.9 proc_writemem.9
-MLINKS+=psignal.9 gsignal.9 \
- psignal.9 pgsignal.9 \
+MLINKS+=psignal.9 pgsignal.9 \
psignal.9 tdsignal.9
MLINKS+=pwmbus.9 pwm.9
MLINKS+=random.9 arc4rand.9 \
@@ -1834,6 +1872,7 @@ MLINKS+=rman.9 rman_activate_resource.9 \
rman.9 rman_get_rid.9 \
rman.9 rman_get_size.9 \
rman.9 rman_get_start.9 \
+ rman.9 rman_get_type.9 \
rman.9 rman_get_virtual.9 \
rman.9 rman_init.9 \
rman.9 rman_init_from_resource.9 \
@@ -1848,6 +1887,7 @@ MLINKS+=rman.9 rman_activate_resource.9 \
rman.9 rman_set_bustag.9 \
rman.9 rman_set_mapping.9 \
rman.9 rman_set_rid.9 \
+ rman.9 rman_set_type.9 \
rman.9 rman_set_virtual.9
MLINKS+=rmlock.9 rm_assert.9 \
rmlock.9 rm_destroy.9 \
@@ -1862,19 +1902,6 @@ MLINKS+=rmlock.9 rm_assert.9 \
rmlock.9 rm_wlock.9 \
rmlock.9 rm_wowned.9 \
rmlock.9 rm_wunlock.9
-MLINKS+=rtalloc.9 rtalloc1.9 \
- rtalloc.9 rtalloc_ign.9 \
- rtalloc.9 RT_ADDREF.9 \
- rtalloc.9 RT_LOCK.9 \
- rtalloc.9 RT_REMREF.9 \
- rtalloc.9 RT_RTFREE.9 \
- rtalloc.9 RT_UNLOCK.9 \
- rtalloc.9 RTFREE_LOCKED.9 \
- rtalloc.9 RTFREE.9 \
- rtalloc.9 rtfree.9 \
- rtalloc.9 rtalloc1_fib.9 \
- rtalloc.9 rtalloc_ign_fib.9 \
- rtalloc.9 rtalloc_fib.9
MLINKS+=runqueue.9 choosethread.9 \
runqueue.9 procrunnable.9 \
runqueue.9 remrunqueue.9 \
@@ -2045,6 +2072,14 @@ MLINKS+=sleepqueue.9 init_sleepqueues.9 \
sleepqueue.9 sleepq_type.9 \
sleepqueue.9 sleepq_wait.9 \
sleepqueue.9 sleepq_wait_sig.9
+MLINKS+=smr.9 smr_advance.9 \
+ smr.9 smr_create.9 \
+ smr.9 smr_destroy.9 \
+ smr.9 smr_enter.9 \
+ smr.9 smr_exit.9 \
+ smr.9 smr_poll.9 \
+ smr.9 smr_synchronize.9 \
+ smr.9 smr_wait.9
MLINKS+=socket.9 soabort.9 \
socket.9 soaccept.9 \
socket.9 sobind.9 \
@@ -2127,6 +2162,7 @@ MLINKS+=syscall_helper_register.9 syscall_helper_unregister.9 \
syscall_helper_register.9 SYSCALL_INIT_HELPER_COMPAT_F.9 \
syscall_helper_register.9 SYSCALL_INIT_HELPER_F.9
MLINKS+=sysctl.9 SYSCTL_DECL.9 \
+ sysctl.9 SYSCTL_ADD_CONST_STRING.9 \
sysctl.9 SYSCTL_ADD_INT.9 \
sysctl.9 SYSCTL_ADD_LONG.9 \
sysctl.9 SYSCTL_ADD_NODE.9 \
@@ -2301,7 +2337,6 @@ MLINKS+=usbdi.9 usbd_do_request.9 \
usbdi.9 usb_fifo_softc.9 \
usbdi.9 usb_fifo_wakeup.9
.endif
-MLINKS+=vcount.9 count_dev.9
MLINKS+=vfsconf.9 vfs_modevent.9 \
vfsconf.9 vfs_register.9 \
vfsconf.9 vfs_unregister.9
@@ -2334,9 +2369,7 @@ MLINKS+=vm_map_lookup.9 vm_map_lookup_done.9
MLINKS+=vm_map_max.9 vm_map_min.9 \
vm_map_max.9 vm_map_pmap.9
MLINKS+=vm_map_stack.9 vm_map_growstack.9
-MLINKS+=vm_map_wire.9 vm_map_wire_mapped.9 \
- vm_page_wire.9 vm_page_unwire.9 \
- vm_page_wire.9 vm_page_unwire_noq.9
+MLINKS+=vm_map_wire.9 vm_map_unwire.9
MLINKS+=vm_page_alloc.9 vm_page_alloc_after.9 \
vm_page_alloc.9 vm_page_alloc_contig.9 \
vm_page_alloc.9 vm_page_alloc_contig_domain.9 \
@@ -2375,7 +2408,9 @@ MLINKS+=vm_page_free.9 vm_page_free_toq.9 \
vm_page_free.9 vm_page_free_zero.9 \
vm_page_free.9 vm_page_try_to_free.9
MLINKS+=vm_page_insert.9 vm_page_remove.9
-MLINKS+=vm_page_wire.9 vm_page_unwire.9
+MLINKS+=vm_page_wire.9 vm_page_unwire.9 \
+ vm_page_wire.9 vm_page_unwire_noq.9 \
+ vm_page_wire.9 vm_page_wire_mapped.9
MLINKS+=VOP_ACCESS.9 VOP_ACCESSX.9
MLINKS+=VOP_ATTRIB.9 VOP_GETATTR.9 \
VOP_ATTRIB.9 VOP_SETATTR.9 \
@@ -2436,7 +2471,6 @@ MLINKS+=superio.9 superio_devid.9 \
superio.9 superio_dev_enable.9 \
superio.9 superio_dev_enabled.9 \
superio.9 superio_find_dev.9 \
- superio.9 superio_find_dev.9 \
superio.9 superio_get_dma.9 \
superio.9 superio_get_iobase.9 \
superio.9 superio_get_irq.9 \
diff --git a/share/man/man9/Makefile.depend b/share/man/man9/Makefile.depend
index f80275d86ab1..11aba52f82cf 100644
--- a/share/man/man9/Makefile.depend
+++ b/share/man/man9/Makefile.depend
@@ -1,4 +1,3 @@
-# $FreeBSD$
# Autogenerated - do NOT edit!
DIRDEPS = \
diff --git a/share/man/man9/OF_child.9 b/share/man/man9/OF_child.9
index 8227401f5f14..43c9caa0aeaf 100644
--- a/share/man/man9/OF_child.9
+++ b/share/man/man9/OF_child.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 9, 2018
.Dt OF_CHILD 9
.Os
diff --git a/share/man/man9/OF_device_from_xref.9 b/share/man/man9/OF_device_from_xref.9
index c8c206afe777..85a19df6641b 100644
--- a/share/man/man9/OF_device_from_xref.9
+++ b/share/man/man9/OF_device_from_xref.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 9, 2018
.Dt OF_DEVICE_FROM_XREF 9
.Os
diff --git a/share/man/man9/OF_finddevice.9 b/share/man/man9/OF_finddevice.9
index d524a182f01c..cb24f4af9d72 100644
--- a/share/man/man9/OF_finddevice.9
+++ b/share/man/man9/OF_finddevice.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 9, 2018
.Dt OF_FINDDEVICE 9
.Os
diff --git a/share/man/man9/OF_getprop.9 b/share/man/man9/OF_getprop.9
index 5d0607a0a3bf..3bb0068e3dc2 100644
--- a/share/man/man9/OF_getprop.9
+++ b/share/man/man9/OF_getprop.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 23, 2018
.Dt OF_GETPROP 9
.Os
diff --git a/share/man/man9/OF_node_from_xref.9 b/share/man/man9/OF_node_from_xref.9
index 41b683fac928..bd5e2bcab68f 100644
--- a/share/man/man9/OF_node_from_xref.9
+++ b/share/man/man9/OF_node_from_xref.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 9, 2018
.Dt OF_NODE_FROM_XREF 9
.Os
diff --git a/share/man/man9/OF_package_to_path.9 b/share/man/man9/OF_package_to_path.9
index 93ff504bfaae..d358ec87cdcb 100644
--- a/share/man/man9/OF_package_to_path.9
+++ b/share/man/man9/OF_package_to_path.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 9, 2018
.Dt OF_PACKAGE_TO_PATH 9
.Os
diff --git a/share/man/man9/PCBGROUP.9 b/share/man/man9/PCBGROUP.9
deleted file mode 100644
index 85d1bc011f36..000000000000
--- a/share/man/man9/PCBGROUP.9
+++ /dev/null
@@ -1,221 +0,0 @@
-.\" Copyright (c) 2014 Adrian Chadd
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\" 3. The name of the author may not be used to endorse or promote products
-.\" derived from this software without specific prior written permission.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd July 23, 2014
-.Dt PCBGROUP 9
-.Os
-.Sh NAME
-.Nm PCBGROUP
-.Nd Distributed Protocol Control Block Groups
-.Sh SYNOPSIS
-.Cd "options PCBGROUP"
-.Pp
-.In sys/param.h
-.In netinet/in.h
-.In netinet/in_pcb.h
-.Ft void
-.Fo in_pcbgroup_init
-.Fa "struct inpcbinfo *pcbinfo" "u_int hashfields" "int hash_nelements"
-.Fc
-.Ft void
-.Fn in_pcbgroup_destroy "struct inpcbinfo *pcbinfo"
-.Ft struct inpcbgroup *
-.Fo in_pcbgroup_byhash
-.Fa "struct inpcbinfo *pcbinfo" "u_int hashtype" "uint32_t hash"
-.Fc
-.Ft struct inpcbgroup *
-.Fn in_pcbgroup_byinpcb "struct inpcb *inp"
-.Ft void
-.Fn in_pcbgroup_update "struct inpcb *inp"
-.Ft void
-.Fn in_pcbgroup_update_mbuf "struct inpcb *inp" "struct mbuf *m"
-.Ft void
-.Fn in_pcbgroup_remove "struct inpcb *inp"
-.Ft int
-.Fn in_pcbgroup_enabled "struct inpcbinfo *pcbinfo"
-.In netinet6/in6_pcb.h
-.Ft struct inpcbgroup *
-.Fo in6_pcbgroup_byhash
-.Fa "struct inpcbinfo *pcbinfo" "u_int hashtype" "uint32_t hash"
-.Fc
-.Sh DESCRIPTION
-This implementation introduces notions of affinity
-for connections and distribute work so as to reduce lock contention,
-with hardware work distribution strategies
-such as RSS.
-In this construction, connection groups supplement, rather than replace,
-existing reservation tables for protocol 4-tuples, offering CPU-affine
-lookup tables with minimal cache line migration and lock contention
-during steady state operation.
-.Pp
-Internet protocols like UDP and TCP register to use connection groups
-by providing an ipi_hashfields value other than IPI_HASHFIELDS_NONE.
-This indicates to the connection group code whether a 2-tuple or
-4-tuple is used as an argument to hashes that assign a connection to
-a particular group.
-This must be aligned with any hardware-offloaded distribution model,
-such as RSS or similar approaches taken in embedded network boards.
-Wildcard sockets require special handling, as in Willmann 2006, and
-are shared between connection groups while being protected by
-group-local locks.
-Connection establishment and teardown can be signficantly more
-expensive than without connection groups, but that steady-state
-processing can be significantly faster.
-.Pp
-Enabling PCBGROUP in the kernel only provides the infrastructure
-required to create and manage multiple PCB groups.
-An implementation needs to fill in a few functions to provide PCB
-group hash information in order for PCBs to be placed in a PCB group.
-.Ss Operation
-By default, each PCB info block (struct pcbinfo) has a single hash for
-all PCB entries for the given protocol with a single lock protecting it.
-This can be a significant source of lock contention on SMP hardware.
-When a PCBGROUP is created, an array of separate hash tables are
-created, each with its own lock.
-A separate table for wildcard PCBs is provided.
-By default, a PCBGROUP table is created for each available CPU.
-The PCBGROUP code attempts to calculate a hash value from the given
-PCB or mbuf when looking up a PCBGROUP.
-While processing a received frame,
-.Fn in_pcbgroup_byhash
-can be used in conjunction with either a hardware-provided hash
-value
-.Po
-eg the
-.Xr RSS 9
-calculated hash value provided by some NICs
-.Pc
-or a software-provided hash value in order to choose a PCBGROUP
-table to query.
-A single table lock is held while performing a wildcard match.
-However, all of the table locks are acquired before modifying the
-wildcard table.
-The PCBGROUP tables operate in conjunction with the normal single PCB list
-in a PCB info block.
-Thus, inserting and removing a PCB will still incur the same costs
-as without PCBGROUP.
-A protocol which uses PCBGROUP should fall back to the normal PCB list
-lookup if a call to the PCBGROUP layer does not yield a lookup hit.
-.Ss Usage
-Initialize a PCBGROUP in a PCB info block
-.Pq Vt "struct pcbinfo"
-by calling
-.Fn in_pcbgroup_init .
-.Pp
-Add a connection to a PCBGROUP with
-.Fn in_pcbgroup_update .
-Connections are removed by with
-.Fn in_pcbgroup_remove .
-These in turn will determine which PCBGROUP bucket the given PCB
-is placed into and calculate the hash value appropriately.
-.Pp
-Wildcard PCBs are hashed differently and placed in a single wildcard
-PCB list.
-If
-.Xr RSS 9
-is enabled and in use, RSS-aware wildcard PCBs are placed in a single
-PCBGROUP based on RSS information.
-Protocols may look up the PCB entry in a PCBGROUP by using the lookup
-functions
-.Fn in_pcbgroup_byhash
-and
-.Fn in_pcbgroup_byinpcb .
-.Sh IMPLEMENTATION NOTES
-The PCB code in
-.Pa sys/netinet
-and
-.Pa sys/netinet6
-is aware of PCBGROUP and will call into the PCBGROUP code to do
-PCBGROUP assignment and lookup, preferring a PCBGROUP lookup to the
-default global PCB info table.
-.Pp
-An implementor wishing to experiment or modify the PCBGROUP assignment
-should modify this set of functions:
-.Bl -tag -width "12345678" -offset indent
-.It Fn in_pcbgroup_getbucket No and Fn in6_pcbgroup_getbucket
-Map a given 32 bit hash value to a PCBGROUP.
-By default this is hash % number_of_pcbgroups.
-However, this distribution may not align with NIC receive queues or
-the
-.Xr netisr 9
-configuration.
-.It Fn in_pcbgroup_byhash No and Fn in6_pcbgroup_byhash
-Map a 32 bit hash value and a hash type identifier to a PCBGROUP.
-By default, this simply returns NULL.
-This function is used by the
-.Xr mbuf 9
-receive path in
-.Pa sys/netinet/in_pcb.c
-to map an mbuf to a PCBGROUP.
-.It Fn in_pcbgroup_bytuple No and Fn in6_pcbgroup_bytuple
-Map the source and destination address and port details to a PCBGROUP.
-By default, this does a very simple XOR hash.
-This function is used by both the PCB lookup code and as a fallback in
-the
-.Xr mbuf 9
-receive path in
-.Pa sys/netinet/in_pcb.c .
-.El
-.Sh SEE ALSO
-.Xr mbuf 9 ,
-.Xr netisr 9 ,
-.Xr RSS 9
-.Rs
-.%A Paul Willmann
-.%A Scott Rixner
-.%A Alan L. Cox
-.%T "An Evaluation of Network Stack Parallelization Strategies in Modern Operating Systems"
-.%J "2006 USENIX Annual Technical Conference"
-.%D 2006
-.%U http://www.ece.rice.edu/~willmann/pubs/paranet_usenix.pdf
-.Re
-.Sh HISTORY
-PCBGROUP first appeared in
-.Fx 9.0 .
-.Sh AUTHORS
-.An -nosplit
-The PCBGROUP implementation was written by
-.An Robert N. M. Watson Aq Mt rwatson@FreeBSD.org
-under contract to Juniper Networks, Inc.
-.Pp
-This manual page written by
-.An Adrian Chadd Aq Mt adrian@FreeBSD.org .
-.Sh NOTES
-The
-.Xr RSS 9
-implementation currently uses
-.Ic #ifdef
-blocks to tie into PCBGROUP.
-This is a sign that a more abstract programming API is needed.
-.Pp
-There is currently no support for re-balancing the PCBGROUP assignment,
-nor is there any support for overriding which PCBGROUP a socket/PCB
-should be in.
-.Pp
-No statistics are kept to indicate how often PCBGROUP lookups
-succeed or fail.
diff --git a/share/man/man9/PCI_IOV_ADD_VF.9 b/share/man/man9/PCI_IOV_ADD_VF.9
index 1294cd096245..d13cb6e1ddc9 100644
--- a/share/man/man9/PCI_IOV_ADD_VF.9
+++ b/share/man/man9/PCI_IOV_ADD_VF.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 28, 2015
.Dt PCI_IOV_ADD_VF 9
.Os
diff --git a/share/man/man9/PCI_IOV_INIT.9 b/share/man/man9/PCI_IOV_INIT.9
index 8b9a2c72f446..66b1e693cedb 100644
--- a/share/man/man9/PCI_IOV_INIT.9
+++ b/share/man/man9/PCI_IOV_INIT.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 28, 2015
.Dt PCI_IOV_INIT 9
.Os
@@ -42,7 +40,7 @@
The
.Fn PCI_IOV_INIT
method is called by the PCI Single-Root I/O Virtualization (SR-IOV)
-infrastucture when the user requests that SR-IOV be enabled on a Physical
+infrastructure when the user requests that SR-IOV be enabled on a Physical
Function (PF).
The number of Virtual Functions (VFs) that will be created is passed to this
method in the
diff --git a/share/man/man9/PCI_IOV_UNINIT.9 b/share/man/man9/PCI_IOV_UNINIT.9
index db643eeb59b7..800c2752008b 100644
--- a/share/man/man9/PCI_IOV_UNINIT.9
+++ b/share/man/man9/PCI_IOV_UNINIT.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 28, 2015
.Dt PCI_IOV_UNINIT 9
.Os
diff --git a/share/man/man9/PHOLD.9 b/share/man/man9/PHOLD.9
index 12e0f3e02f99..57c0f522645b 100644
--- a/share/man/man9/PHOLD.9
+++ b/share/man/man9/PHOLD.9
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 7, 2015
.Dt PHOLD 9
.Os
diff --git a/share/man/man9/SDT.9 b/share/man/man9/SDT.9
index 2da0773a7b7e..65d1c9dc6515 100644
--- a/share/man/man9/SDT.9
+++ b/share/man/man9/SDT.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 18, 2015
.Dt SDT 9
.Os
diff --git a/share/man/man9/SYSCALL_MODULE.9 b/share/man/man9/SYSCALL_MODULE.9
index aec57a89e9b3..a6d5349b4b0d 100644
--- a/share/man/man9/SYSCALL_MODULE.9
+++ b/share/man/man9/SYSCALL_MODULE.9
@@ -26,9 +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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 24, 2015
+.Dd June 15, 2023
.Dt SYSCALL_MODULE 9
.Os
.Sh NAME
@@ -78,10 +76,10 @@ event handler when it is called.
.El
.Pp
The syscall number assigned to the module can be retrieved using the
-.Xr modstat 3
+.Xr modstat 2
and
-.Xr modfind 3
-library functions in libc.
+.Xr modfind 2
+system calls.
The MACRO
.Fn SYSCALL_MODULE_HELPER
includes
diff --git a/share/man/man9/SYSINIT.9 b/share/man/man9/SYSINIT.9
index 28701f25f030..ae360a95c44f 100644
--- a/share/man/man9/SYSINIT.9
+++ b/share/man/man9/SYSINIT.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2010
.Dt SYSINIT 9
.Os
@@ -62,6 +60,7 @@ are defined in
struct sysinit {
enum sysinit_sub_id subsystem; /* subsystem identifier*/
enum sysinit_elem_order order; /* init order within subsystem*/
+ SLIST_ENTRY(sysinit) next; /* singly-linked list */
sysinit_cfunc_t func; /* function */
const void *udata; /* multiplexer/argument */
};
diff --git a/share/man/man9/VFS.9 b/share/man/man9/VFS.9
index 86852ce9caad..a269d8d070cf 100644
--- a/share/man/man9/VFS.9
+++ b/share/man/man9/VFS.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 9, 2010
.Dt VFS 9
.Os
diff --git a/share/man/man9/VFS_CHECKEXP.9 b/share/man/man9/VFS_CHECKEXP.9
index d186136d749c..e374555f01fb 100644
--- a/share/man/man9/VFS_CHECKEXP.9
+++ b/share/man/man9/VFS_CHECKEXP.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 17, 2020
.Dt VFS_CHECKEXP 9
.Os
diff --git a/share/man/man9/VFS_FHTOVP.9 b/share/man/man9/VFS_FHTOVP.9
index c2ac5d536aff..6eb9061b2a78 100644
--- a/share/man/man9/VFS_FHTOVP.9
+++ b/share/man/man9/VFS_FHTOVP.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 19, 2019
.Dt VFS_FHTOVP 9
.Os
diff --git a/share/man/man9/VFS_MOUNT.9 b/share/man/man9/VFS_MOUNT.9
index e46c71a5825a..40ba8c700b24 100644
--- a/share/man/man9/VFS_MOUNT.9
+++ b/share/man/man9/VFS_MOUNT.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 23, 2009
.Dt VFS_MOUNT 9
.Os
diff --git a/share/man/man9/VFS_QUOTACTL.9 b/share/man/man9/VFS_QUOTACTL.9
index 210f71631353..c29721e7d7f8 100644
--- a/share/man/man9/VFS_QUOTACTL.9
+++ b/share/man/man9/VFS_QUOTACTL.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 29, 2021
.Dt VFS_QUOTACTL 9
.Os
diff --git a/share/man/man9/VFS_ROOT.9 b/share/man/man9/VFS_ROOT.9
index f81a500b3ab2..5e1b49056d3a 100644
--- a/share/man/man9/VFS_ROOT.9
+++ b/share/man/man9/VFS_ROOT.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 23, 2009
.Dt VFS_ROOT 9
.Os
diff --git a/share/man/man9/VFS_SET.9 b/share/man/man9/VFS_SET.9
index f025727f3446..ded1a4902dcb 100644
--- a/share/man/man9/VFS_SET.9
+++ b/share/man/man9/VFS_SET.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 16, 2018
.Dt VFS_SET 9
.Os
diff --git a/share/man/man9/VFS_STATFS.9 b/share/man/man9/VFS_STATFS.9
index 7a7e37141120..b9cd6b795209 100644
--- a/share/man/man9/VFS_STATFS.9
+++ b/share/man/man9/VFS_STATFS.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 23, 2009
.Dt VFS_STATFS 9
.Os
diff --git a/share/man/man9/VFS_SYNC.9 b/share/man/man9/VFS_SYNC.9
index ed510dd7b664..97633e594e79 100644
--- a/share/man/man9/VFS_SYNC.9
+++ b/share/man/man9/VFS_SYNC.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 23, 2009
.Dt VFS_SYNC 9
.Os
diff --git a/share/man/man9/VFS_UNMOUNT.9 b/share/man/man9/VFS_UNMOUNT.9
index 59113ee174db..f9fb14c45a8c 100644
--- a/share/man/man9/VFS_UNMOUNT.9
+++ b/share/man/man9/VFS_UNMOUNT.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 23, 2009
.Dt VFS_UNMOUNT 9
.Os
diff --git a/share/man/man9/VFS_VGET.9 b/share/man/man9/VFS_VGET.9
index f762b8981acc..e3612d2c3924 100644
--- a/share/man/man9/VFS_VGET.9
+++ b/share/man/man9/VFS_VGET.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 7, 2005
.Dt VFS_VGET 9
.Os
diff --git a/share/man/man9/VOP_ACCESS.9 b/share/man/man9/VOP_ACCESS.9
index 005f2e20e578..facb0da7c4c1 100644
--- a/share/man/man9/VOP_ACCESS.9
+++ b/share/man/man9/VOP_ACCESS.9
@@ -27,8 +27,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 18, 2009
.Dt VOP_ACCESS 9
.Os
diff --git a/share/man/man9/VOP_ACLCHECK.9 b/share/man/man9/VOP_ACLCHECK.9
index 363811213374..d1a09c59bf1d 100644
--- a/share/man/man9/VOP_ACLCHECK.9
+++ b/share/man/man9/VOP_ACLCHECK.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 23, 1999
.Dt VOP_ACLCHECK 9
.Os
diff --git a/share/man/man9/VOP_ADVISE.9 b/share/man/man9/VOP_ADVISE.9
index 7cc29162f821..3decc0c2eac8 100644
--- a/share/man/man9/VOP_ADVISE.9
+++ b/share/man/man9/VOP_ADVISE.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 26, 2015
.Dt VOP_ADVISE 9
.Os
diff --git a/share/man/man9/VOP_ADVLOCK.9 b/share/man/man9/VOP_ADVLOCK.9
index fab1e30484d2..0be4686be62e 100644
--- a/share/man/man9/VOP_ADVLOCK.9
+++ b/share/man/man9/VOP_ADVLOCK.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 10, 2021
.Dt VOP_ADVLOCK 9
.Os
diff --git a/share/man/man9/VOP_ALLOCATE.9 b/share/man/man9/VOP_ALLOCATE.9
index 27ba348d5438..fce2ea183273 100644
--- a/share/man/man9/VOP_ALLOCATE.9
+++ b/share/man/man9/VOP_ALLOCATE.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 8, 2021
.Dt VOP_ALLOCATE 9
.Os
diff --git a/share/man/man9/VOP_ATTRIB.9 b/share/man/man9/VOP_ATTRIB.9
index ddfee1f5d1f9..a3bf2c0f8898 100644
--- a/share/man/man9/VOP_ATTRIB.9
+++ b/share/man/man9/VOP_ATTRIB.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 2, 2021
.Dt VOP_ATTRIB 9
.Os
diff --git a/share/man/man9/VOP_BMAP.9 b/share/man/man9/VOP_BMAP.9
index 02869838274b..82dda716fd70 100644
--- a/share/man/man9/VOP_BMAP.9
+++ b/share/man/man9/VOP_BMAP.9
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2019 The FreeBSD Foundation
.\"
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 19, 2019
.Dt VOP_BMAP 9
.Os
@@ -60,7 +58,7 @@ Return storage for the number of succeeding logical blocks that may be
efficiently read at the same time as the requested block.
This will usually be the number of logical blocks whose physical blocks are
contiguously allocated.
-However a file system is free to define "efficient" as it see fit.
+However a file system is free to define "efficient" as it sees fit.
.It Fa runb
Like
.Fa runp
diff --git a/share/man/man9/VOP_BWRITE.9 b/share/man/man9/VOP_BWRITE.9
index d2ee5105166a..fb811124356e 100644
--- a/share/man/man9/VOP_BWRITE.9
+++ b/share/man/man9/VOP_BWRITE.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 1996
.Dt VOP_BWRITE 9
.Os
diff --git a/share/man/man9/VOP_COPY_FILE_RANGE.9 b/share/man/man9/VOP_COPY_FILE_RANGE.9
index 5ef3b2609572..aa17670954f4 100644
--- a/share/man/man9/VOP_COPY_FILE_RANGE.9
+++ b/share/man/man9/VOP_COPY_FILE_RANGE.9
@@ -23,15 +23,13 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 30, 2020
.Dt VOP_COPY_FILE_RANGE 9
.Os
.Sh NAME
.Nm VOP_COPY_FILE_RANGE
-.Nd copy a byte range from one file to another or within one file
-in a single file system
+.Nd copy a byte range within a file or from one file to another in a single
+file system or between multiple file systems
.Sh SYNOPSIS
.In sys/param.h
.In sys/vnode.h
diff --git a/share/man/man9/VOP_CREATE.9 b/share/man/man9/VOP_CREATE.9
index 7553ef015ffa..326e0e9107b9 100644
--- a/share/man/man9/VOP_CREATE.9
+++ b/share/man/man9/VOP_CREATE.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 2, 2018
.Dt VOP_CREATE 9
.Os
diff --git a/share/man/man9/VOP_DEALLOCATE.9 b/share/man/man9/VOP_DEALLOCATE.9
index d20fe1590314..0db4d07ad2f0 100644
--- a/share/man/man9/VOP_DEALLOCATE.9
+++ b/share/man/man9/VOP_DEALLOCATE.9
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 The FreeBSD Foundation
.\"
diff --git a/share/man/man9/VOP_FSYNC.9 b/share/man/man9/VOP_FSYNC.9
index f5bc0e8364d0..e58119d9ed62 100644
--- a/share/man/man9/VOP_FSYNC.9
+++ b/share/man/man9/VOP_FSYNC.9
@@ -31,8 +31,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 22, 2019
.Dt VOP_FSYNC 9
.Os
diff --git a/share/man/man9/VOP_GETACL.9 b/share/man/man9/VOP_GETACL.9
index 6dbaca225ba7..94112f96891d 100644
--- a/share/man/man9/VOP_GETACL.9
+++ b/share/man/man9/VOP_GETACL.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 23, 1999
.Dt VOP_GETACL 9
.Os
diff --git a/share/man/man9/VOP_GETEXTATTR.9 b/share/man/man9/VOP_GETEXTATTR.9
index 998ed2c4651a..b06105f83a0a 100644
--- a/share/man/man9/VOP_GETEXTATTR.9
+++ b/share/man/man9/VOP_GETEXTATTR.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 23, 1999
.Dt VOP_GETEXTATTR 9
.Os
diff --git a/share/man/man9/VOP_GETPAGES.9 b/share/man/man9/VOP_GETPAGES.9
index d25fc9ab571a..bb344543c5e2 100644
--- a/share/man/man9/VOP_GETPAGES.9
+++ b/share/man/man9/VOP_GETPAGES.9
@@ -27,8 +27,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 29, 2019
.Dt VOP_GETPAGES 9
.Os
diff --git a/share/man/man9/VOP_INACTIVE.9 b/share/man/man9/VOP_INACTIVE.9
index 51397a123d43..a137d6fb8bc5 100644
--- a/share/man/man9/VOP_INACTIVE.9
+++ b/share/man/man9/VOP_INACTIVE.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 15, 2019
.Dt VOP_INACTIVE 9
.Os
diff --git a/share/man/man9/VOP_IOCTL.9 b/share/man/man9/VOP_IOCTL.9
index ba1208179fc3..5a58d842f82e 100644
--- a/share/man/man9/VOP_IOCTL.9
+++ b/share/man/man9/VOP_IOCTL.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 1996
.Dt VOP_IOCTL 9
.Os
diff --git a/share/man/man9/VOP_LINK.9 b/share/man/man9/VOP_LINK.9
index f5b7c68e7042..f553b331d5ac 100644
--- a/share/man/man9/VOP_LINK.9
+++ b/share/man/man9/VOP_LINK.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 1996
.Dt VOP_LINK 9
.Os
diff --git a/share/man/man9/VOP_LISTEXTATTR.9 b/share/man/man9/VOP_LISTEXTATTR.9
index 40fa880e80c0..b5cbe9486029 100644
--- a/share/man/man9/VOP_LISTEXTATTR.9
+++ b/share/man/man9/VOP_LISTEXTATTR.9
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 19, 2005
.Dt VOP_LISTEXTATTR 9
.Os
diff --git a/share/man/man9/VOP_LOCK.9 b/share/man/man9/VOP_LOCK.9
index db4608037ade..92bb79d44e6d 100644
--- a/share/man/man9/VOP_LOCK.9
+++ b/share/man/man9/VOP_LOCK.9
@@ -26,9 +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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd February 25, 2008
+.Dd August 23, 2022
.Dt VOP_LOCK 9
.Os
.Sh NAME
@@ -44,7 +42,7 @@
.Ft int
.Fn VOP_LOCK "struct vnode *vp" "int flags"
.Ft int
-.Fn VOP_UNLOCK "struct vnode *vp" "int flags"
+.Fn VOP_UNLOCK "struct vnode *vp"
.Ft int
.Fn VOP_ISLOCKED "struct vnode *vp"
.Ft int
diff --git a/share/man/man9/VOP_LOOKUP.9 b/share/man/man9/VOP_LOOKUP.9
index 7a8d7a5c328a..9569c3157beb 100644
--- a/share/man/man9/VOP_LOOKUP.9
+++ b/share/man/man9/VOP_LOOKUP.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 8, 2018
.Dt VOP_LOOKUP 9
.Os
diff --git a/share/man/man9/VOP_OPENCLOSE.9 b/share/man/man9/VOP_OPENCLOSE.9
index 5442e3277f46..9a4f7069962d 100644
--- a/share/man/man9/VOP_OPENCLOSE.9
+++ b/share/man/man9/VOP_OPENCLOSE.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 2, 2009
.Dt VOP_OPEN 9
.Os
diff --git a/share/man/man9/VOP_PATHCONF.9 b/share/man/man9/VOP_PATHCONF.9
index feab41a86813..299b4dc2c9c1 100644
--- a/share/man/man9/VOP_PATHCONF.9
+++ b/share/man/man9/VOP_PATHCONF.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 31, 2020
.Dt VOP_PATHCONF 9
.Os
diff --git a/share/man/man9/VOP_PRINT.9 b/share/man/man9/VOP_PRINT.9
index c8188fc0263f..3e91892bece5 100644
--- a/share/man/man9/VOP_PRINT.9
+++ b/share/man/man9/VOP_PRINT.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 1996
.Dt VOP_PRINT 9
.Os
diff --git a/share/man/man9/VOP_RDWR.9 b/share/man/man9/VOP_RDWR.9
index 2de7f9c9e7d2..2ff4b17431a4 100644
--- a/share/man/man9/VOP_RDWR.9
+++ b/share/man/man9/VOP_RDWR.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 1996
.Dt VOP_RDWR 9
.Os
diff --git a/share/man/man9/VOP_READDIR.9 b/share/man/man9/VOP_READDIR.9
index 70e3aa1a46bc..d2cf7c6c79cc 100644
--- a/share/man/man9/VOP_READDIR.9
+++ b/share/man/man9/VOP_READDIR.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 13, 2021
.Dt VOP_READDIR 9
.Os
diff --git a/share/man/man9/VOP_READLINK.9 b/share/man/man9/VOP_READLINK.9
index ac07afc84f21..ff9ce181ee89 100644
--- a/share/man/man9/VOP_READLINK.9
+++ b/share/man/man9/VOP_READLINK.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 30, 2020
.Dt VOP_READLINK 9
.Os
diff --git a/share/man/man9/VOP_READ_PGCACHE.9 b/share/man/man9/VOP_READ_PGCACHE.9
index 2efec4fa4013..f8f67eb00f13 100644
--- a/share/man/man9/VOP_READ_PGCACHE.9
+++ b/share/man/man9/VOP_READ_PGCACHE.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 28, 2021
.Dt VOP_READ_PGCACHE 9
.Os
diff --git a/share/man/man9/VOP_REALLOCBLKS.9 b/share/man/man9/VOP_REALLOCBLKS.9
index d38caf16d72e..b07b4ba61fd2 100644
--- a/share/man/man9/VOP_REALLOCBLKS.9
+++ b/share/man/man9/VOP_REALLOCBLKS.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 1996
.Dt VOP_REALLOCBLKS 9
.Os
diff --git a/share/man/man9/VOP_REMOVE.9 b/share/man/man9/VOP_REMOVE.9
index 38e3b060bc53..c4a702f8c147 100644
--- a/share/man/man9/VOP_REMOVE.9
+++ b/share/man/man9/VOP_REMOVE.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 1996
.Dt VOP_REMOVE 9
.Os
diff --git a/share/man/man9/VOP_RENAME.9 b/share/man/man9/VOP_RENAME.9
index 76bb0dc1a1c3..551178f52a35 100644
--- a/share/man/man9/VOP_RENAME.9
+++ b/share/man/man9/VOP_RENAME.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 1996
.Dt VOP_RENAME 9
.Os
diff --git a/share/man/man9/VOP_REVOKE.9 b/share/man/man9/VOP_REVOKE.9
index 610fdb7142aa..5444cbe25e8e 100644
--- a/share/man/man9/VOP_REVOKE.9
+++ b/share/man/man9/VOP_REVOKE.9
@@ -32,8 +32,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 20, 2019
.Dt VOP_REVOKE 9
.Os
diff --git a/share/man/man9/VOP_SETACL.9 b/share/man/man9/VOP_SETACL.9
index b587771270d1..ec3b25a14e9d 100644
--- a/share/man/man9/VOP_SETACL.9
+++ b/share/man/man9/VOP_SETACL.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 23, 1999
.Dt VOP_SETACL 9
.Os
diff --git a/share/man/man9/VOP_SETEXTATTR.9 b/share/man/man9/VOP_SETEXTATTR.9
index edae937b5af7..a0ca7a5a4fe1 100644
--- a/share/man/man9/VOP_SETEXTATTR.9
+++ b/share/man/man9/VOP_SETEXTATTR.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 23, 1999
.Dt VOP_SETEXTATTR 9
.Os
diff --git a/share/man/man9/VOP_SETLABEL.9 b/share/man/man9/VOP_SETLABEL.9
index 6cfa7c4b15bb..e5cf99bebd86 100644
--- a/share/man/man9/VOP_SETLABEL.9
+++ b/share/man/man9/VOP_SETLABEL.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 27, 2021
.Dt VOP_SETLABEL 9
.Os
diff --git a/share/man/man9/VOP_STRATEGY.9 b/share/man/man9/VOP_STRATEGY.9
index 6600b8e921d5..866ec61ac58c 100644
--- a/share/man/man9/VOP_STRATEGY.9
+++ b/share/man/man9/VOP_STRATEGY.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 30, 2022
.Dt VOP_STRATEGY 9
.Os
diff --git a/share/man/man9/VOP_VPTOCNP.9 b/share/man/man9/VOP_VPTOCNP.9
index 3e680ad12413..0c6517d11569 100644
--- a/share/man/man9/VOP_VPTOCNP.9
+++ b/share/man/man9/VOP_VPTOCNP.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 8, 2015
.Dt VOP_VPTOCNP 9
.Os
diff --git a/share/man/man9/VOP_VPTOFH.9 b/share/man/man9/VOP_VPTOFH.9
index 3619a7b065a3..2a2f301e58b3 100644
--- a/share/man/man9/VOP_VPTOFH.9
+++ b/share/man/man9/VOP_VPTOFH.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 16, 2007
.Dt VOP_VPTOFH 9
.Os
diff --git a/share/man/man9/accept_filter.9 b/share/man/man9/accept_filter.9
index fe863049f870..0b8acc904abc 100644
--- a/share/man/man9/accept_filter.9
+++ b/share/man/man9/accept_filter.9
@@ -22,8 +22,6 @@
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.\" "
.Dd June 25, 2000
.Dt ACCEPT_FILTER 9
diff --git a/share/man/man9/accf_data.9 b/share/man/man9/accf_data.9
index 9caeba9b0029..17584288b753 100644
--- a/share/man/man9/accf_data.9
+++ b/share/man/man9/accf_data.9
@@ -22,8 +22,6 @@
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.\" "
.Dd November 15, 2000
.Dt ACCF_DATA 9
diff --git a/share/man/man9/accf_dns.9 b/share/man/man9/accf_dns.9
index 0ea4bf46b19d..971dd964e530 100644
--- a/share/man/man9/accf_dns.9
+++ b/share/man/man9/accf_dns.9
@@ -22,8 +22,6 @@
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.\" "
.Dd July 16, 2008
.Dt ACCF_DNS 9
diff --git a/share/man/man9/accf_http.9 b/share/man/man9/accf_http.9
index 2a340605ecf5..f48894807312 100644
--- a/share/man/man9/accf_http.9
+++ b/share/man/man9/accf_http.9
@@ -22,8 +22,6 @@
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.\" "
.Dd November 15, 2000
.Dt ACCF_HTTP 9
diff --git a/share/man/man9/accf_tls.9 b/share/man/man9/accf_tls.9
new file mode 100644
index 000000000000..331ea2aa4fb8
--- /dev/null
+++ b/share/man/man9/accf_tls.9
@@ -0,0 +1,95 @@
+.\"
+.\" Copyright (c) 2024 Gleb Smirnoff <glebius@FreeBSD.org>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
+.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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 April 24, 2024
+.Dt ACCF_TLS 9
+.Os
+.Sh NAME
+.Nm accf_tls
+.Nd "buffer incoming connections until a TLS handshake like requests arrive"
+.Sh SYNOPSIS
+.Nm options INET
+.Nm options ACCEPT_FILTER_TLS
+.Nm kldload accf_tls
+.Sh DESCRIPTION
+This is a filter to be placed on a socket that will be using
+.Fn accept 2
+to receive incoming HTTPS connections.
+It prevents the application from receiving the connected descriptor via
+.Fn accept 2
+until a full TLS handshake has been buffered by the kernel.
+The
+.Nm
+will first check that byte at offset 0 is
+.Va 0x16 ,
+which matches handshake type.
+Then it will read 2-byte request length value at offset 3 and will
+continue reading until reading the entire length of the handshake is buffered.
+If something other than
+.Va 0x16
+is at offset 0, the kernel will allow the application to receive the
+connection descriptor via
+.Fn accept 2 .
+.Pp
+The utility of
+.Nm
+is such that a server will not have to context switch several times
+before performing the initial parsing of the request.
+This effectively reduces the amount of required CPU utilization
+to handle incoming requests by keeping active
+processes in preforking servers such as Apache low
+and reducing the size of the file descriptor set that needs
+to be managed by interfaces such as
+.Fn select ,
+.Fn poll
+or
+.Fn kevent
+based servers.
+.Sh EXAMPLES
+Assuming ACCEPT_FILTER_TLS has been included in the kernel config
+file or the
+.Nm
+module
+has been loaded, this will enable the TLS accept filter
+on the socket
+.Fa sok .
+.Bd -literal -offset 0i
+ struct accept_filter_arg afa;
+
+ bzero(&afa, sizeof(afa));
+ strcpy(afa.af_name, "tlsready");
+ setsockopt(sok, SOL_SOCKET, SO_ACCEPTFILTER, &afa, sizeof(afa));
+.Ed
+.Sh SEE ALSO
+.Xr setsockopt 2 ,
+.Xr accept_filter 9
+.Sh HISTORY
+The
+.Nm
+accept filter was introduced in
+.Fx 15.0 .
+.Sh AUTHORS
+The
+.Nm
+filter was written by
+.An Maksim Yevmenkin .
diff --git a/share/man/man9/acl.9 b/share/man/man9/acl.9
index d42ceff76a1c..57daa04cb5ae 100644
--- a/share/man/man9/acl.9
+++ b/share/man/man9/acl.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 4, 2015
.Dt ACL 9
.Os
diff --git a/share/man/man9/alq.9 b/share/man/man9/alq.9
index 7d6210007dd3..5dcbb2b8475e 100644
--- a/share/man/man9/alq.9
+++ b/share/man/man9/alq.9
@@ -29,8 +29,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2010
.Dt ALQ 9
.Os
diff --git a/share/man/man9/altq.9 b/share/man/man9/altq.9
index b88683ea584a..d4698377a9d0 100644
--- a/share/man/man9/altq.9
+++ b/share/man/man9/altq.9
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 20, 2018
.Dt ALTQ 9
.Os
diff --git a/share/man/man9/atomic.9 b/share/man/man9/atomic.9
index 784a776546de..98d392dd6032 100644
--- a/share/man/man9/atomic.9
+++ b/share/man/man9/atomic.9
@@ -20,9 +20,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd March 6, 2021
+.Dd January 16, 2023
.Dt ATOMIC 9
.Os
.Sh NAME
@@ -40,7 +38,6 @@
.Nm atomic_thread_fence
.Nd atomic operations
.Sh SYNOPSIS
-.In sys/types.h
.In machine/atomic.h
.Ft void
.Fn atomic_add_[acq_|rel_]<type> "volatile <type> *p" "<type> v"
diff --git a/share/man/man9/backlight.9 b/share/man/man9/backlight.9
index 3c6bca732205..926a723b3859 100644
--- a/share/man/man9/backlight.9
+++ b/share/man/man9/backlight.9
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 2, 2020
.Dt BACKLIGHT 9
.Os
diff --git a/share/man/man9/bhnd.9 b/share/man/man9/bhnd.9
index 5cf37597304b..722ae6b6a393 100644
--- a/share/man/man9/bhnd.9
+++ b/share/man/man9/bhnd.9
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 26, 2018
.Dt BHND 9
.Os
diff --git a/share/man/man9/bhnd_erom.9 b/share/man/man9/bhnd_erom.9
index 8afda55d4bf8..1e8101f011cf 100644
--- a/share/man/man9/bhnd_erom.9
+++ b/share/man/man9/bhnd_erom.9
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 9, 2017
.Dt BHND_EROM 9
.Os
@@ -206,7 +204,7 @@ hardware core must be provided using the
.Fa eio
argument.
The registers can be mapped using
-.Xr bhnd_erom_io_map 9 .
+.Fn bhnd_erom_io_map .
.Pp
On devices that do not provide standard
.Xr bhnd_chipc 4
diff --git a/share/man/man9/bios.9 b/share/man/man9/bios.9
index e6774dfbc0a6..4bea48a18626 100644
--- a/share/man/man9/bios.9
+++ b/share/man/man9/bios.9
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.\"
.\" Copyright (c) 1997 Michael Smith
.\" All rights reserved.
diff --git a/share/man/man9/bitset.9 b/share/man/man9/bitset.9
index d177bea51762..1bdfdeb7484c 100644
--- a/share/man/man9/bitset.9
+++ b/share/man/man9/bitset.9
@@ -22,8 +22,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 20, 2021
.Dt BITSET 9
.Os
diff --git a/share/man/man9/bpf.9 b/share/man/man9/bpf.9
index cddff70daf9b..b11013fe4bed 100644
--- a/share/man/man9/bpf.9
+++ b/share/man/man9/bpf.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 11, 2012
.Dt BPF 9
.Os
diff --git a/share/man/man9/buf.9 b/share/man/man9/buf.9
index 43f56971541f..ecd4a1487735 100644
--- a/share/man/man9/buf.9
+++ b/share/man/man9/buf.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 22, 1998
.Dt BUF 9
.Os
@@ -134,8 +132,6 @@ instantiated VM Buffers (struct buf's) prevent their underlying pages in the
buffer cache from being freed.
This can complicate the life of the paging
system.
-.\" .Sh SEE ALSO
-.\" .Xr <fillmein> 9
.Sh HISTORY
The
.Nm
diff --git a/share/man/man9/buf_ring.9 b/share/man/man9/buf_ring.9
index b45e94e41584..ae3b8505ce8c 100644
--- a/share/man/man9/buf_ring.9
+++ b/share/man/man9/buf_ring.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 27, 2012
.Dt BUF_RING 9
.Os
diff --git a/share/man/man9/bus_activate_resource.9 b/share/man/man9/bus_activate_resource.9
index 95e0aba5a74d..7b87197b8d11 100644
--- a/share/man/man9/bus_activate_resource.9
+++ b/share/man/man9/bus_activate_resource.9
@@ -22,9 +22,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 20, 2016
+.Dd March 13, 2024
.Dt BUS_ACTIVATE_RESOURCE 9
.Os
.Sh NAME
@@ -39,11 +37,11 @@
.In machine/resource.h
.Ft int
.Fo bus_activate_resource
-.Fa "device_t dev" "int type" "int rid" "struct resource *r"
+.Fa "device_t dev" "struct resource *r"
.Fc
.Ft int
.Fo bus_deactivate_resource
-.Fa "device_t dev" "int type" "int rid" "struct resource *r"
+.Fa "device_t dev" "struct resource *r"
.Fc
.Sh DESCRIPTION
These functions activate or deactivate a previously allocated resource.
@@ -60,24 +58,6 @@ The arguments are as follows:
.It Fa dev
The device that requests ownership of the resource.
Before allocation, the resource is owned by the parent bus.
-.It Fa type
-The type of resource you want to allocate.
-It is one of:
-.Pp
-.Bl -tag -width ".Dv SYS_RES_MEMORY" -compact
-.It Dv PCI_RES_BUS
-for PCI bus numbers
-.It Dv SYS_RES_IRQ
-for IRQs
-.It Dv SYS_RES_DRQ
-for ISA DMA lines
-.It Dv SYS_RES_IOPORT
-for I/O ports
-.It Dv SYS_RES_MEMORY
-for I/O memory
-.El
-.It Fa rid
-A pointer to a bus specific handle that identifies the resource being allocated.
.It Fa r
A pointer to the
.Vt "struct resource"
diff --git a/share/man/man9/bus_adjust_resource.9 b/share/man/man9/bus_adjust_resource.9
index bf88a70e920a..27173894e0ec 100644
--- a/share/man/man9/bus_adjust_resource.9
+++ b/share/man/man9/bus_adjust_resource.9
@@ -25,9 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 23, 2016
+.Dd March 13, 2024
.Dt BUS_ADJUST_RESOURCE 9
.Os
.Sh NAME
@@ -42,7 +40,7 @@
.In machine/resource.h
.Ft int
.Fo bus_adjust_resource
-.Fa "device_t dev" "int type" "struct resource *r"
+.Fa "device_t dev" "struct resource *r"
.Fa "rman_res_t start" "rman_res_t end"
.Fc
.Sh DESCRIPTION
@@ -54,13 +52,6 @@ should have been allocated by a previous call to
.Xr bus_alloc_resource 9 .
The new resource range must overlap the existing range of
.Fa r .
-The
-.Fa type
-argument should match the
-.Fa type
-argument passed to
-.Xr bus_alloc_resource 9
-when the resource was initially allocated.
.Pp
Note that none of the constraints of the original allocation request such
as alignment or boundary restrictions are checked by
@@ -76,8 +67,8 @@ Grow an existing memory resource by 4096 bytes.
struct resource *res;
int error;
- error = bus_adjust_resource(dev, SYS_RES_MEMORY, res,
- rman_get_start(res), rman_get_end(res) + 0x1000);
+ error = bus_adjust_resource(dev, res, rman_get_start(res),
+ rman_get_end(res) + 0x1000);
.Ed
.Sh ERRORS
.Fn bus_adjust_resource
diff --git a/share/man/man9/bus_alloc_resource.9 b/share/man/man9/bus_alloc_resource.9
index 9c3c6e1cc94a..84a4c9c530c9 100644
--- a/share/man/man9/bus_alloc_resource.9
+++ b/share/man/man9/bus_alloc_resource.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 20, 2016
.Dt BUS_ALLOC_RESOURCE 9
.Os
diff --git a/share/man/man9/bus_child_present.9 b/share/man/man9/bus_child_present.9
index 1862edc58daf..1d5c78f4d591 100644
--- a/share/man/man9/bus_child_present.9
+++ b/share/man/man9/bus_child_present.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 27, 2003
.Dt BUS_CHILD_PRESENT 9
.Os
diff --git a/share/man/man9/bus_delayed_attach_children.9 b/share/man/man9/bus_delayed_attach_children.9
index 0ba923d54b49..40a7357831a5 100644
--- a/share/man/man9/bus_delayed_attach_children.9
+++ b/share/man/man9/bus_delayed_attach_children.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 13, 2019
.Dt BUS_DELAYED_ATTACH_CHILDREN 9
.Os
diff --git a/share/man/man9/bus_dma.9 b/share/man/man9/bus_dma.9
index 4fc3a70eca17..b644eeb2a476 100644
--- a/share/man/man9/bus_dma.9
+++ b/share/man/man9/bus_dma.9
@@ -49,8 +49,6 @@
.\" CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.\" $NetBSD: bus_dma.9,v 1.25 2002/10/14 13:43:16 wiz Exp $
.\"
.Dd May 25, 2020
@@ -375,7 +373,7 @@ inclusive.
The filter function should return zero if any mapping in this range
can be accommodated by the device and non-zero otherwise.
.Pp
-.Em Note: The use of filters is deprecated. Proper operation is not guaranteed.
+.Em Note: The use of filters is no longer supported and will result in an error.
.It Vt bus_dma_segment_t
A machine-dependent type that describes individual
DMA segments.
@@ -613,26 +611,10 @@ This area of
is used to bounce requests that would otherwise conflict with
the exclusion window.
.It Fa filtfunc
-Optional filter function (may be
-.Dv NULL )
-to be called for any attempt to
-map memory into the window described by
-.Fa lowaddr
-and
-.Fa highaddr .
-A filter function is only required when the single window described
-by
-.Fa lowaddr
-and
-.Fa highaddr
-cannot adequately describe the constraints of the device.
-The filter function will be called for every machine page
-that overlaps the exclusion window.
-.Pp
-.Em Note: The use of filters is deprecated. Proper operation is not guaranteed.
+Formerly the optional filter function; must be
+.Dv NULL .
.It Fa filtfuncarg
-Argument passed to all calls to the filter function for this tag.
-May be
+Must be
.Dv NULL .
.It Fa maxsize
Maximum size, in bytes, of the sum of all segment lengths in a given
@@ -691,6 +673,14 @@ Returns
.Er ENOMEM
if sufficient memory is not available for tag creation
or allocating mapping resources.
+Returns
+.Er EINVAL
+if either
+.Fa filtfunc
+or
+.Fa filtarg
+arguments are not
+.Dv NULL .
.It Fn bus_dma_tag_destroy "dmat"
Deallocate the DMA tag
.Fa dmat
diff --git a/share/man/man9/bus_generic_attach.9 b/share/man/man9/bus_generic_attach.9
index 468237767541..67d125c2943c 100644
--- a/share/man/man9/bus_generic_attach.9
+++ b/share/man/man9/bus_generic_attach.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt BUS_GENERIC_ATTACH 9
.Os
diff --git a/share/man/man9/bus_generic_detach.9 b/share/man/man9/bus_generic_detach.9
index bba49a1ee75e..590cd26486e4 100644
--- a/share/man/man9/bus_generic_detach.9
+++ b/share/man/man9/bus_generic_detach.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt BUS_GENERIC_DETACH 9
.Os
diff --git a/share/man/man9/bus_generic_new_pass.9 b/share/man/man9/bus_generic_new_pass.9
index 5718c57afe17..709f91c32da4 100644
--- a/share/man/man9/bus_generic_new_pass.9
+++ b/share/man/man9/bus_generic_new_pass.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt BUS_GENERIC_NEW_PASS 9
.Os
diff --git a/share/man/man9/bus_generic_print_child.9 b/share/man/man9/bus_generic_print_child.9
index 5864e3a67957..8c3bd4b0fc71 100644
--- a/share/man/man9/bus_generic_print_child.9
+++ b/share/man/man9/bus_generic_print_child.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt BUS_GENERIC_PRINT_CHILD 9
.Os
diff --git a/share/man/man9/bus_generic_read_ivar.9 b/share/man/man9/bus_generic_read_ivar.9
index 6090f40ad170..3783de897775 100644
--- a/share/man/man9/bus_generic_read_ivar.9
+++ b/share/man/man9/bus_generic_read_ivar.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt BUS_GENERIC_READ_IVAR 9
.Os
diff --git a/share/man/man9/bus_generic_shutdown.9 b/share/man/man9/bus_generic_shutdown.9
index a9b2a8f86a72..264a2127d6bb 100644
--- a/share/man/man9/bus_generic_shutdown.9
+++ b/share/man/man9/bus_generic_shutdown.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt BUS_GENERIC_SHUTDOWN 9
.Os
diff --git a/share/man/man9/bus_get_resource.9 b/share/man/man9/bus_get_resource.9
index 33fc2e24ca74..f93a877daf55 100644
--- a/share/man/man9/bus_get_resource.9
+++ b/share/man/man9/bus_get_resource.9
@@ -30,7 +30,6 @@
.\" SUCH DAMAGE.
.\"
.\" $DragonFly: src/share/man/man9/bus_get_resource.9,v 1.1 2008/11/09 09:48:41 swildner Exp $
-.\" $FreeBSD$
.\"
.Dd September 26, 2015
.Dt BUS_GET_RESOURCE 9
diff --git a/share/man/man9/bus_map_resource.9 b/share/man/man9/bus_map_resource.9
index 07b6591fd532..5cccb815b73b 100644
--- a/share/man/man9/bus_map_resource.9
+++ b/share/man/man9/bus_map_resource.9
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd February 5, 2018
+.Dd March 13, 2024
.Dt BUS_MAP_RESOURCE 9
.Os
.Sh NAME
@@ -40,12 +38,12 @@
.In machine/resource.h
.Ft int
.Fo bus_map_resource
-.Fa "device_t dev" "int type" "struct resource *r"
+.Fa "device_t dev" "struct resource *r"
.Fa "struct resource_map_request *args" "struct resource_map *map"
.Fc
.Ft int
.Fo bus_unmap_resource
-.Fa "device_t dev" "int type" "struct resource *r" "struct resource_map *map"
+.Fa "device_t dev" "struct resource *r" "struct resource_map *map"
.Fc
.Ft void
.Fn resource_init_map_request "struct resource_map_request *args"
@@ -60,16 +58,6 @@ The arguments are as follows:
.Bl -tag -width indent
.It Fa dev
The device that owns the resource.
-.It Fa type
-The type of resource to map.
-It is one of:
-.Pp
-.Bl -tag -width ".Dv SYS_RES_MEMORY" -compact
-.It Dv SYS_RES_IOPORT
-for I/O ports
-.It Dv SYS_RES_MEMORY
-for I/O memory
-.El
.It Fa r
A pointer to the
.Vt "struct resource"
diff --git a/share/man/man9/bus_release_resource.9 b/share/man/man9/bus_release_resource.9
index 731eda3b975a..5203295a7488 100644
--- a/share/man/man9/bus_release_resource.9
+++ b/share/man/man9/bus_release_resource.9
@@ -26,9 +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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 18, 2000
+.Dd March 13, 2024
.Dt BUS_RELEASE_RESOURCE 9
.Os
.Sh NAME
@@ -42,7 +40,7 @@
.In sys/rman.h
.In machine/resource.h
.Ft int
-.Fn bus_release_resource "device_t dev" "int type" "int rid" "struct resource *r"
+.Fn bus_release_resource "device_t dev" "struct resource *r"
.Sh DESCRIPTION
Free a resource allocated by
.Xr bus_alloc_resource 9 .
@@ -55,20 +53,6 @@ for IRQs).
.Fa dev
is the device that owns the resource.
.It
-.Fa type
-is the type of resource that is released.
-It must be of the same type you allocated it as before.
-See
-.Xr bus_alloc_resource 9
-for valid types.
-.It
-.Fa rid
-is the resource ID of the resource.
-The
-.Fa rid
-value must be the same as the one returned by
-.Xr bus_alloc_resource 9 .
-.It
.Fa r
is the pointer to
.Va struct resource ,
@@ -90,12 +74,10 @@ The kernel will panic, if it cannot release the resource.
bus_teardown_intr(dev, foosoftc->irqres, foosoftc->irqid);
/* release IRQ resource */
- bus_release_resource(dev, SYS_RES_IRQ, foosoftc->irqid,
- foosoftc->irqres);
+ bus_release_resource(dev, foosoftc->irqres);
/* release I/O port resource */
- bus_release_resource(dev, SYS_RES_IOPORT, foosoftc->portid,
- foosoftc->portres);
+ bus_release_resource(dev, foosoftc->portres);
.Ed
.Sh SEE ALSO
.Xr bus_alloc_resource 9 ,
diff --git a/share/man/man9/bus_set_pass.9 b/share/man/man9/bus_set_pass.9
index f59d03b04bcb..6c34cc316bc1 100644
--- a/share/man/man9/bus_set_pass.9
+++ b/share/man/man9/bus_set_pass.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 8, 2009
.Dt BUS_SET_PASS 9
.Os
diff --git a/share/man/man9/bus_set_resource.9 b/share/man/man9/bus_set_resource.9
index 9882deb734a5..06f1da9f842a 100644
--- a/share/man/man9/bus_set_resource.9
+++ b/share/man/man9/bus_set_resource.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 29, 2003
.Dt BUS_SET_RESOURCE 9
.Os
diff --git a/share/man/man9/bus_space.9 b/share/man/man9/bus_space.9
index 9d5ca602acfe..12ab5d8dcddf 100644
--- a/share/man/man9/bus_space.9
+++ b/share/man/man9/bus_space.9
@@ -50,8 +50,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 1, 2021
.Dt BUS_SPACE 9
.Os
diff --git a/share/man/man9/byteorder.9 b/share/man/man9/byteorder.9
index e5737f6afe79..42f33620ef1e 100644
--- a/share/man/man9/byteorder.9
+++ b/share/man/man9/byteorder.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 29, 2002
.Dt BYTEORDER 9
.Os
diff --git a/share/man/man9/callout.9 b/share/man/man9/callout.9
index 5c011a20d338..0e59ef8ab2b1 100644
--- a/share/man/man9/callout.9
+++ b/share/man/man9/callout.9
@@ -27,15 +27,12 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd September 1, 2021
+.Dd January 22, 2024
.Dt CALLOUT 9
.Os
.Sh NAME
.Nm callout_active ,
.Nm callout_deactivate ,
-.Nm callout_async_drain ,
.Nm callout_drain ,
.Nm callout_init ,
.Nm callout_init_mtx ,
@@ -68,8 +65,6 @@ typedef void callout_func_t (void *);
.Ft void
.Fn callout_deactivate "struct callout *c"
.Ft int
-.Fn callout_async_drain "struct callout *c" "callout_func_t *drain"
-.Ft int
.Fn callout_drain "struct callout *c"
.Ft void
.Fn callout_init "struct callout *c" "int mpsafe"
@@ -295,30 +290,6 @@ If the callout has an associated lock,
then that lock must be held when this function is called.
.Pp
The function
-.Fn callout_async_drain
-is identical to
-.Fn callout_stop
-with one difference.
-When
-.Fn callout_async_drain
-returns zero it will arrange for the function
-.Fa drain
-to be called using the same argument given to the
-.Fn callout_reset
-function.
-.Fn callout_async_drain
-If the callout has an associated lock,
-then that lock must be held when this function is called.
-Note that when stopping multiple callouts that use the same lock it is possible
-to get multiple return's of zero and multiple calls to the
-.Fa drain
-function, depending upon which CPU's the callouts are running.
-The
-.Fa drain
-function itself is called from the context of the completing callout
-i.e. softclock or hardclock, just like a callout itself.
-.Pp
-The function
.Fn callout_drain
is identical to
.Fn callout_stop
diff --git a/share/man/man9/casuword.9 b/share/man/man9/casuword.9
index fdafd5a39799..2623bea97a92 100644
--- a/share/man/man9/casuword.9
+++ b/share/man/man9/casuword.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 19, 2019
.Dt CASU 9
.Os
diff --git a/share/man/man9/cd.9 b/share/man/man9/cd.9
index 44c6b7df4a01..74151f8a282f 100644
--- a/share/man/man9/cd.9
+++ b/share/man/man9/cd.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 25, 2014
.Dt CD 9
.Os
diff --git a/share/man/man9/cnv.9 b/share/man/man9/cnv.9
index eaae3f7156ab..de37c8271eb9 100644
--- a/share/man/man9/cnv.9
+++ b/share/man/man9/cnv.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 18, 2018
.Dt CNV 9
.Os
diff --git a/share/man/man9/condvar.9 b/share/man/man9/condvar.9
index 4a4e8741eda0..afadd7333e52 100644
--- a/share/man/man9/condvar.9
+++ b/share/man/man9/condvar.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 19, 2013
.Dt CONDVAR 9
.Os
@@ -251,11 +249,11 @@ will fail if:
Timeout expired.
.El
.Sh SEE ALSO
+.Xr callout 9 ,
.Xr locking 9 ,
.Xr mtx_pool 9 ,
.Xr mutex 9 ,
.Xr rwlock 9 ,
.Xr sema 9 ,
.Xr sleep 9 ,
-.Xr sx 9 ,
-.Xr timeout 9
+.Xr sx 9
diff --git a/share/man/man9/config_intrhook.9 b/share/man/man9/config_intrhook.9
index 6892a089b00f..4ab491304b00 100644
--- a/share/man/man9/config_intrhook.9
+++ b/share/man/man9/config_intrhook.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 8, 2021
.Dt CONFIG_INTRHOOK 9
.Os
diff --git a/share/man/man9/contigmalloc.9 b/share/man/man9/contigmalloc.9
index 5d6a531ecf98..f52cb7bde0ed 100644
--- a/share/man/man9/contigmalloc.9
+++ b/share/man/man9/contigmalloc.9
@@ -23,8 +23,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 30, 2018
.Dt CONTIGMALLOC 9
.Os
diff --git a/share/man/man9/copy.9 b/share/man/man9/copy.9
index 38dcb40b0b63..8b2d0dc67727 100644
--- a/share/man/man9/copy.9
+++ b/share/man/man9/copy.9
@@ -32,8 +32,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 11, 2020
.Dt COPY 9
.Os
diff --git a/share/man/man9/counter.9 b/share/man/man9/counter.9
index 04376ba9c994..1d3f3281ac0b 100644
--- a/share/man/man9/counter.9
+++ b/share/man/man9/counter.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 11, 2021
.Dt COUNTER 9
.Os
diff --git a/share/man/man9/cpuset.9 b/share/man/man9/cpuset.9
index 29dbc8fc733b..974dc55b2c65 100644
--- a/share/man/man9/cpuset.9
+++ b/share/man/man9/cpuset.9
@@ -22,9 +22,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 12, 2019
+.Dd September 23, 2022
.Dt CPUSET 9
.Os
.Sh NAME
@@ -110,9 +108,9 @@ Each CPU is represented by a single bit.
The maximum number of CPUs representable by
.Vt cpuset_t
is
-.Va MAXCPU .
+.Va CPU_SETSIZE .
Individual CPUs in cpusets are referenced with indices zero through
-.Fa MAXCPU - 1 .
+.Fa CPU_SETSIZE - 1 .
.Pp
The
.Fn CPUSET_T_INITIALIZER
diff --git a/share/man/man9/cr_bsd_visible.9 b/share/man/man9/cr_bsd_visible.9
new file mode 100644
index 000000000000..f2d42f3835dc
--- /dev/null
+++ b/share/man/man9/cr_bsd_visible.9
@@ -0,0 +1,117 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2023 Olivier Certner <olce.freebsd@certner.fr>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
+.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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 August 18, 2023
+.Dt CR_BSD_VISIBLE 9
+.Os
+.Sh NAME
+.Nm cr_bsd_visible
+.Nd determine if subjects may see entities according to BSD security policies
+.Sh SYNOPSIS
+.In sys/proc.h
+.Ft int
+.Fn cr_bsd_visible "struct ucred *u1" "struct ucred *u2"
+.Sh DESCRIPTION
+This function determines if a subject with credentials
+.Fa u1
+is denied seeing an object or subject associated to credentials
+.Fa u2
+by the following policies and associated
+.Xr sysctl 8
+knobs:
+.Bl -tag -width indent
+.It Va security.bsd.seeotheruids
+If set to 0, subjects cannot see other subjects or objects if they are not
+associated with the same real user ID.
+The corresponding internal function is
+.Xr cr_canseeotheruids 9 .
+.It Va security.bsd.seeothergids
+If set to 0, subjects cannot see other subjects or objects if they are not both
+a member of at least one common group.
+The corresponding internal function is
+.Xr cr_canseeothergids 9 .
+.It Va security.bsd.see_jail_proc
+If set to 0, subjects cannot see other subjects or objects that are not
+associated with the same jail as they are.
+The corresponding internal function is
+.Xr cr_canseejailproc 9 .
+.El
+.Pp
+As usual, the superuser (effective user ID 0) is exempt from any of these
+policies provided that the
+.Xr sysctl 8
+variable
+.Va security.bsd.suser_enabled
+is non-zero and no active MAC policy explicitly denies the exemption
+.Po
+see
+.Xr priv_check_cred 9
+.Pc .
+.Pp
+This function is intended to be used as a helper to implement
+.Xr cr_cansee 9
+and similar functions.
+.Sh RETURN VALUES
+This function returns zero if a subject with credentials
+.Fa u1
+may see a subject or object with credentials
+.Fa u2
+by the active above-mentioned policies, or
+.Er ESRCH
+otherwise.
+.Sh ERRORS
+.Bl -tag -width Er
+.It Bq Er ESRCH
+Credentials
+.Fa u1
+and
+.Fa u2
+do not have the same real user ID.
+.It Bq Er ESRCH
+Credentials
+.Fa u1
+and
+.Fa u2
+are not members of any common group
+.Po
+as determined by
+.Xr realgroupmember 9
+.Pc .
+.It Bq Er ESRCH
+Credentials
+.Fa u1
+and
+.Fa u2
+are not in the same jail.
+.El
+.Sh SEE ALSO
+.Xr cr_canseeotheruids 9 ,
+.Xr cr_canseeothergids 9 ,
+.Xr cr_canseejailproc 9 ,
+.Xr priv_check_cred 9 ,
+.Xr cr_cansee 9
+.Sh AUTHORS
+This function and its manual page were written by
+.An Olivier Certner Aq Mt olce.freebsd@certner.fr .
diff --git a/share/man/man9/cr_cansee.9 b/share/man/man9/cr_cansee.9
index c4cc2d4a861e..d5cdfdd6f8e5 100644
--- a/share/man/man9/cr_cansee.9
+++ b/share/man/man9/cr_cansee.9
@@ -1,5 +1,6 @@
.\"
.\" Copyright (c) 2006 Ceri Davies <ceri@FreeBSD.org>
+.\" Copyright (c) 2023 Olivier Certner <olce.freebsd@certner.fr>
.\"
.\" All rights reserved.
.\"
@@ -23,45 +24,39 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 19, 2006
+.Dd August 18, 2023
.Dt CR_CANSEE 9
.Os
.Sh NAME
.Nm cr_cansee
.Nd "determine visibility of objects given their user credentials"
.Sh SYNOPSIS
-.In sys/param.h
-.In sys/systm.h
-.In sys/ucred.h
+.In sys/proc.h
.Ft int
.Fn cr_cansee "struct ucred *u1" "struct ucred *u2"
.Sh DESCRIPTION
-This function determines the visibility of objects in the
-kernel based on the real user IDs and group IDs in the credentials
+This function determines if a subject with credential
.Fa u1
-and
-.Fa u2
-associated with them.
+can see a subject or object associated to credential
+.Fa u2 .
.Pp
-The visibility of objects is influenced by the
+Specific types of subjects may need to submit to additional or different
+restrictions.
+As an example, for processes, see
+.Xr p_cansee 9 ,
+which calls this function.
+.Pp
+The implementation relies on
+.Xr cr_bsd_visible 9
+and consequently the
.Xr sysctl 8
-variables
-.Va security.bsd.see_other_gids
-and
-.Va security.bsd.see_other_uids ,
-as per the description in
-.Xr cr_seeothergids 9
-and
-.Xr cr_seeotheruids 9
-respectively.
+variables referenced in its manual page influence the result.
.Sh RETURN VALUES
-This function returns zero if the object with credential
+This function returns zero if the subject with credential
.Fa u1
can
.Dq see
-the object with credential
+the subject or object with credential
.Fa u2 ,
or
.Er ESRCH
@@ -69,24 +64,20 @@ otherwise.
.Sh ERRORS
.Bl -tag -width Er
.It Bq Er ESRCH
-The object with credential
+The subject with credential
.Fa u1
-cannot
-.Dq see
-the object with credential
-.Fa u2 .
-.It Bq Er ESRCH
-The object with credential
-.Fa u1
-has been jailed and the object with credential
+has been jailed and the subject or object with credential
.Fa u2
-does not belong to the same jail as
-.Fa u1 .
+does not belong to the same jail or one of its sub-jails, as determined by
+.Xr prison_check 9 .
.It Bq Er ESRCH
The MAC subsystem denied visibility.
+.It Bq Er ESRCH
+.Xr cr_bsd_visible 9
+denied visibility according to the BSD security policies in force.
.El
.Sh SEE ALSO
-.Xr cr_seeothergids 9 ,
-.Xr cr_seeotheruids 9 ,
+.Xr prison_check 9 ,
.Xr mac 9 ,
+.Xr cr_bsd_visible 9 ,
.Xr p_cansee 9
diff --git a/share/man/man9/cr_canseejailproc.9 b/share/man/man9/cr_canseejailproc.9
new file mode 100644
index 000000000000..775c76722b05
--- /dev/null
+++ b/share/man/man9/cr_canseejailproc.9
@@ -0,0 +1,81 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2023 Olivier Certner <olce.freebsd@certner.fr>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
+.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
+.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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 August 18, 2023
+.Dt CR_CANSEEJAILPROC 9
+.Os
+.Sh NAME
+.Nm cr_canseejailproc
+.Nd determine if subjects may see entities in sub-jails
+.Sh SYNOPSIS
+.Ft int
+.Fn cr_canseejailproc "struct ucred *u1" "struct ucred *u2"
+.Sh DESCRIPTION
+.Bf -emphasis
+This function is internal.
+Its functionality is integrated into the function
+.Xr cr_bsd_visible 9 ,
+which should be called instead.
+.Ef
+.Pp
+This function checks if a subject associated to credentials
+.Fa u1
+is denied seeing a subject or object associated to credentials
+.Fa u2
+by a policy that requires both credentials to be associated to the same jail.
+This is a restriction to the baseline jail policy that a subject can see
+subjects or objects in its own jail or any sub-jail of it.
+.Pp
+This policy is active if and only if the
+.Xr sysctl 8
+variable
+.Va security.bsd.see_jail_proc
+is set to zero.
+.Pp
+As usual, the superuser (effective user ID 0) is exempt from this policy
+provided that the
+.Xr sysctl 8
+variable
+.Va security.bsd.suser_enabled
+is non-zero and no active MAC policy explicitly denies the exemption
+.Po
+see
+.Xr priv_check_cred 9
+.Pc .
+.Sh RETURN VALUES
+The
+.Fn cr_canseejailproc
+function returns 0 if the policy is disabled, both credentials are associated to
+the same jail, or if
+.Fa u1
+has privilege exempting it from the policy.
+Otherwise, it returns
+.Er ESRCH .
+.Sh SEE ALSO
+.Xr cr_bsd_visible 9 ,
+.Xr priv_check_cred 9
+.Sh AUTHORS
+This manual page was written by
+.An Olivier Certner Aq Mt olce.freebsd@certner.fr .
diff --git a/share/man/man9/cr_seeothergids.9 b/share/man/man9/cr_canseeothergids.9
index ea8f43667f19..109d41a8545d 100644
--- a/share/man/man9/cr_seeothergids.9
+++ b/share/man/man9/cr_canseeothergids.9
@@ -1,5 +1,6 @@
.\"
.\" Copyright (c) 2003 Joseph Koshy <jkoshy@FreeBSD.org>
+.\" Copyright (c) 2023 Olivier Certner <olce.freebsd@certner.fr>
.\"
.\" All rights reserved.
.\"
@@ -25,58 +26,58 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 11, 2003
-.Dt CR_SEEOTHERGIDS 9
+.Dd August 18, 2023
+.Dt CR_CANSEEOTHERGIDS 9
.Os
.Sh NAME
-.Nm cr_seeothergids
-.Nd determine visibility of objects given their group memberships
+.Nm cr_canseeothergids
+.Nd determine if subjects may see entities in a disjoint group set
.Sh SYNOPSIS
.Ft int
-.Fn cr_seeothergids "struct ucred *u1" "struct ucred *u2"
+.Fn cr_canseeothergids "struct ucred *u1" "struct ucred *u2"
.Sh DESCRIPTION
-This function determines the visibility of objects in the
-kernel based on the group IDs in the credentials
+.Bf -emphasis
+This function is internal.
+Its functionality is integrated into the function
+.Xr cr_bsd_visible 9 ,
+which should be called instead.
+.Ef
+.Pp
+This function checks if a subject associated to credentials
.Fa u1
-and
+is denied seeing a subject or object associated to credentials
.Fa u2
-associated with them.
+by a policy that requires both credentials to have at least one group in common.
+For this determination, the real and supplementary group IDs are used, but
+not the effective group IDs, as per
+.Xr realgroupmember 9 .
.Pp
-The visibility of objects is influenced by the
+This policy is active if and only if the
.Xr sysctl 8
variable
-.Va security.bsd.see_other_gids .
-If this variable is non-zero then all objects in the kernel
-are visible to each other irrespective of their group membership.
-If this variable is zero then the object with credentials
-.Fa u2
-is visible to the object with credentials
-.Fa u1
-if either
-.Fa u1
-is the super-user credential, or if at least one of
-.Fa u1 Ns 's
-group IDs is present in
-.Fa u2 Ns 's
-group set.
-.Sh SYSCTL VARIABLES
-.Bl -tag -width indent
-.It Va security.bsd.see_other_gids
-Must be non-zero if objects with unprivileged credentials are to be
-able to see each other.
-.El
+.Va security.bsd.see_other_gids
+is set to zero.
+.Pp
+As usual, the superuser (effective user ID 0) is exempt from this policy
+provided that the
+.Xr sysctl 8
+variable
+.Va security.bsd.suser_enabled
+is non-zero and no active MAC policy explicitly denies the exemption
+.Po
+see
+.Xr priv_check_cred 9
+.Pc .
.Sh RETURN VALUES
-This function returns zero if the object with credential
+The
+.Fn cr_canseeothergids
+function returns 0 if the policy is disabled, the credentials share at least one
+common group, or if
.Fa u1
-can
-.Dq see
-the object with credential
-.Fa u2 ,
-or
-.Er ESRCH
-otherwise.
+has privilege exempting it from the policy.
+Otherwise, it returns
+.Er ESRCH .
.Sh SEE ALSO
-.Xr cr_seeotheruids 9 ,
-.Xr p_candebug 9
+.Xr cr_bsd_visible 9 ,
+.Xr realgroupmember 9 ,
+.Xr priv_check_cred 9
diff --git a/share/man/man9/cr_seeotheruids.9 b/share/man/man9/cr_canseeotheruids.9
index b7b7000b3608..230c5ea59b78 100644
--- a/share/man/man9/cr_seeotheruids.9
+++ b/share/man/man9/cr_canseeotheruids.9
@@ -1,5 +1,6 @@
.\"
.\" Copyright (c) 2003 Joseph Koshy <jkoshy@FreeBSD.org>
+.\" Copyright (c) 2023 Olivier Certner <olce.freebsd@certner.fr>
.\"
.\" All rights reserved.
.\"
@@ -25,58 +26,54 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 11, 2003
-.Dt CR_SEEOTHERUIDS 9
+.Dd August 18, 2023
+.Dt CR_CANSEEOTHERUIDS 9
.Os
.Sh NAME
-.Nm cr_seeotheruids
-.Nd determine visibility of objects given their user credentials
+.Nm cr_canseeotheruids
+.Nd determine if subjects may see entities with differing user ID
.Sh SYNOPSIS
.Ft int
-.Fn cr_seeotheruids "struct ucred *u1" "struct ucred *u2"
+.Fn cr_canseeotheruids "struct ucred *u1" "struct ucred *u2"
.Sh DESCRIPTION
-This function determines the visibility of objects in the
-kernel based on the real user IDs in the credentials
+.Bf -emphasis
+This function is internal.
+Its functionality is integrated into the function
+.Xr cr_bsd_visible 9 ,
+which should be called instead.
+.Ef
+.Pp
+This function checks if a subject associated to credentials
.Fa u1
-and
+is denied seeing a subject or object associated to credentials
.Fa u2
-associated with them.
+by a policy that requires both credentials to have the same real user ID.
.Pp
-The visibility of objects is influenced by the
+This policy is active if and only if the
.Xr sysctl 8
variable
-.Va security.bsd.see_other_uids .
-If this variable is non-zero then all objects in the kernel
-are visible to each other irrespective of their user IDs.
-If this variable is zero then the object with credentials
-.Fa u2
-is visible to the object with credentials
-.Fa u1
-if either
-.Fa u1
-is the super-user credential, or if
-.Fa u1
-and
-.Fa u2
-have the same real user ID.
-.Sh SYSCTL VARIABLES
-.Bl -tag -width indent
-.It Va security.bsd.see_other_uids
-Must be non-zero if objects with unprivileged credentials are to be
-able to see each other.
-.El
+.Va security.bsd.see_other_uids
+is set to zero.
+.Pp
+As usual, the superuser (effective user ID 0) is exempt from this policy
+provided that the
+.Xr sysctl 8
+variable
+.Va security.bsd.suser_enabled
+is non-zero and no active MAC policy explicitly denies the exemption
+.Po
+see
+.Xr priv_check_cred 9
+.Pc .
.Sh RETURN VALUES
-This function returns zero if the object with credential
+The
+.Fn cr_canseeotheruids
+function returns 0 if the policy is disabled, both credentials have the same
+real user ID, or if
.Fa u1
-can
-.Dq see
-the object with credential
-.Fa u2 ,
-or
-.Er ESRCH
-otherwise.
+has privilege exempting it from the policy.
+Otherwise, it returns
+.Er ESRCH .
.Sh SEE ALSO
-.Xr cr_seeothergids 9 ,
-.Xr p_candebug 9
+.Xr cr_bsd_visible 9 ,
+.Xr priv_check_cred 9
diff --git a/share/man/man9/critical_enter.9 b/share/man/man9/critical_enter.9
index 3da3ac1d96a1..0b1e5559ed1d 100644
--- a/share/man/man9/critical_enter.9
+++ b/share/man/man9/critical_enter.9
@@ -21,9 +21,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd October 5, 2005
+.Dd March 20, 2023
.Dt CRITICAL_ENTER 9
.Os
.Sh NAME
@@ -37,15 +35,24 @@
.Fn critical_enter "void"
.Ft void
.Fn critical_exit "void"
+.Fn CRITICAL_ASSERT "struct thread *td"
.Sh DESCRIPTION
These functions are used to prevent preemption in a critical region of code.
All that is guaranteed is that the thread currently executing on a CPU will
not be preempted.
-Specifically, a thread in a critical region will not migrate to another
-CPU while it is in a critical region.
+Specifically, a thread in a critical region will not migrate to another CPU
+while it is in a critical region, nor will the current CPU switch to a
+different thread.
The current CPU may still trigger faults and exceptions during a critical
section; however, these faults are usually fatal.
.Pp
+The CPU might also receive and handle interrupts within a critical section.
+When this occurs the interrupt exit will not result in a context switch, and
+execution will continue in the critical section.
+Thus, the net effect of a critical section on the current thread's execution is
+similar to running with interrupts disabled, except that timer interrupts and
+filtered interrupt handlers do not incur a latency penalty.
+.Pp
The
.Fn critical_enter
and
@@ -56,18 +63,39 @@ while the current thread is in a critical section,
then the preemption will be deferred until the current thread exits the
outermost critical section.
.Pp
-Note that these functions are not required to provide any inter-CPU
-synchronization, data protection, or memory ordering guarantees and thus
-should
+Note that these functions do not provide any inter-CPU synchronization, data
+protection, or memory ordering guarantees, and thus should
.Em not
be used to protect shared data structures.
.Pp
-These functions should be used with care as an infinite loop within a
-critical region will deadlock the CPU.
+These functions should be used with care as an unbound or infinite loop within
+a critical region will deadlock the CPU.
Also, they should not be interlocked with operations on mutexes, sx locks,
-semaphores, or other synchronization primitives.
+semaphores, or other synchronization primitives, as these primitives may
+require a context switch to operate.
One exception to this is that spin mutexes include a critical section,
so in certain cases critical sections may be interlocked with spin mutexes.
+.Pp
+Critical regions should be only as wide as necessary.
+That is, code which does not require the critical section to operate correctly
+should be excluded from its bounds whenever possible.
+Abuse of critical sections has an effect on overall system latency and timer
+precision, since disabling preemption will delay the execution of threaded
+interrupt handlers and
+.Xr callout 9
+events on the current CPU.
+.Pp
+The
+.Fn CRITICAL_ASSERT
+macro verifies that the provided thread
+.Fa td
+is currently executing in a critical section.
+It is a wrapper around
+.Xr KASSERT 9 .
+.Sh SEE ALSO
+.Xr callout 9 ,
+.Xr KASSERT 9 ,
+.Xr locking 9
.Sh HISTORY
These functions were introduced in
.Fx 5.0 .
diff --git a/share/man/man9/crypto.9 b/share/man/man9/crypto.9
index 1a0ead7caa2a..4d54b7516b67 100644
--- a/share/man/man9/crypto.9
+++ b/share/man/man9/crypto.9
@@ -15,8 +15,6 @@
.\" MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR
.\" PURPOSE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 12, 2021
.Dt CRYPTO 9
.Os
diff --git a/share/man/man9/crypto_buffer.9 b/share/man/man9/crypto_buffer.9
index 1e31cfec7879..f14ae93728f2 100644
--- a/share/man/man9/crypto_buffer.9
+++ b/share/man/man9/crypto_buffer.9
@@ -28,8 +28,6 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 11, 2022
.Dt CRYPTO_BUFFER 9
.Os
diff --git a/share/man/man9/crypto_driver.9 b/share/man/man9/crypto_driver.9
index a0587f4b5f83..51b036da6cef 100644
--- a/share/man/man9/crypto_driver.9
+++ b/share/man/man9/crypto_driver.9
@@ -28,8 +28,6 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 12, 2021
.Dt CRYPTO_DRIVER 9
.Os
diff --git a/share/man/man9/crypto_request.9 b/share/man/man9/crypto_request.9
index 1b7379245608..45c3b62eea26 100644
--- a/share/man/man9/crypto_request.9
+++ b/share/man/man9/crypto_request.9
@@ -28,9 +28,7 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 4, 2022
+.Dd November 2, 2022
.Dt CRYPTO_REQUEST 9
.Os
.Sh NAME
@@ -441,17 +439,12 @@ the callback is invoked synchronously if the request was processed by a
software driver or asynchronously if the request was processed by a
hardware driver.
.Pp
-If a request was scheduled to the taskqueue via
-.Dv CRYPTO_F_ASYNC ,
+If a request was scheduled to the taskqueue with
+.Dv CRYPTO_ASYNC_ORDERED ,
callbacks are always invoked asynchronously ignoring
.Dv CRYPTO_F_CBIMM
and
.Dv CRYPTO_F_CBIFSYNC .
-In this case,
-.Dv CRYPTO_F_ASYNC_KEEPORDER
-may be set to ensure that callbacks for requests on a given session are
-invoked in the same order that requests were queued to the session via
-.Fn crypto_dispatch .
This flag is used by IPsec to ensure that decrypted network packets are
passed up the network stack in roughly the same order they were received.
.Ss Other Request Fields
diff --git a/share/man/man9/crypto_session.9 b/share/man/man9/crypto_session.9
index 78bc5e736655..7ff10237a810 100644
--- a/share/man/man9/crypto_session.9
+++ b/share/man/man9/crypto_session.9
@@ -28,8 +28,6 @@
.\"
.\" * Other names and brands may be claimed as the property of others.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 22, 2020
.Dt CRYPTO_SESSION 9
.Os
diff --git a/share/man/man9/dev_clone.9 b/share/man/man9/dev_clone.9
index 4fa93679ea9e..f5f59e3c6666 100644
--- a/share/man/man9/dev_clone.9
+++ b/share/man/man9/dev_clone.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 3, 2009
.Dt DEV_CLONE 9
.Os
diff --git a/share/man/man9/dev_refthread.9 b/share/man/man9/dev_refthread.9
index c6aa7d955230..e12b5f49a0e5 100644
--- a/share/man/man9/dev_refthread.9
+++ b/share/man/man9/dev_refthread.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 29, 2018
.Dt DEV_REFTHREAD 9
.Os
diff --git a/share/man/man9/devclass.9 b/share/man/man9/devclass.9
index d3e848e8d904..d3c83133ae17 100644
--- a/share/man/man9/devclass.9
+++ b/share/man/man9/devclass.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVCLASS 9
.Os
diff --git a/share/man/man9/devclass_find.9 b/share/man/man9/devclass_find.9
index 2a2c88d45e20..1e5661e46b77 100644
--- a/share/man/man9/devclass_find.9
+++ b/share/man/man9/devclass_find.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVCLASS_FIND 9
.Os
diff --git a/share/man/man9/devclass_get_count.9 b/share/man/man9/devclass_get_count.9
index f645a49454f2..526a95cd5be3 100644
--- a/share/man/man9/devclass_get_count.9
+++ b/share/man/man9/devclass_get_count.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 5, 2004
.Dt DEVCLASS_GET_COUNT 9
.Os
diff --git a/share/man/man9/devclass_get_device.9 b/share/man/man9/devclass_get_device.9
index 242785e1931a..e66e994b2a8e 100644
--- a/share/man/man9/devclass_get_device.9
+++ b/share/man/man9/devclass_get_device.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVCLASS_GET_DEVICE 9
.Os
diff --git a/share/man/man9/devclass_get_devices.9 b/share/man/man9/devclass_get_devices.9
index e6f8a15b6978..1c0c1354ae2d 100644
--- a/share/man/man9/devclass_get_devices.9
+++ b/share/man/man9/devclass_get_devices.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 19, 2005
.Dt DEVCLASS_GET_DEVICES 9
.Os
diff --git a/share/man/man9/devclass_get_drivers.9 b/share/man/man9/devclass_get_drivers.9
index f2ba1481436c..b5937cb39854 100644
--- a/share/man/man9/devclass_get_drivers.9
+++ b/share/man/man9/devclass_get_drivers.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 19, 2005
.Dt DEVCLASS_GET_DRIVERS 9
.Os
diff --git a/share/man/man9/devclass_get_maxunit.9 b/share/man/man9/devclass_get_maxunit.9
index 40a2d7929815..f99fa62fc5e7 100644
--- a/share/man/man9/devclass_get_maxunit.9
+++ b/share/man/man9/devclass_get_maxunit.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 10, 2010
.Dt DEVCLASS_GET_MAXUNIT 9
.Os
diff --git a/share/man/man9/devclass_get_name.9 b/share/man/man9/devclass_get_name.9
index 5978dc16d944..e66e7de66bcc 100644
--- a/share/man/man9/devclass_get_name.9
+++ b/share/man/man9/devclass_get_name.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVCLASS_GET_NAME 9
.Os
diff --git a/share/man/man9/devclass_get_softc.9 b/share/man/man9/devclass_get_softc.9
index e4c55334fad4..3580c1e379e7 100644
--- a/share/man/man9/devclass_get_softc.9
+++ b/share/man/man9/devclass_get_softc.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVCLASS_GET_SOFTC 9
.Os
diff --git a/share/man/man9/devctl_notify.9 b/share/man/man9/devctl_notify.9
index 9d490c6bfe9d..701b470cdaaa 100644
--- a/share/man/man9/devctl_notify.9
+++ b/share/man/man9/devctl_notify.9
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 22, 2020
.Dt DEVCTL_NOTIFY 9
.Os
diff --git a/share/man/man9/devctl_process_running.9 b/share/man/man9/devctl_process_running.9
index 8ac4e1c8b358..155d00398f4e 100644
--- a/share/man/man9/devctl_process_running.9
+++ b/share/man/man9/devctl_process_running.9
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 22, 2020
.Dt DEVCTL_PROCESS_RUNNING 9
.Os
diff --git a/share/man/man9/devctl_safe_quote_sb.9 b/share/man/man9/devctl_safe_quote_sb.9
index 7560fd7dcc4b..e73574fbfa8c 100644
--- a/share/man/man9/devctl_safe_quote_sb.9
+++ b/share/man/man9/devctl_safe_quote_sb.9
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 22, 2020
.Dt DEVCTL_SAFE_QUOTE_SB 9
.Os
diff --git a/share/man/man9/devfs_set_cdevpriv.9 b/share/man/man9/devfs_set_cdevpriv.9
index c040ca6d5a11..3258ca082e5f 100644
--- a/share/man/man9/devfs_set_cdevpriv.9
+++ b/share/man/man9/devfs_set_cdevpriv.9
@@ -22,15 +22,14 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 2, 2015
+.Dd March 23, 2024
.Dt DEVFS_CDEVPRIV 9
.Os
.Sh NAME
.Nm devfs_set_cdevpriv ,
.Nm devfs_get_cdevpriv ,
-.Nm devfs_clear_cdevpriv
+.Nm devfs_clear_cdevpriv ,
+.Nm devfs_foreach_cdevpriv
.Nd manage per-open filedescriptor data for devices
.Sh SYNOPSIS
.In sys/param.h
@@ -44,6 +43,12 @@ typedef void d_priv_dtor_t(void *data);
.Fn devfs_set_cdevpriv "void *priv" "d_priv_dtor_t *dtr"
.Ft void
.Fn devfs_clear_cdevpriv "void"
+.Ft int
+.Fo devfs_foreach_cdevpriv
+.Fa "struct cdev *dev"
+.Fa "int (*cb)(void *data, void *arg)"
+.Fa "void *arg"
+.Fc
.Sh DESCRIPTION
The
.Fn devfs_xxx_cdevpriv
@@ -113,6 +118,36 @@ filedescriptor, or
.Fn devfs_clear_cdevpriv
was called.
.El
+.Pp
+The function
+.Fn devfs_foreach_cdevpriv
+sequentially calls the function
+.Fa cb
+for each
+.Nm cdevpriv
+structure, currently associated with the
+.Fa cdev
+device.
+The iterated
+.Nm cdevpriv
+data pointer and the user-supplied context
+.Fa arg
+are passed to the function
+.Fa cb .
+If
+.Fa cb
+returns non-zero value, the iteration stops on that element.
+The
+.Fn devfs_foreach_cdevpriv
+returns the return value from the last call to
+.Fa cb ,
+or zero if no
+.Nm cdevpriv
+data is currently associated with the device.
+.Pp
+Current implementation of the iterator makes it impossible to use
+any blockable locking inside the callback
+.Fa cb .
.Sh SEE ALSO
.Xr close 2 ,
.Xr open 2 ,
diff --git a/share/man/man9/device.9 b/share/man/man9/device.9
index d5e30f0abefa..f813b7d72f53 100644
--- a/share/man/man9/device.9
+++ b/share/man/man9/device.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 15, 2017
.Dt DEVICE 9
.Os
diff --git a/share/man/man9/device_add_child.9 b/share/man/man9/device_add_child.9
index 2ba2ca50b324..423869d6ff6b 100644
--- a/share/man/man9/device_add_child.9
+++ b/share/man/man9/device_add_child.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 11, 2018
.Dt DEVICE_ADD_CHILD 9
.Os
@@ -113,10 +111,10 @@ When adding a child to another device node, such as in an identify
routine, use
.Xr BUS_ADD_CHILD 9
instead of
-.Xr device_add_child 9 .
+.Fn device_add_child .
.Xr BUS_ADD_CHILD 9
will call
-.Xr device_add_child 9
+.Fn device_add_child
and add the proper bus-specific data to the new child.
.Fn device_add_child
does not call
diff --git a/share/man/man9/device_delete_child.9 b/share/man/man9/device_delete_child.9
index df56c599e9b9..f6c08cb52e16 100644
--- a/share/man/man9/device_delete_child.9
+++ b/share/man/man9/device_delete_child.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVICE_DELETE_CHILD 9
.Os
diff --git a/share/man/man9/device_delete_children.9 b/share/man/man9/device_delete_children.9
index 1ac99c4589dc..d70fc6fe287a 100644
--- a/share/man/man9/device_delete_children.9
+++ b/share/man/man9/device_delete_children.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 28, 2018
.Dt DEVICE_DELETE_CHILDREN 9
.Os
diff --git a/share/man/man9/device_enable.9 b/share/man/man9/device_enable.9
index 85b4f6ea5e6c..5f485ed9288c 100644
--- a/share/man/man9/device_enable.9
+++ b/share/man/man9/device_enable.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVICE_ENABLE 9
.Os
diff --git a/share/man/man9/device_find_child.9 b/share/man/man9/device_find_child.9
index 391f44b7bb9f..69c767c13589 100644
--- a/share/man/man9/device_find_child.9
+++ b/share/man/man9/device_find_child.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 8, 2005
.Dt DEVICE_FIND_CHILD 9
.Os
diff --git a/share/man/man9/device_get_children.9 b/share/man/man9/device_get_children.9
index cbc1124a20a4..f9c36971e9b5 100644
--- a/share/man/man9/device_get_children.9
+++ b/share/man/man9/device_get_children.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 23, 2008
.Dt DEVICE_GET_CHILDREN 9
.Os
diff --git a/share/man/man9/device_get_devclass.9 b/share/man/man9/device_get_devclass.9
index fcf869565aeb..142baaeb7013 100644
--- a/share/man/man9/device_get_devclass.9
+++ b/share/man/man9/device_get_devclass.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVICE_GET_DEVCLASS 9
.Os
diff --git a/share/man/man9/device_get_driver.9 b/share/man/man9/device_get_driver.9
index d764768b11f6..9694b2b411cb 100644
--- a/share/man/man9/device_get_driver.9
+++ b/share/man/man9/device_get_driver.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVICE_GET_DRIVER 9
.Os
diff --git a/share/man/man9/device_get_ivars.9 b/share/man/man9/device_get_ivars.9
index dd1450c32f93..deeede022a03 100644
--- a/share/man/man9/device_get_ivars.9
+++ b/share/man/man9/device_get_ivars.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVICE_GET_IVARS 9
.Os
diff --git a/share/man/man9/device_get_name.9 b/share/man/man9/device_get_name.9
index 1bf7ec842ecf..8a4a280b9514 100644
--- a/share/man/man9/device_get_name.9
+++ b/share/man/man9/device_get_name.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 21, 2003
.Dt DEVICE_GET_NAME 9
.Os
diff --git a/share/man/man9/device_get_parent.9 b/share/man/man9/device_get_parent.9
index e5b9550295c9..f5649139ef61 100644
--- a/share/man/man9/device_get_parent.9
+++ b/share/man/man9/device_get_parent.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 21, 2003
.Dt DEVICE_GET_PARENT 9
.Os
diff --git a/share/man/man9/device_get_property.9 b/share/man/man9/device_get_property.9
index d925f5f224db..dc7a720621f4 100644
--- a/share/man/man9/device_get_property.9
+++ b/share/man/man9/device_get_property.9
@@ -1,5 +1,5 @@
.\" -
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 Semihalf
.\"
@@ -23,9 +23,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd February 18, 2022
+.Dd September 29, 2022
.Dt DEVICE_GET_PROPERTY 9
.Os
.Sh NAME
@@ -54,6 +52,9 @@ Currently the following types are supported:
The underlying property is a string of bytes.
.It Dv DEVICE_PROP_ANY
Wildcard property type.
+.It Dv DEVICE_PROP_HANDLE
+Following a reference the underlying property is a handle of the
+respective bus.
.It Dv DEVICE_PROP_UINT32
The underlying property is an array of unsigned 32 bit integers.
The
diff --git a/share/man/man9/device_get_softc.9 b/share/man/man9/device_get_softc.9
index 5685773aeb96..c15868b35155 100644
--- a/share/man/man9/device_get_softc.9
+++ b/share/man/man9/device_get_softc.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 21, 2015
.Dt DEVICE_GET_SOFTC 9
.Os
diff --git a/share/man/man9/device_get_state.9 b/share/man/man9/device_get_state.9
index 384395a30288..d4ca43f2bdae 100644
--- a/share/man/man9/device_get_state.9
+++ b/share/man/man9/device_get_state.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVICE_GET_STATE 9
.Os
diff --git a/share/man/man9/device_get_sysctl.9 b/share/man/man9/device_get_sysctl.9
index 876c48c77016..b01302ba373c 100644
--- a/share/man/man9/device_get_sysctl.9
+++ b/share/man/man9/device_get_sysctl.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 18, 2011
.Dt DEVICE_GET_SYSCTL 9
.Os
diff --git a/share/man/man9/device_get_unit.9 b/share/man/man9/device_get_unit.9
index 0b222e96dd6d..b294e54489d6 100644
--- a/share/man/man9/device_get_unit.9
+++ b/share/man/man9/device_get_unit.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVICE_GET_UNIT 9
.Os
diff --git a/share/man/man9/device_printf.9 b/share/man/man9/device_printf.9
index 5dea95f82e5b..ee84feabcce8 100644
--- a/share/man/man9/device_printf.9
+++ b/share/man/man9/device_printf.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 21, 2003
.Dt DEVICE_PRINTF 9
.Os
diff --git a/share/man/man9/device_probe_and_attach.9 b/share/man/man9/device_probe_and_attach.9
index 8f8c4af18d22..5d5de52cee66 100644
--- a/share/man/man9/device_probe_and_attach.9
+++ b/share/man/man9/device_probe_and_attach.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1998
.Dt DEVICE_PROBE_AND_ATTACH 9
.Os
diff --git a/share/man/man9/device_quiet.9 b/share/man/man9/device_quiet.9
index 08d88caf4348..c7e5aa829518 100644
--- a/share/man/man9/device_quiet.9
+++ b/share/man/man9/device_quiet.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 12, 2016
.Dt DEVICE_QUIET 9
.Os
diff --git a/share/man/man9/device_set_desc.9 b/share/man/man9/device_set_desc.9
index ae29010450b1..5037c90fedb1 100644
--- a/share/man/man9/device_set_desc.9
+++ b/share/man/man9/device_set_desc.9
@@ -26,13 +26,12 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 16, 1998
+.Dd January 9, 2024
.Dt DEVICE_SET_DESC 9
.Os
.Sh NAME
.Nm device_set_desc ,
+.Nm device_set_descf ,
.Nm device_set_desc_copy ,
.Nm device_get_desc
.Nd access the description of a device
@@ -42,6 +41,8 @@
.Ft void
.Fn device_set_desc "device_t dev" "const char *desc"
.Ft void
+.Fn device_set_descf "device_t dev" "const char *fmt" "..."
+.Ft void
.Fn device_set_desc_copy "device_t dev" "const char *desc"
.Ft const char *
.Fn device_get_desc "device_t dev"
@@ -56,6 +57,9 @@ is used to set the description if the string passed is a temporary
buffer which will be overwritten.
In this case, the system will copy
the string, otherwise the pointer passed will be used directly.
+.Fn device_set_descf
+is a printf-like version of
+.Fn device_set_desc .
.Sh SEE ALSO
.Xr device 9
.Sh AUTHORS
diff --git a/share/man/man9/device_set_driver.9 b/share/man/man9/device_set_driver.9
index 345a0a99c1b3..72ae19f01576 100644
--- a/share/man/man9/device_set_driver.9
+++ b/share/man/man9/device_set_driver.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 21, 2003
.Dt DEVICE_SET_DRIVER 9
.Os
diff --git a/share/man/man9/device_set_flags.9 b/share/man/man9/device_set_flags.9
index 3a836ffddfae..4f35a117bca5 100644
--- a/share/man/man9/device_set_flags.9
+++ b/share/man/man9/device_set_flags.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 6, 1999
.Dt DEVICE_GET_FLAGS 9
.Os
diff --git a/share/man/man9/devstat.9 b/share/man/man9/devstat.9
index 5025fba6c3e1..3682ad024eae 100644
--- a/share/man/man9/devstat.9
+++ b/share/man/man9/devstat.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 15, 2020
.Dt DEVSTAT 9
.Os
@@ -416,6 +414,7 @@ typedef enum {
DEVSTAT_TYPE_IF_SCSI = 0x010,
DEVSTAT_TYPE_IF_IDE = 0x020,
DEVSTAT_TYPE_IF_OTHER = 0x030,
+ DEVSTAT_TYPE_IF_NVME = 0x040,
DEVSTAT_TYPE_IF_MASK = 0x0f0,
DEVSTAT_TYPE_PASS = 0x100
} devstat_type_flags;
diff --git a/share/man/man9/devtoname.9 b/share/man/man9/devtoname.9
index 07ec04fb852f..b62f08efe5e9 100644
--- a/share/man/man9/devtoname.9
+++ b/share/man/man9/devtoname.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 10, 2012
.Dt DEVTONAME 9
.Os
diff --git a/share/man/man9/disk.9 b/share/man/man9/disk.9
index 16f2654f4836..047abb96c619 100644
--- a/share/man/man9/disk.9
+++ b/share/man/man9/disk.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 30, 2020
.Dt DISK 9
.Os
diff --git a/share/man/man9/dnv.9 b/share/man/man9/dnv.9
index 3d41cef673dc..8c89d6599801 100644
--- a/share/man/man9/dnv.9
+++ b/share/man/man9/dnv.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 26, 2016
.Dt DNV 9
.Os
diff --git a/share/man/man9/domain.9 b/share/man/man9/domain.9
index 2d42e0b8cb40..eaa279cef996 100644
--- a/share/man/man9/domain.9
+++ b/share/man/man9/domain.9
@@ -1,5 +1,6 @@
.\"
.\" Copyright (C) 2001 Chad David <davidc@acns.ab.ca>. All rights reserved.
+.\" Copyright (C) 2022 Gleb Smirnoff <glebius@FreeBSD.org>
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -24,223 +25,204 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 3, 2022
+.Dd September 14, 2022
.Dt DOMAIN 9
.Os
.Sh NAME
-.Nm domain_add ,
-.Nm domain_init ,
-.Nm pfctlinput ,
-.Nm pffinddomain ,
-.Nm pffindproto ,
-.Nm pffindtype ,
-.Nm DOMAIN_SET
-.Nd "network domain management"
+.Nm domain ,
+.Nm protosw
+.Nd "programming interface for kernel socket implementation"
.Sh SYNOPSIS
.In sys/param.h
.In sys/kernel.h
.In sys/protosw.h
.In sys/domain.h
.Ft void
-.Fn domain_add "void *data"
-.Ft void
-.Fn domain_init "void *data"
+.Fn domain_add "struct domain *dom"
.Ft void
-.Fn pfctlinput "int cmd" "struct sockaddr *sa"
-.Ft struct domain *
-.Fn pffinddomain "int family"
-.Ft struct protosw *
-.Fn pffindproto "int family" "int protocol" "int type"
-.Ft struct protosw *
-.Fn pffindtype "int family" "int type"
+.Fn domain_remove "struct domain *dom"
.Ft void
-.Fn DOMAIN_SET "name"
+.Fn DOMAIN_SET "domain"
+.Ft int
+.Fn protosw_register "struct domain *dom" "struct protosw *pr"
+.Ft int
+.Fn protosw_unregister "struct protosw *pr"
.Sh DESCRIPTION
-Network protocols installed in the system are maintained within what
-are called domains
-(for example the
-.Va inetdomain
-and
-.Va localdomain ) .
+The
+.Nm
+subsystem allows implementation of communication protocols that are exposed to
+the userland via the
+.Xr socket 2
+API.
+When an application performs a
+.Fn socket "domain" "type" "protocol"
+syscall, the kernel searches for a
+.Nm
+matching the
+.Ar domain
+argument, then within this domain, searches for a protocol
+matching
+.Ar type .
+If the third argument,
+.Ar protocol ,
+is not
+.Dv 0 ,
+that value must also match.
+The structure found must implement certain methods, so that
+.Xr socket 2
+API works for this particular kind of a socket.
+.Pp
+A minimal
+.Nm
+structure implementing a domain shall be initialized with sparse C99
+initializer and has public fields as follows:
.Bd -literal
struct domain {
- int dom_family; /* AF_xxx */
- char *dom_name;
- int dom_flags;
- int (*dom_probe)(void); /* check for support (optional) */
- int (*dom_externalize) /* externalize access rights */
- (struct mbuf *, struct mbuf **);
- void (*dom_dispose) /* dispose of internalized rights */
- (struct mbuf *);
- struct protosw *dom_protosw, *dom_protoswNPROTOSW;
- struct domain *dom_next;
- int (*dom_rtattach) /* initialize routing table */
- (void **, int);
- int (*dom_rtdetach) /* clean up routing table */
- (void **, int);
- void *(*dom_ifattach)(struct ifnet *);
- void (*dom_ifdetach)(struct ifnet *, void *);
- int (*dom_ifmtu)(struct ifnet *);
- /* af-dependent data on ifnet */
+ /*
+ * Mandatory fields.
+ */
+ int dom_family; /* PF_xxx, first argument of socket(2) */
+ char *dom_name; /* text name of the domain */
+ u_int dom_nprotosw; /* length of dom_protosw[] */
+ /*
+ * Following methods are optional.
+ */
+ int (*dom_probe)(void); /* check for support */
+ struct rib_head *(*dom_rtattach)(uint32_t); /* init route table */
+ void (*dom_rtdetach)(struct rib_head *); /* clean up table */
+ void *(*dom_ifattach)(struct ifnet *); /* interface attach */
+ void (*dom_ifdetach)(struct ifnet *, void *);/* & detach callbacks */
+ int (*dom_ifmtu)(struct ifnet *); /* mtu change */
+ /*
+ * Mandatory variable size array of pointers to protosw structs.
+ */
+ struct protosw *dom_protosw[];
};
.Ed
.Pp
-Each domain contains an array of protocol switch structures
+Each domain contains the
+.Va dom_protosw
+array of protocol switch structures
.Pq Vt "struct protosw *" ,
one for each socket type supported.
+The array may have
+.Dv NULL
+spacers for loadable protocols.
+Sparse C99 initializers shall be used to initialize
+.Nm protosw
+structures.
+The structure has mandatory field
+.Va pr_type
+and mandatory
+.Va pr_attach
+method.
+The rest of the methods are optional, but a meaningful protocol should
+implement some.
.Bd -literal
struct protosw {
- short pr_type; /* socket type used for */
- struct domain *pr_domain; /* domain protocol a member of */
- short pr_protocol; /* protocol number */
- short pr_flags; /* see below */
-/* protocol-protocol hooks */
- pr_input_t *pr_input; /* input to protocol (from below) */
- pr_output_t *pr_output; /* output to protocol (from above) */
- pr_ctlinput_t *pr_ctlinput; /* control input (from below) */
- pr_ctloutput_t *pr_ctloutput; /* control output (from above) */
-/* utility hooks */
- pr_fasttimo_t *pr_fasttimo; /* fast timeout (200ms) */
- pr_slowtimo_t *pr_slowtimo; /* slow timeout (500ms) */
- pr_drain_t *pr_drain; /* flush any excess space possible */
-
- struct pr_usrreqs *pr_usrreqs; /* user-protocol hook */
+ short pr_type; /* second argument of socket(2) */
+ short pr_protocol; /* third argument of socket(2) or 0 */
+ short pr_flags; /* see protosw.h */
+ pr_soreceive_t *pr_soreceive; /* recv(2) */
+ pr_rcvd_t *pr_rcvd; /* soreceive_generic() if PR_WANTRCV */
+ pr_sosend_t *pr_sosend; /* send(2) */
+ pr_send_t *pr_send; /* send(2) via sosend_generic() */
+ pr_ready_t *pr_ready; /* sendfile/ktls readyness */
+ pr_sopoll_t *pr_sopoll; /* poll(2) */
+ pr_attach_t *pr_attach; /* creation: socreate(), sonewconn() */
+ pr_detach_t *pr_detach; /* destruction: sofree() */
+ pr_connect_t *pr_connect; /* connect(2) */
+ pr_disconnect_t *pr_disconnect; /* sodisconnect() */
+ pr_close_t *pr_close; /* close(2) */
+ pr_shutdown_t *pr_shutdown; /* shutdown(2) */
+ pr_abort_t *pr_abort; /* abrupt tear down: soabort() */
+ pr_aio_queue_t *pr_aio_queue; /* aio(9) */
+ pr_bind_t *pr_bind; /* bind(2) */
+ pr_bindat_t *pr_bindat; /* bindat(2) */
+ pr_listen_t *pr_listen; /* listen(2) */
+ pr_accept_t *pr_accept; /* accept(2) */
+ pr_connectat_t *pr_connectat; /* connectat(2) */
+ pr_connect2_t *pr_connect2; /* socketpair(2) */
+ pr_control_t *pr_control; /* ioctl(2) */
+ pr_rcvoob_t *pr_rcvoob; /* soreceive_rcvoob() */
+ pr_ctloutput_t *pr_ctloutput; /* control output (from above) */
+ pr_peeraddr_t *pr_peeraddr; /* getpeername(2) */
+ pr_sockaddr_t *pr_sockaddr; /* getsockname(2) */
+ pr_sense_t *pr_sense; /* stat(2) */
};
.Ed
.Pp
-The following functions handle the registration of a new domain,
-lookups of specific protocols and protocol types within those domains,
-and handle control messages from the system.
-.Pp
-.Fn pfctlinput
-is called by the system whenever an event occurs that could affect every
-domain.
-Examples of those types of events are routing table changes, interface
-shutdowns or certain
-.Tn ICMP
-message types.
-When called,
-.Fn pfctlinput
-calls the protocol specific
-.Fn pr_ctlinput
-function for each protocol in that has defined one, in every domain.
+The following functions handle the registration of new domains and protocols.
.Pp
.Fn domain_add
adds a new protocol domain to the system.
-The argument
-.Fa data
-is cast directly to
-.Vt "struct domain *"
-within the function, but is declared
-.Vt "void *"
-in order to prevent compiler warnings when new domains are registered with
-.Fn SYSINIT .
In most cases
.Fn domain_add
is not called directly, instead
.Fn DOMAIN_SET
-is used.
-.Pp
-If the new domain has defined a probe routine, it is called first in
+is used, which is a wrapper around
+.Fn SYSINIT
+macro.
+If the new domain has defined a
+.Va dom_probe
+routine, it is called first in
.Fn domain_add
to determine if the domain should be supported on the current system.
-If the probe routine returns a non-0 value, then the domain will not be
-marked as supported.
-Unsupported domains do not proceed with the initialization process and are not
-discoverable by
-.Fn pffinddomain ,
-.Fn pffindtype ,
-or
-.Fn pffindproto .
-.Pp
-.Fn domain_init
-is called after
-.Fn domain_add
-during boot and for each
-.Xr vnet 9 .
-If the new domain has defined an initialization routine, it is called during
-.Fn domain_init ;
-as well, each of the protocols within the domain that have defined an
-initialization routine will have theirs called.
-Note that domain initialization cannot fail at this time.
-.Pp
+If the probe routine returns a non-0 value, then the domain will not be added.
Once a domain is added it cannot be completely unloaded.
This is because there is
no reference counting system in place to determine if there are any
active references from sockets within that domain.
+However, the exprimental
+.Fn domain_remove
+exists, and unloadable domains may be supported in the future.
.Pp
-.Fn pffinddomain
-finds a domain by family.
-If the domain cannot be found,
-.Dv NULL
-is returned.
-.Pp
-.Fn pffindtype
-and
-.Fn pffindproto
-look up a protocol by its number or by its type.
-In most cases, if the protocol or type cannot be found,
-.Dv NULL
-is returned, but
-.Fn pffindproto
-may return the default if the requested type is
-.Dv SOCK_RAW ,
-a protocol switch type of
-.Dv SOCK_RAW
-is found, and the domain has a default raw protocol.
-.Pp
-Both functions are called by
-.Fn socreate
-in order to resolve the protocol for the socket currently being created.
-.Pp
-.Fn DOMAIN_SET
-is a macro that simplifies the registration of a domain via
-.Fn SYSINIT .
-The code resulting from the macro expects there to be a domain structure
-named
-.Dq Fa name Ns Li domain
-where
-.Fa name
-is the argument to
-.Fn DOMAIN_SET :
-.Bd -literal
-struct domain localdomain =
-{ AF_LOCAL, "local", unp_init, unp_externalize, unp_dispose,
- localsw, &localsw[sizeof(localsw)/sizeof(localsw[0])] };
-
-DOMAIN_SET(local);
+.Fn protosw_register
+dynamically adds a protocol to a domain, if the latter
+has an empty slot in its
+.Va dom_protosw .
+Dynamically added protocol can later be unloaded with
+.Fn protosw_unregister .
.Ed
.Sh RETURN VALUES
-Both
-.Fn pffindtype
+The
+.Fn domain_add
+never fails, but it may not add a domain if its
+.Va dom_probe
+fails.
+.Pp
+The
+.Fn protosw_register
+function may fail if:
+.Bl -tag -width Er
+.It Bq Er EEXIST
+A protocol with the same value of
+.Va pr_type
and
-.Fn pffindproto
-return a
-.Vt "struct protosw *"
-for the protocol requested.
-If the protocol or socket type is not found,
-.Dv NULL
-is returned.
-In the case of
-.Fn pffindproto ,
-the default protocol may be returned for
-.Dv SOCK_RAW
-types if the domain has a default raw protocol.
+.Va pr_protocol
+already exists in the domain.
+.It Bq Er ENOMEM
+The domain doesn't have any NULL slots in its
+.Va dom_protosw .
+.El
.Sh SEE ALSO
-.Xr socket 2
+.Xr socket 2 ,
+.Xr SYSINIT 9
.Sh HISTORY
-The functions
-.Fn domain_add ,
-.Fn pfctlinput ,
-.Fn pffinddomain ,
-.Fn pffindproto ,
-.Fn pffindtype
-and
-.Fn DOMAIN_SET
-first appeared in
-.Fx 4.4 .
+The
+.Nm
+subsystem first appeared in
+.Bx 4.3
+as the part of the very first
+.Xr socket 2
+API implementation.
+.Pp
+The
+.Nm
+subsystem and this manual page were significantly rewritten in
+.Fx 14 .
.Sh AUTHORS
This manual page was written by
-.An Chad David Aq Mt davidc@acns.ab.ca .
+.An Chad David Aq Mt davidc@acns.ab.ca
+and
+.An Gleb Smirnoff Aq Mt glebius@FreeBSD.org .
diff --git a/share/man/man9/domainset.9 b/share/man/man9/domainset.9
index 969d9dd3b554..816ce29f04f7 100644
--- a/share/man/man9/domainset.9
+++ b/share/man/man9/domainset.9
@@ -22,8 +22,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 14, 2021
.Dt DOMAINSET 9
.Os
diff --git a/share/man/man9/dpcpu.9 b/share/man/man9/dpcpu.9
index 1ab2766a5477..6a19b8de3950 100644
--- a/share/man/man9/dpcpu.9
+++ b/share/man/man9/dpcpu.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 5, 2018
.Dt DPCPU 9
.Os
diff --git a/share/man/man9/drbr.9 b/share/man/man9/drbr.9
index 9c641cd0e841..49c70bacb5ef 100644
--- a/share/man/man9/drbr.9
+++ b/share/man/man9/drbr.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 27, 2012
.Dt DRBR 9
.Os
diff --git a/share/man/man9/driver.9 b/share/man/man9/driver.9
index 5c47e39eb3d9..0cfbd2975ca9 100644
--- a/share/man/man9/driver.9
+++ b/share/man/man9/driver.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 19, 2022
.Dt DRIVER 9
.Os
diff --git a/share/man/man9/efirt.9 b/share/man/man9/efirt.9
index cdf0ea21ad8d..c31f52bf2245 100644
--- a/share/man/man9/efirt.9
+++ b/share/man/man9/efirt.9
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2018 Kyle Evans <kevans@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 2, 2021
.Dt EFIRT 9
.Os
diff --git a/share/man/man9/epoch.9 b/share/man/man9/epoch.9
index 1f191211b041..826f887212e1 100644
--- a/share/man/man9/epoch.9
+++ b/share/man/man9/epoch.9
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 30, 2020
+.Dd March 25, 2024
.Dt EPOCH 9
.Os
.Sh NAME
@@ -262,19 +260,15 @@ and then defers deletion.
More general mutation or a synchronous
free would have to follow a call to
.Fn epoch_wait .
-.Sh NOTES
-The
-.Nm
-kernel programming interface is under development and is subject to change.
.Sh SEE ALSO
+.Xr callout 9 ,
.Xr locking 9 ,
.Xr mtx_pool 9 ,
.Xr mutex 9 ,
.Xr rwlock 9 ,
.Xr sema 9 ,
.Xr sleep 9 ,
-.Xr sx 9 ,
-.Xr timeout 9
+.Xr sx 9
.Sh HISTORY
The
.Nm
diff --git a/share/man/man9/ether_gen_addr.9 b/share/man/man9/ether_gen_addr.9
index f69cb199e2c3..aa7d73ae0c8b 100644
--- a/share/man/man9/ether_gen_addr.9
+++ b/share/man/man9/ether_gen_addr.9
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (C) 2021 Kyle Evans <kevans@FreeBSD.org>
.\"
@@ -26,8 +26,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 1, 2021
.Dt ETHER_GEN_ADDR 9
.Os
diff --git a/share/man/man9/eventtimers.9 b/share/man/man9/eventtimers.9
index 686f63c0ddfc..bbf8307ee538 100644
--- a/share/man/man9/eventtimers.9
+++ b/share/man/man9/eventtimers.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 2, 2014
.Dt EVENTTIMERS 9
.Os
diff --git a/share/man/man9/extattr.9 b/share/man/man9/extattr.9
index bf79487f8bf4..3ee2ed5e2e83 100644
--- a/share/man/man9/extattr.9
+++ b/share/man/man9/extattr.9
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 23, 1999
+.Dd September 5, 2023
.Dt EXTATTR 9
.Os
.Sh NAME
@@ -56,6 +54,11 @@ attribute data is protected according the normal discretionary
and mandatory protections associated with the data in the file or
directory; system attribute data is protected such that appropriate
privilege is required to directly access or manipulate these attributes.
+By default, processes in a
+.Xr jail 8
+cannot access the system attribute data unless the
+.Va allow.extattr
+configuration parameter is specified.
.Pp
Reads of extended attribute data may return specific contiguous regions of
the meta-data, in the style of
@@ -79,8 +82,8 @@ Appropriate vnode extended attribute calls are:
and
.Xr VOP_SETEXTATTR 9 .
.Sh SEE ALSO
+.Xr jail 8 ,
.Xr VFS 9 ,
-.Xr VFS_EXTATTRCTL 9 ,
.Xr VOP_GETEXTATTR 9 ,
.Xr VOP_LISTEXTATTR 9 ,
.Xr VOP_SETEXTATTR 9
diff --git a/share/man/man9/fail.9 b/share/man/man9/fail.9
index d7447b1cd35d..346f4dc334a5 100644
--- a/share/man/man9/fail.9
+++ b/share/man/man9/fail.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 6, 2019
.Dt FAIL 9
.Os
diff --git a/share/man/man9/fdt_pinctrl.9 b/share/man/man9/fdt_pinctrl.9
index 8f1f24a07a52..6c50488ca2ce 100644
--- a/share/man/man9/fdt_pinctrl.9
+++ b/share/man/man9/fdt_pinctrl.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 23, 2018
.Dt fdt_pinctrl 9
.Os
diff --git a/share/man/man9/fetch.9 b/share/man/man9/fetch.9
index 16acb542c625..c544ec802d68 100644
--- a/share/man/man9/fetch.9
+++ b/share/man/man9/fetch.9
@@ -32,8 +32,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 22, 2021
.Dt FETCH 9
.Os
diff --git a/share/man/man9/firmware.9 b/share/man/man9/firmware.9
index 6d91beb3ddd1..883f0a2634d4 100644
--- a/share/man/man9/firmware.9
+++ b/share/man/man9/firmware.9
@@ -21,9 +21,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd January 27, 2021
+.Dd January 25, 2024
.Dt FIRMWARE 9
.Os
.Sh NAME
@@ -91,9 +89,12 @@ and unregistered by calling
These functions are usually (but not exclusively) called by
specially crafted kernel modules that contain the firmware image.
The modules can be statically compiled in the kernel, or loaded by
-.Nm /boot/loader ,
+.Pa /boot/loader ,
manually at runtime, or on demand by the firmware subsystem.
.Pp
+Firmware binary files may also be loaded directly rather than embedded into
+kernel modules.
+.Pp
.Nm Clients
of the firmware subsystem can request access to a given image
by calling the function
@@ -188,7 +189,7 @@ By default a firmware image will be deferred to a
.Xr taskqueue 9
thread so the call may be done while holding a lock.
In certain cases, such as on driver detach, this cannot be allowed.
-.Sh FIRMWARE LOADING MECHANISMS
+.Sh FIRMWARE LOADING VIA MODULES
As mentioned before, any component of the system can register
firmware images at any time by simply calling
.Fn firmware_register .
@@ -196,7 +197,7 @@ firmware images at any time by simply calling
This is typically done when a module containing
a firmware image is given control,
whether compiled in, or preloaded by
-.Nm /boot/loader ,
+.Pa /boot/loader ,
or manually loaded with
.Xr kldload 8 .
However, a system can implement additional mechanisms to bring
@@ -222,7 +223,7 @@ In particular, images are looked up in the directories specified
by the sysctl variable
.Nm kern.module_path
which on most systems defaults to
-.Nm /boot/kernel;/boot/modules .
+.Pa /boot/kernel;/boot/modules .
.Pp
Note that in case a module contains multiple images,
the caller should first request a
@@ -254,26 +255,24 @@ colon-separated tuples indicating the image_file's to be embedded
in the module, the imagename and version of each firmware image.
.Pp
If you need to embed firmware images into a system, you should write
-appropriate entries in the <files.arch> file, e.g. this example is
+appropriate entries in the <files.arch> or <files> file, e.g. this example is
from
-.Nm sys/arm/xscale/ixp425/files.ixp425 :
+.Nm sys/conf/files
.Bd -literal
-ixp425_npe_fw.c optional npe_fw \\
- compile-with "${AWK} -f $S/tools/fw_stub.awk \\
- IxNpeMicrocode.dat:npe_fw -mnpe -c${.TARGET}" \\
- no-implicit-rule before-depend local \\
- clean "ixp425_npe_fw.c"
+iwn1000fw.c optional iwn1000fw | iwnfw \\
+ compile-with "${AWK} -f $S/tools/fw_stub.awk iwn1000.fw:iwn1000fw -miwn1000fw -c${.TARGET}" \\
+ no-ctfconvert no-implicit-rule before-depend local \\
+ clean "iwn1000fw.c"
#
# NB: ld encodes the path in the binary symbols generated for the
# firmware image so link the file to the object directory to
# get known values for reference in the _fw.c file.
#
-IxNpeMicrocode.fwo optional npe_fw \\
- dependency "IxNpeMicrocode.dat" \\
- compile-with "${LD} -b binary -d -warn-common \\
- -r -d -o ${.TARGET} IxNpeMicrocode.dat" \\
- no-implicit-rule \\
- clean "IxNpeMicrocode.fwo"
+iwn1000fw.fwo optional iwn1000fw | iwnfw \\
+ dependency "iwn1000.fw" \\
+ compile-with "${NORMAL_FWO}" \\
+ no-implicit-rule \\
+ clean "iwn1000fw.fwo"
.Ed
.Pp
Firmware was previously committed to the source tree as uuencoded files,
@@ -285,16 +284,102 @@ the availability of the following tools:
.Xr awk 1 ,
.Xr make 1 ,
the compiler and the linker.
+.Sh LOADING BINARY FIRMWARE FILES
+.Ss Binary Firmware Format
+Binary firmware files can also be loaded, either from
+.Pa /boot/loader ,
+or when
+.Nm firmware_get
+cannot find the registered firmware from a kernel module.
+Binary firmware files are raw binary files that the creator of the firmware
+made.
+They offer an easier way to load firmware, but one that lacks the full
+flexibility and generality of kernel modules with the following restrictions:
+.Bl -bullet -compact
+.It
+Binary firmware files only hold one set of firmware.
+.It
+They do not offer kernel module dependencies to ensure they are loaded
+automatically by the boot loader.
+.It
+They cannot be compiled into the kernel.
+.It
+The
+.Nm imagename
+is identical to the full path name used to load the module.
+.It
+The version number is assumed to be zero.
+.El
+.Ss Loading from Pa /boot/loader
+Binary firmware files may be loaded either from the command line with
+.Dq load -t firmware /boot/firmware/filename
+or using the
+.Xr loader.conf 5
+mechanism to load modules with a type of
+.Dq firmware
+For example
+.Bd -literal
+wififw_load="YES"
+wififw_name="/boot/firmware/wifi2034_fw.bin"
+wififw_type="firmware"
+.Ed
+.Ss On demand loading from Nm firmware_get
+If no kernel module with an embedded firmware image named
+.Nm imagename
+is loaded, then
+.Nm imagename
+will be appended to the module path (by default
+.Pa /boot/firmware/ )
+and if that file exists, it will be loaded and registered using
+.Nm firmware_register
+using the full path to the filename as
+.Nm imagename .
+.Ss Searching for imagename
+.Nm firmware_get
+uses the following algorithm to find firmware images:
+.Bl -bullet -compact
+.It
+If an existing firmware image is registered for
+.Fa imagename,
+.that image is returned.
+.It
+If
+.Fa imagename
+matches the trailing subpath of a registered image with a full path, that image is returned.
+.It
+he kernel linker searches for a kernel module named
+.Fa imagename .
+If a kernel module is found, it is loaded, and
+the list of registered firmware images is searched again.
+If a match is found, the matching image is returned.
+.It
+The kernel searches for a file named
+.Fa imagename
+in the firmware image path
+(by default
+.Pa /boot/firmware/ ) .
+If that file exists and can be read,
+it contents are registered as a firmware image with the full path as the
+.Nm imagename
+and that firmware is returned.
+Currently, there is an 8MB limit on the size of the firmware image.
+This can be changed by by the sysctl variable
+.Nm debug.max_firmware_size .
+.El
.Sh SEE ALSO
.Xr kld 4 ,
.Xr module 9
.Pp
+.Pa /boot/firmware
+.Pp
.Pa /usr/share/examples/kld/firmware
.Sh HISTORY
The
.Nm firmware
system was introduced in
.Fx 6.1 .
+Binary firmware loading was introduced in
+.Fx 15.0 .
.Sh AUTHORS
This manual page was written by
.An Max Laier Aq Mt mlaier@FreeBSD.org .
diff --git a/share/man/man9/fpu_kern.9 b/share/man/man9/fpu_kern.9
index 9b0da289ef40..92dc0eaa7e17 100644
--- a/share/man/man9/fpu_kern.9
+++ b/share/man/man9/fpu_kern.9
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 13, 2020
.Dt FPU_KERN 9
.Os
@@ -187,7 +185,8 @@ and false otherwise.
.Sh NOTES
The
.Nm
-is currently implemented only for the i386, amd64, and arm64 architectures.
+is currently implemented only for the i386, amd64, arm64, and powerpc
+architectures.
.Pp
There is no way to handle floating point exceptions raised from
kernel mode.
@@ -207,6 +206,8 @@ facitily and this manual page were written by
.An Konstantin Belousov Aq Mt kib@FreeBSD.org .
The arm64 support was added by
.An Andrew Turner Aq Mt andrew@FreeBSD.org .
+The powerpc support was added by
+.An Shawn Anastasio Aq Mt sanastasio@raptorengineering.com .
.Sh BUGS
.Fn fpu_kern_leave
should probably have type
diff --git a/share/man/man9/g_access.9 b/share/man/man9/g_access.9
index fcfc86958581..ef90af07574a 100644
--- a/share/man/man9/g_access.9
+++ b/share/man/man9/g_access.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 16, 2004
.Dt G_ACCESS 9
.Os
diff --git a/share/man/man9/g_attach.9 b/share/man/man9/g_attach.9
index afacc90eb932..92f801c5ffea 100644
--- a/share/man/man9/g_attach.9
+++ b/share/man/man9/g_attach.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 10, 2020
.Dt G_ATTACH 9
.Os
diff --git a/share/man/man9/g_bio.9 b/share/man/man9/g_bio.9
index 9b317416303b..407c38e6ca70 100644
--- a/share/man/man9/g_bio.9
+++ b/share/man/man9/g_bio.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 7, 2019
.Dt G_BIO 9
.Os
@@ -228,7 +226,7 @@ string, followed by the formatted
followed by a
.Fa fmtsuffix
in the style of
-.Xr 9 printf .
+.Xr printf 9 .
Any of the prefix or suffix strings may be the empty string.
.Fn g_print_bio
always prints a newline character at the end of the line.
diff --git a/share/man/man9/g_consumer.9 b/share/man/man9/g_consumer.9
index 1cdcacd8d975..a565b50e1ef1 100644
--- a/share/man/man9/g_consumer.9
+++ b/share/man/man9/g_consumer.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 16, 2004
.Dt G_CONSUMER 9
.Os
diff --git a/share/man/man9/g_data.9 b/share/man/man9/g_data.9
index 698195019c4f..716d0be718c3 100644
--- a/share/man/man9/g_data.9
+++ b/share/man/man9/g_data.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 30, 2020
.Dt G_DATA 9
.Os
diff --git a/share/man/man9/g_event.9 b/share/man/man9/g_event.9
index 32c4703100d8..e6fea9024d04 100644
--- a/share/man/man9/g_event.9
+++ b/share/man/man9/g_event.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 23, 2021
.Dt G_EVENT 9
.Os
diff --git a/share/man/man9/g_geom.9 b/share/man/man9/g_geom.9
index 3deb032a8bc2..74c6979fceda 100644
--- a/share/man/man9/g_geom.9
+++ b/share/man/man9/g_geom.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 24, 2016
.Dt G_GEOM 9
.Os
diff --git a/share/man/man9/g_provider.9 b/share/man/man9/g_provider.9
index b22ae0bc9044..d421af3b1264 100644
--- a/share/man/man9/g_provider.9
+++ b/share/man/man9/g_provider.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 16, 2004
.Dt G_PROVIDER 9
.Os
diff --git a/share/man/man9/g_provider_by_name.9 b/share/man/man9/g_provider_by_name.9
index 8293b15b8043..6c7e87c0276b 100644
--- a/share/man/man9/g_provider_by_name.9
+++ b/share/man/man9/g_provider_by_name.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 29, 2021
.Dt G_PROVIDER_BY_NAME 9
.Os
diff --git a/share/man/man9/g_wither_geom.9 b/share/man/man9/g_wither_geom.9
index 337d9628d6d2..4e34cea9f5e5 100644
--- a/share/man/man9/g_wither_geom.9
+++ b/share/man/man9/g_wither_geom.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 16, 2004
.Dt G_WITHER_GEOM 9
.Os
diff --git a/share/man/man9/get_cyclecount.9 b/share/man/man9/get_cyclecount.9
index eb8a5c5a2f3e..52242dd5c65d 100644
--- a/share/man/man9/get_cyclecount.9
+++ b/share/man/man9/get_cyclecount.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 15, 2011
.Dt GET_CYCLECOUNT 9
.Os
diff --git a/share/man/man9/getenv.9 b/share/man/man9/getenv.9
index 072f42474fba..0550814871fa 100644
--- a/share/man/man9/getenv.9
+++ b/share/man/man9/getenv.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 21, 2020
.Dt GETENV 9
.Os
diff --git a/share/man/man9/getnewvnode.9 b/share/man/man9/getnewvnode.9
index 57ecc986c7cd..d35c1a080158 100644
--- a/share/man/man9/getnewvnode.9
+++ b/share/man/man9/getnewvnode.9
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 21, 2001
+.Dd November 1, 2023
.Dt GETNEWVNODE 9
.Os
.Sh NAME
@@ -37,14 +35,12 @@
.In sys/vnode.h
.In sys/mount.h
.Ft int
-.Fn getnewvnode "const char *tag" "struct mount *mp" "vop_t **vops" "struct vnode **vpp"
+.Fn getnewvnode "const char *tag" "struct mount *mp" "struct vop_vector *vops" "struct vnode **vpp"
.Sh DESCRIPTION
The
.Fn getnewvnode
function initializes a new vnode, assigning it the vnode operations passed in
.Fa vops .
-The vnode is either freshly allocated, or taken from the head of the
-free list depending on the number of vnodes already in the system.
.Pp
The arguments to
.Fn getnewvnode
@@ -63,7 +59,8 @@ Points to the new vnode upon successful completion.
.Sh RETURN VALUES
.Fn getnewvnode
returns 0 on success.
-There are currently no failure conditions - that do not result in a panic.
+.Sh BUGS
+It never returns an error, instead either succeeds or blocks indefinitely.
.Sh AUTHORS
This manual page was written by
.An Chad David Aq Mt davidc@acns.ab.ca .
diff --git a/share/man/man9/gone_in.9 b/share/man/man9/gone_in.9
index b2474d610b24..7521adfda204 100644
--- a/share/man/man9/gone_in.9
+++ b/share/man/man9/gone_in.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 16, 2021
.Dt GONE_IN 9
.Os
diff --git a/share/man/man9/groupmember.9 b/share/man/man9/groupmember.9
index 84d57e63208e..b7865a35fdc9 100644
--- a/share/man/man9/groupmember.9
+++ b/share/man/man9/groupmember.9
@@ -1,5 +1,6 @@
.\"
.\" Copyright (C) 2001 Chad David <davidc@acns.ab.ca>. All rights reserved.
+.\" Copyright (C) 2023 Olivier Certner <olce.freebsd@certner.fr>
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -24,37 +25,55 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 9, 2001
+.Dd August 18, 2023
.Dt GROUPMEMBER 9
.Os
.Sh NAME
.Nm groupmember
-.Nd checks group set for a group ID
+.Nd checks if credentials mandate some group membership
.Sh SYNOPSIS
.In sys/param.h
.In sys/ucred.h
-.Ft int
+.Ft bool
.Fn groupmember "gid_t gid" "struct ucred *cred"
+.Ft bool
+.Fn realgroupmember "gid_t gid" "struct ucred *cred"
.Sh DESCRIPTION
The
.Fn groupmember
-function checks to see if the given
-.Fa gid
-is in the group set of the credentials.
+function checks if credentials
+.Fa cred
+indicate that the associated subject or object is a member of the group
+designated by the group ID
+.Fa gid .
+.Pp
+Considered groups in
+.Fa cred
+are the effective and supplementary groups.
+The real group is not taken into account.
.Pp
-Its arguments are:
-.Bl -tag -width ".Fa cred"
-.It Fa gid
-The group ID to check for.
-.It Fa cred
-The credentials to search for the group in.
-.El
+Function
+.Fn realgroupmember
+works the same except that it considers instead the real and supplementary
+groups, and not the effective one.
.Sh RETURN VALUES
-If the
-.Fa gid
-is found, 1 is returned; otherwise, 0 is returned.
+The
+.Fn groupmember
+and
+.Fn realgroupmember
+functions return
+.Dv true
+if the given credentials indicate membership of the group
+.Fa gid ,
+or
+.Dv false
+otherwise.
+.Sh SEE ALSO
+.Xr getgroups 2
+.Xr setgroups 2
.Sh AUTHORS
-This manual page was written by
-.An Chad David Aq Mt davidc@acns.ab.ca .
+This manual page was initially written by
+.An -nosplit
+.An Chad David Aq Mt davidc@acns.ab.ca
+and was revised by
+.An Olivier Certner Aq Mt olce.freebsd@certner.fr .
diff --git a/share/man/man9/hardclock.9 b/share/man/man9/hardclock.9
index 451ad8a28a93..757aed112ccb 100644
--- a/share/man/man9/hardclock.9
+++ b/share/man/man9/hardclock.9
@@ -27,7 +27,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd July 1, 2021
+.Dd February 27, 2023
.Dt HARDCLOCK 9
.Os
.Sh NAME
@@ -44,19 +44,18 @@ The rate ranges from
.Va hz
times per second on a very busy system, to twice a second on an idle system.
The
-.Va cnt
+.Fa cnt
argument reports an estimate of the number of ticks since the last call.
-The sum of
-.Va cnt
-over a second averages
-.Va hz
-over the long haul.
+Over long timescales, the average sum of
+.Fa cnt
+over one second is
+.Va hz .
See
.Xr hz 9
for important details over shorter time scales.
-The argument
-.Va usermode
-is none-zero when
+The
+.Fa usermode
+argument is non-zero when
.Fn hardclock
is called from an context that interrupted usermode execution.
.Pp
@@ -77,18 +76,23 @@ or
.Xr adjtime 2
induced changes and leap seconds, as well as any necessary
compensations to keep in sync with PPS signals or external clocks, if
-support for this is in the kernel (see
-.Xr options 4 ) .
+supported by the kernel.
.It
-Schedule softclock interrupts (
-.Xr swi 9 )
+Schedule softclock interrupts
+.Po
+.Xr swi 9
+.Pc
processing.
.It
Collect
.Xr hwpmc 4
statistics.
.It
-Do device polling, when enabled.
+Do device polling, when enabled
+.Po
+see
+.Xr polling 4
+.Pc .
.It
Implement software
.Xr watchdog 9
@@ -102,5 +106,11 @@ processing.
.Xr adjtime 2 ,
.Xr ntp_adjtime 2 ,
.Xr signal 3 ,
+.Xr hwpmc 4 ,
+.Xr polling 4 ,
.Xr ntpd 8 ,
-.Xr hz 9
+.Xr epoch 9 ,
+.Xr eventtimers 9 ,
+.Xr hz 9 ,
+.Xr swi 9 ,
+.Xr watchdog 9
diff --git a/share/man/man9/hash.9 b/share/man/man9/hash.9
index 9dade6cd1eab..d97ad251a1e0 100644
--- a/share/man/man9/hash.9
+++ b/share/man/man9/hash.9
@@ -24,7 +24,6 @@
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.\" $OpenBSD: hash.9,v 1.5 2003/04/17 05:08:39 jmc Exp $
-.\" $FreeBSD$
.\"
.Dd June 30, 2015
.Dt HASH 9
diff --git a/share/man/man9/hashinit.9 b/share/man/man9/hashinit.9
index 5357a95e04fa..7d2f75d58d03 100644
--- a/share/man/man9/hashinit.9
+++ b/share/man/man9/hashinit.9
@@ -23,8 +23,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 29, 2016
.Dt HASHINIT 9
.Os
diff --git a/share/man/man9/hexdump.9 b/share/man/man9/hexdump.9
index a731ab51ab93..c5a8f41882bc 100644
--- a/share/man/man9/hexdump.9
+++ b/share/man/man9/hexdump.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 7, 2003
.Dt HEXDUMP 9
.Os
diff --git a/share/man/man9/hhook.9 b/share/man/man9/hhook.9
index 78e79d88cce6..592ac7a91414 100644
--- a/share/man/man9/hhook.9
+++ b/share/man/man9/hhook.9
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 21, 2013
.Dt HHOOK 9
.Os
diff --git a/share/man/man9/ieee80211.9 b/share/man/man9/ieee80211.9
index 35624f5f39cd..100b4e7540a5 100644
--- a/share/man/man9/ieee80211.9
+++ b/share/man/man9/ieee80211.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 26, 2021
.Dt IEEE80211 9
.Os
diff --git a/share/man/man9/ieee80211_amrr.9 b/share/man/man9/ieee80211_amrr.9
index a90de3dc257a..69aa48184ff7 100644
--- a/share/man/man9/ieee80211_amrr.9
+++ b/share/man/man9/ieee80211_amrr.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 2009
.Dt IEEE8021_AMRR 9
.Os
diff --git a/share/man/man9/ieee80211_beacon.9 b/share/man/man9/ieee80211_beacon.9
index 87115fcbd601..3738b7dfabf8 100644
--- a/share/man/man9/ieee80211_beacon.9
+++ b/share/man/man9/ieee80211_beacon.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 2009
.Dt IEEE80211_BEACON 9
.Os
diff --git a/share/man/man9/ieee80211_bmiss.9 b/share/man/man9/ieee80211_bmiss.9
index 63b8e9f4ad51..2c3661b6f892 100644
--- a/share/man/man9/ieee80211_bmiss.9
+++ b/share/man/man9/ieee80211_bmiss.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 2009
.Dt IEEE80211_BMISS 9
.Os
diff --git a/share/man/man9/ieee80211_crypto.9 b/share/man/man9/ieee80211_crypto.9
index 1335551ad9f4..7e2d55588133 100644
--- a/share/man/man9/ieee80211_crypto.9
+++ b/share/man/man9/ieee80211_crypto.9
@@ -23,8 +23,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.\" $Id: ieee80211_crypto.9,v 1.3 2004/03/04 10:42:56 bruce Exp $
.\"
.Dd March 29, 2010
diff --git a/share/man/man9/ieee80211_ddb.9 b/share/man/man9/ieee80211_ddb.9
index 8deaee73c815..0b4e9e233324 100644
--- a/share/man/man9/ieee80211_ddb.9
+++ b/share/man/man9/ieee80211_ddb.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 2009
.Dt IEEE80211_DDB 9
.Os
@@ -52,7 +50,7 @@ support for displaying important data structures.
This is especially important because wireless applications are often
built for embedded environments where cross-machine or post-mortem
debugging facilities like
-.Xr kgdb 1
+.Xr kgdb 1 Pq Pa ports/devel/gdb
are infeasible.
.Pp
The most commonly used command is
diff --git a/share/man/man9/ieee80211_input.9 b/share/man/man9/ieee80211_input.9
index 9422f0bc6330..7556bbc61291 100644
--- a/share/man/man9/ieee80211_input.9
+++ b/share/man/man9/ieee80211_input.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 2009
.Dt IEEE80211_INPUT 9
.Os
diff --git a/share/man/man9/ieee80211_node.9 b/share/man/man9/ieee80211_node.9
index b5f3e618a1a0..6dd492e3b33d 100644
--- a/share/man/man9/ieee80211_node.9
+++ b/share/man/man9/ieee80211_node.9
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 28, 2010
+.Dd October 2, 2023
.Dt IEEE80211_NODE 9
.Os
.Sh NAME
@@ -52,9 +50,6 @@
.Fn ieee80211_ref_node "struct ieee80211_node *"
.\"
.Ft void
-.Fn ieee80211_unref_node "struct ieee80211_node *"
-.\"
-.Ft void
.Fn ieee80211_free_node "struct ieee80211_node *"
.\"
.Ft void
@@ -108,14 +103,10 @@ Routines that lookup a table entry return a
(i.e. a pointer to a table entry with the reference count incremented).
The
.Fn ieee80211_ref_node
-and
-.Fn ieee80211_unref_node
-calls explicitly increment/decrement the reference count of a node,
-but are rarely used.
-Instead most callers use
+call explicitly increments the reference count of a node.
.Fn ieee80211_free_node
-to release a reference and, if the count goes to zero, reclaim the
-table entry.
+decrements the reference count of a node and if the count goes to zero
+reclaims the table entry.
.Pp
The station table and its entries are exposed to drivers in several ways.
Each frame transmitted to a station includes a reference to the
diff --git a/share/man/man9/ieee80211_output.9 b/share/man/man9/ieee80211_output.9
index 6a8d3a71e0d8..80aa6d69e05d 100644
--- a/share/man/man9/ieee80211_output.9
+++ b/share/man/man9/ieee80211_output.9
@@ -23,8 +23,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.\" $Id: ieee80211_output.9,v 1.5 2004/03/04 12:31:18 bruce Exp $
.\"
.Dd March 29, 2010
diff --git a/share/man/man9/ieee80211_proto.9 b/share/man/man9/ieee80211_proto.9
index 6b0da064d811..9d2b38829be1 100644
--- a/share/man/man9/ieee80211_proto.9
+++ b/share/man/man9/ieee80211_proto.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 2009
.Dt IEEE80211_PROTO 9
.Os
diff --git a/share/man/man9/ieee80211_radiotap.9 b/share/man/man9/ieee80211_radiotap.9
index b7db14a0df02..74e4f8395805 100644
--- a/share/man/man9/ieee80211_radiotap.9
+++ b/share/man/man9/ieee80211_radiotap.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 11, 2019
.Dt IEEE80211_RADIOTAP 9
.Os
diff --git a/share/man/man9/ieee80211_regdomain.9 b/share/man/man9/ieee80211_regdomain.9
index da310ddc7232..cf632724b939 100644
--- a/share/man/man9/ieee80211_regdomain.9
+++ b/share/man/man9/ieee80211_regdomain.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 2009
.Dt IEEE80211_REGDOMAIN 9
.Os
diff --git a/share/man/man9/ieee80211_scan.9 b/share/man/man9/ieee80211_scan.9
index 54cefa750645..9dd0b125144a 100644
--- a/share/man/man9/ieee80211_scan.9
+++ b/share/man/man9/ieee80211_scan.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 29, 2010
.Dt IEEE80211_SCAN 9
.Os
diff --git a/share/man/man9/ieee80211_vap.9 b/share/man/man9/ieee80211_vap.9
index bd8d2a8a7184..ee811107f035 100644
--- a/share/man/man9/ieee80211_vap.9
+++ b/share/man/man9/ieee80211_vap.9
@@ -23,10 +23,8 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 4, 2009
-.Dt IEEE8021_VAP 9
+.Dt IEEE80211_VAP 9
.Os
.Sh NAME
.Nm net80211_vap
diff --git a/share/man/man9/iflib.9 b/share/man/man9/iflib.9
index 263cc2c9ec15..9f312b9d4c2b 100644
--- a/share/man/man9/iflib.9
+++ b/share/man/man9/iflib.9
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.Dd September 20, 2018
.Dt IFLIB 9
.Os
diff --git a/share/man/man9/iflibdd.9 b/share/man/man9/iflibdd.9
index 511121843210..67645fe5c87a 100644
--- a/share/man/man9/iflibdd.9
+++ b/share/man/man9/iflibdd.9
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.Dd May 3, 2018
.Dt IFLIBDD 9
.Os
diff --git a/share/man/man9/iflibdi.9 b/share/man/man9/iflibdi.9
index 0d40333dd528..57fa02c60b25 100644
--- a/share/man/man9/iflibdi.9
+++ b/share/man/man9/iflibdi.9
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.Dd May 21, 2019
.Dt IFLIBDI 9
.Os
diff --git a/share/man/man9/iflibtxrx.9 b/share/man/man9/iflibtxrx.9
index adb44def1d3f..df017dea0130 100644
--- a/share/man/man9/iflibtxrx.9
+++ b/share/man/man9/iflibtxrx.9
@@ -1,4 +1,3 @@
-.\" $FreeBSD$
.Dd December 17, 2020
.Dt IFLIBTXTX 9
.Os
diff --git a/share/man/man9/ifnet.9 b/share/man/man9/ifnet.9
index dd203cb5580b..b835c51c546f 100644
--- a/share/man/man9/ifnet.9
+++ b/share/man/man9/ifnet.9
@@ -26,8 +26,6 @@
.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 24, 2022
.Dt IFNET 9
.Os
@@ -736,9 +734,9 @@ This Ethernet interface supports TCP6 Segmentation offloading.
A shorthand for
.Pq Dv IFCAP_TSO4 | IFCAP_TSO6 .
.It Dv IFCAP_TOE4
-This Ethernet interface supports TCP offloading.
+This Ethernet interface supports TCP4 Offload Engine.
.It Dv IFCAP_TOE6
-This Ethernet interface supports TCP6 offloading.
+This Ethernet interface supports TCP6 Offload Engine.
.It Dv IFCAP_TOE
A shorthand for
.Pq Dv IFCAP_TOE4 | IFCAP_TOE6 .
@@ -753,13 +751,6 @@ as those sent by
.It Dv IFCAP_WOL
A shorthand for
.Pq Dv IFCAP_WOL_UCAST | IFCAP_WOL_MCAST | IFCAP_WOL_MAGIC .
-.It Dv IFCAP_TOE4
-This Ethernet interface supports TCP4 Offload Engine.
-.It Dv IFCAP_TOE6
-This Ethernet interface supports TCP6 Offload Engine.
-.It Dv IFCAP_TOE
-A shorthand for
-.Pq Dv IFCAP_TOE4 | IFCAP_TOE6 .
.It Dv IFCAP_VLAN_HWFILTER
This interface supports frame filtering in hardware on
.Xr vlan 4
diff --git a/share/man/man9/inittodr.9 b/share/man/man9/inittodr.9
index 61524f206296..9fc697da14a1 100644
--- a/share/man/man9/inittodr.9
+++ b/share/man/man9/inittodr.9
@@ -29,8 +29,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 22, 1997
.Dt INITTODR 9
.Os
diff --git a/share/man/man9/insmntque.9 b/share/man/man9/insmntque.9
index 543c64a2bbe1..869d8767632b 100644
--- a/share/man/man9/insmntque.9
+++ b/share/man/man9/insmntque.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 29, 2022
.Dt INSMNTQUE 9
.Os
diff --git a/share/man/man9/intr_event.9 b/share/man/man9/intr_event.9
new file mode 100644
index 000000000000..d1964ce289a5
--- /dev/null
+++ b/share/man/man9/intr_event.9
@@ -0,0 +1,473 @@
+.\" Copyright (c) 2001 John H. Baldwin <jhb@FreeBSD.org>
+.\" Copyright (c) 2006 Tom Rhodes <trhodes@FreeBSD.org>
+.\" Copyright (c) 2021 Mitchell Horne <mhorne@FreeBSD.org>
+.\" Copyright (c) 2022 The FreeBSD Foundation
+.\"
+.\" Portions of this documentation were written by Mitchell Horne
+.\" under sponsorship from the FreeBSD Foundation.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 October 30, 2022
+.Dt INTR_EVENT 9
+.Os
+.Sh NAME
+.Nm intr_event_add_handler ,
+.Nm intr_event_create ,
+.Nm intr_event_destroy ,
+.Nm intr_event_handle ,
+.Nm intr_event_remove_handler ,
+.Nm intr_priority
+.Nd "kernel interrupt handler and thread API"
+.Sh SYNOPSIS
+.In sys/param.h
+.In sys/bus.h
+.In sys/interrupt.h
+.Ft int
+.Fo intr_event_add_handler
+.Fa "struct intr_event *ie"
+.Fa "const char *name"
+.Fa "driver_filter_t filter"
+.Fa "driver_intr_t handler"
+.Fa "void *arg"
+.Fa "u_char pri"
+.Fa "enum intr_type flags"
+.Fa "void **cookiep"
+.Fc
+.Ft int
+.Fo intr_event_create
+.Fa "struct intr_event **event"
+.Fa "void *source"
+.Fa "int flags"
+.Fa "int irq"
+.Fa "void (*pre_ithread)(void *)"
+.Fa "void (*post_ithread)(void *)"
+.Fa "void (*post_filter)(void *)"
+.Fa "int (*assign_cpu)(void *, int)"
+.Fa "const char *fmt"
+.Fa "..."
+.Fc
+.Ft int
+.Fn intr_event_destroy "struct intr_event *ie"
+.Ft int
+.Fn intr_event_handle "struct intr_event *ie" "struct trapframe *frame"
+.Ft int
+.Fn intr_event_remove_handler "void *cookie"
+.Ft u_char
+.Fn intr_priority "enum intr_type flags"
+.Sh DESCRIPTION
+The interrupt event API provides methods to manage the registration and
+execution of interrupt handlers and their associated thread contexts.
+.Pp
+Each interrupt event in the system corresponds to a single hardware or software
+interrupt source.
+Each interrupt event maintains a list of interrupt handlers, sorted by
+priority, which will be invoked when handling the event.
+An interrupt event will typically, but not always, have an associated
+.Xr kthread 9 ,
+known as the interrupt thread.
+Finally, each event contains optional callback functions which will be
+invoked before and after the handler functions themselves.
+.Pp
+An interrupt handler contains two distinct handler functions:
+the
+.Em filter
+and the thread
+.Em handler .
+The
+.Em filter
+function is run from interrupt context and is intended to perform quick
+handling such as acknowledging or masking a hardware interrupt,
+and queueing work for the ensuing thread
+.Em handler .
+Both functions are optional; each interrupt handler may choose to register a
+filter, a thread handler, or both.
+Each interrupt handler also consists of a name,
+a set of flags,
+and an opaque argument which will be passed to both the
+.Em filter
+and
+.Em handler
+functions.
+.Ss Handler Constraints
+The
+.Em filter
+function is executed inside a
+.Xr critical 9
+section.
+Therefore, filters may not yield the CPU for any reason, and may only use spin
+locks to access shared data.
+Allocating memory within a filter is not permitted.
+.Pp
+The
+.Em handler
+function executes from the context of the associated interrupt kernel thread.
+Sleeping is not permitted, but the interrupt thread may be preempted by higher
+priority threads.
+Thus, threaded handler functions may obtain non-sleepable locks, as described
+in
+.Xr locking 9 .
+Any memory or zone allocations in an interrupt thread must specify the
+.Dv M_NOWAIT
+flag, and any allocation errors must be handled.
+.Pp
+The exception to these constraints is software interrupt threads, which are
+allowed to sleep but should be allocated and scheduled using the
+.Xr swi 9
+interface.
+.Ss Function Descriptions
+The
+.Fn intr_event_create
+function creates a new interrupt event.
+The
+.Fa event
+argument points to a
+.Vt struct intr_event
+pointer that will reference the newly created event upon success.
+The
+.Fa source
+argument is an opaque pointer which will be passed to the
+.Fa pre_ithread ,
+.Fa post_ithread ,
+and
+.Fa post_filter
+callbacks.
+The
+.Fa flags
+argument is a mask of properties of this thread.
+The only valid flag currently for
+.Fn intr_event_create
+is
+.Dv IE_SOFT
+to specify that this interrupt thread is a software interrupt.
+The
+.Fa enable
+and
+.Fa disable
+arguments specify optional functions used to enable and disable this
+interrupt thread's interrupt source.
+The
+.Fa irq
+argument is the unique interrupt vector number corresponding to the event.
+The
+.Fa pre_ithread ,
+.Fa post_ithread ,
+and
+.Fa post_filter
+arguments are callback functions that are invoked at different
+points while handling an interrupt.
+This is described in more detail in the
+.Sx Handler Callbacks
+section, below.
+They may be
+.Va NULL
+to specify no callback.
+The
+.Fa assign_cpu
+argument points to a callback function that will be invoked when binding
+an interrupt to a particular CPU.
+It may be
+.Va NULL
+if binding is unsupported.
+The
+remaining arguments form a
+.Xr printf 9
+argument list that is used to build the base name of the new interrupt thread.
+The full name of an interrupt thread is formed by concatenating the base
+name of the interrupt thread with the names of all of its interrupt handlers.
+.Pp
+The
+.Fn intr_event_destroy
+function destroys a previously created interrupt event by releasing its
+resources.
+.\" The following is not true (yet):
+.\"and arranging for the backing kernel thread to terminate.
+An interrupt event can only be destroyed if it has no handlers remaining.
+.Pp
+The
+.Fn intr_event_add_handler
+function adds a new handler to an existing interrupt event specified by
+.Fa ie .
+The
+.Fa name
+argument specifies a name for this handler.
+The
+.Fa filter
+argument provide the filter function to execute.
+The
+.Fa handler
+argument provides the handler function to be executed from the
+event's interrupt thread.
+The
+.Fa arg
+argument will be passed to the
+.Fa filter
+and
+.Fa handler
+functions when they are invoked.
+The
+.Fa pri
+argument specifies the priority of this handler,
+corresponding to the values defined in
+.In sys/priority.h .
+It determines the order this handler is called relative to the other handlers
+for this event, as well as the scheduling priority of the backing kernel
+thread.
+.Fa flags
+argument can be used to specify properties of this handler as defined in
+.In sys/bus.h .
+If
+.Fa cookiep
+is not
+.Dv NULL ,
+then it will be assigned a cookie that can be used later to remove this
+handler.
+.Pp
+The
+.Fn intr_event_handle
+function is the main entry point into the interrupt handling code.
+It must be called from an interrupt context.
+The function will execute all filter handlers associated with the interrupt
+event
+.Fa ie ,
+and schedule the associated interrupt thread to run, if applicable.
+The
+.Fa frame
+argument is used to pass a pointer to the
+.Vt struct trapframe
+containing the machine state at the time of the interrupt.
+The main body of this function runs within a
+.Xr critical 9
+section.
+.Pp
+The
+.Fn intr_event_remove_handler
+function removes an interrupt handler from the interrupt event specified by
+.Fa ie .
+The
+.Fa cookie
+argument, obtained from
+.Fn intr_event_add_handler ,
+identifies the handler to remove.
+.Pp
+The
+.Fn intr_priority
+function translates the
+.Dv INTR_TYPE_*
+interrupt flags into interrupt thread scheduling priorities.
+.Pp
+The interrupt flags not related to the type of a particular interrupt
+.Pq Dv INTR_TYPE_*
+can be used to specify additional properties of both hardware and software
+interrupt handlers.
+The
+.Dv INTR_EXCL
+flag specifies that this handler cannot share an interrupt thread with
+another handler.
+The
+.Dv INTR_MPSAFE
+flag specifies that this handler is MP safe in that it does not need the
+Giant mutex to be held while it is executed.
+The
+.Dv INTR_ENTROPY
+flag specifies that the interrupt source this handler is tied to is a good
+source of entropy, and thus that entropy should be gathered when an interrupt
+from the handler's source triggers.
+Presently, the
+.Dv INTR_ENTROPY
+flag is not valid for software interrupt handlers.
+.Ss Handler Callbacks
+Each
+.Vt struct intr_event
+is assigned three optional callback functions when it is created:
+.Fa pre_ithread ,
+.Fa post_ithread ,
+and
+.Fa post_filter .
+These callbacks are intended to be defined by the interrupt controller driver,
+to allow for actions such as masking and unmasking hardware interrupt signals.
+.Pp
+When an interrupt is triggered, all filters are run to determine if any
+threaded interrupt handlers should be scheduled for execution by the associated
+interrupt thread. If no threaded handlers are scheduled, the
+.Fa post_filter
+callback is invoked which should acknowledge the interrupt and permit it to
+trigger in the future.
+If any threaded handlers are scheduled, the
+.Fa pre_ithread
+callback is invoked instead.
+This handler should acknowledge the interrupt, but it should also ensure that
+the interrupt will not fire continuously until after the threaded handlers have
+executed.
+Typically this callback masks level-triggered interrupts in an interrupt
+controller while leaving edge-triggered interrupts alone.
+Once all threaded handlers have executed,
+the
+.Fa post_ithread
+callback is invoked from the interrupt thread to enable future interrupts.
+Typically this callback unmasks level-triggered interrupts in an interrupt
+controller.
+.Sh RETURN VALUES
+The
+.Fn intr_event_add_handler ,
+.Fn intr_event_create ,
+.Fn intr_event_destroy ,
+.Fn intr_event_handle ,
+and
+.Fn intr_event_remove_handler
+functions return zero on success and non-zero on failure.
+The
+.Fn intr_priority
+function returns a process priority corresponding to the passed in interrupt
+flags.
+.Sh EXAMPLES
+The
+.Xr swi_add 9
+function demonstrates the use of
+.Fn intr_event_create
+and
+.Fn intr_event_add_handler .
+.Bd -literal -offset indent
+int
+swi_add(struct intr_event **eventp, const char *name, driver_intr_t handler,
+ void *arg, int pri, enum intr_type flags, void **cookiep)
+{
+ struct intr_event *ie;
+ int error = 0;
+
+ if (flags & INTR_ENTROPY)
+ return (EINVAL);
+
+ ie = (eventp != NULL) ? *eventp : NULL;
+
+ if (ie != NULL) {
+ if (!(ie->ie_flags & IE_SOFT))
+ return (EINVAL);
+ } else {
+ error = intr_event_create(&ie, NULL, IE_SOFT, 0,
+ NULL, NULL, NULL, swi_assign_cpu, "swi%d:", pri);
+ if (error)
+ return (error);
+ if (eventp != NULL)
+ *eventp = ie;
+ }
+ if (handler != NULL) {
+ error = intr_event_add_handler(ie, name, NULL, handler, arg,
+ PI_SWI(pri), flags, cookiep);
+ }
+ return (error);
+}
+.Ed
+.Sh ERRORS
+The
+.Fn intr_event_add_handler
+function will fail if:
+.Bl -tag -width Er
+.It Bq Er EINVAL
+The
+.Fa ie
+or
+.Fa name
+arguments are
+.Dv NULL .
+.It Bq Er EINVAL
+The
+.Fa handler
+and
+.Fa filter
+arguments are both
+.Dv NULL .
+.It Bq Er EINVAL
+The
+.Dv IH_EXCLUSIVE
+flag is specified and the interrupt thread
+.Fa ie
+already has at least one handler, or the interrupt thread
+.Fa ie
+already has an exclusive handler.
+.El
+.Pp
+The
+.Fn intr_event_create
+function will fail if:
+.Bl -tag -width Er
+.It Bq Er EINVAL
+A flag other than
+.Dv IE_SOFT
+was specified in the
+.Fa flags
+parameter.
+.El
+.Pp
+The
+.Fn intr_event_destroy
+function will fail if:
+.Bl -tag -width Er
+.It Bq Er EINVAL
+The
+.Fa ie
+argument is
+.Dv NULL .
+.It Bq Er EBUSY
+The interrupt event pointed to by
+.Fa ie
+has at least one handler which has not been removed with
+.Fn intr_event_remove_handler .
+.El
+.Pp
+The
+.Fn intr_event_handle
+function will fail if:
+.Bl -tag -width Er
+.It Bq Er EINVAL
+The
+.Fa ie
+argument is
+.Dv NULL .
+.It Bq Er EINVAL
+There are no interrupt handlers assigned to
+.Fa ie .
+.It Bq Er EINVAL
+The interrupt was not acknowledged by any filter and has no associated thread
+handler.
+.El
+.Pp
+The
+.Fn intr_event_remove_handler
+function will fail if:
+.Bl -tag -width Er
+.It Bq Er EINVAL
+The
+.Fa cookie
+argument is
+.Dv NULL .
+.El
+.Sh SEE ALSO
+.Xr critical 9 ,
+.Xr kthread 9 ,
+.Xr locking 9 ,
+.Xr malloc 9 ,
+.Xr swi 9 ,
+.Xr uma 9
+.Sh HISTORY
+Interrupt threads and their corresponding API first appeared in
+.Fx 5.0 .
diff --git a/share/man/man9/intro.9 b/share/man/man9/intro.9
index 83956c0bbccf..e13566725976 100644
--- a/share/man/man9/intro.9
+++ b/share/man/man9/intro.9
@@ -1,105 +1,519 @@
-.\" Copyright (c) 1983, 1991, 1993
-.\" The Regents of the University of California. All rights reserved.
.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\" 3. Neither the name of the University nor the names of its contributors
-.\" may be used to endorse or promote products derived from this software
-.\" without specific prior written permission.
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
+.\" Copyright (c) 2023 The FreeBSD Foundation
.\"
-.\" $FreeBSD$
+.\" This manual page was written by Mitchell Horne <mhorne@FreeBSD.org> under
+.\" sponsorship from the FreeBSD Foundation.
.\"
-.Dd December 13, 1995
+.Dd January 30, 2024
.Dt INTRO 9
.Os
.Sh NAME
.Nm intro
-.Nd "introduction to system kernel interfaces"
+.Nd "introduction to kernel programming interfaces"
.Sh DESCRIPTION
-This section contains information about the interfaces and
-subroutines in the kernel.
-.Sh PROTOTYPES ANSI-C AND ALL THAT
-Yes please.
-.Pp
-We would like all code to be fully prototyped.
-.Pp
-If your code compiles cleanly with
-.Nm cc
-.Ar -Wall
-we would feel happy about it.
-It is important to understand that this is not a question of just shutting up
-.Nm cc ,
-it is a question about avoiding the things it complains about.
-To put it bluntly, do not hide the problem by casting and other
-obfuscating practices, solve the problem.
-.Sh INDENTATION AND STYLE
-Believe it or not, there actually exists a guide for indentation and style.
-It is not generally applied though.
-.Pp
-We would appreciate if people would pay attention to it, and at least not
-violate it blatantly.
-.Pp
-We do not mind it too badly if you have your own style, but please make
-sure we can read it too.
-.Pp
-Please take time to read
+Welcome to the
+.Fx
+kernel documentation.
+Outside the source code itself, this set of
+.Xr man 1
+pages is the primary resource for information on usage of the numerous
+programming interfaces available within the kernel.
+In some cases, it is also a source of truth for the implementation details
+and/or design decisions behind a particular subsystem or piece of code.
+.Pp
+The intended audience of this documentation is developers, and the primary
+authors are also developers.
+It is written assuming a certain familiarity with common programming or
+OS-level concepts and practices.
+However, this documentation should also attempt to provide enough background
+information that readers approaching a particular subsystem or interface for
+the first time will be able to understand.
+.Pp
+To further set expectations, we acknowledge that kernel documentation, like the
+source code itself, is forever a work-in-progress.
+There will be large sections of the codebase whose documentation is subtly or
+severely outdated, or missing altogether.
+This documentation is a supplement to the source code, and can not always be
+taken at face value.
+.Pp
+At its best, section 9 documentation will provide a description of a particular
+piece of code that, paired with its implementation, fully informs the reader of
+the intended and realized effects.
+.Pp
+.Xr man 1
+pages in this section most frequently describe functions, but may also
+describe types, global variables, macros, or high-level concepts.
+.Sh CODING GUIDELINES
+Code written for the
+.Fx
+kernel is expected to conform to the established style and coding conventions.
+Please see
.Xr style 9
-for more information.
-.Sh NAMING THINGS
-Some general rules exist:
-.Bl -enum
-.It
-If a function is meant as a debugging aid in DDB, it should be enclosed
-in
-.Bd -literal -offset indent
-#ifdef DDB
-
-#endif /* DDB */
+for a detailed set of rules and guidelines.
+.Sh OVERVIEW
+Below is presented various subsystems.
+.Ss Data Structures
+There are implementations for many well-known data structures available in the
+kernel.
+.Bl -tag -width "Xr bitstring 3"
+.It Xr bitstring 3
+Simple bitmap implementation.
+.It Xr counter 9
+An SMP-safe general-purpose counter implementation.
+.It Xr hash 9
+Hash map implementation.
+.It Xr nv 9
+Name/value pairs.
+.It Xr queue 3
+Singly-linked and doubly-linked lists, and queues.
+.It Xr refcount 9
+An SMP-safe implementation of reference counts.
+.It Xr sbuf 9
+Dynamic string composition.
+.It Xr sglist 9
+A scatter/gather list implementation.
+.El
+.Ss Utility Functions
+Functions or facilities of general usefulness or convenience.
+See also the
+.Sx Testing and Debugging Tools
+or
+.Sx Miscellaneous
+sub-sections below.
+.Pp
+Formatted output and logging functions are described by
+.Xr printf 9 .
+.Pp
+Endian-swapping functions:
+.Xr byteorder 9 .
+.Pp
+Data output in hexadecimal format:
+.Xr hexdump 9 .
+.Pp
+A rich set of macros for declaring
+.Xr sysctl 8
+variables and functions is described by
+.Xr sysctl 9 .
+.Pp
+Non-recoverable errors in the kernel should trigger a
+.Xr panic 9 .
+Run-time assertions can be verified using the
+.Xr KASSERT 9
+macros.
+Compile-time assertions should use
+.Fn _Static_assert .
+.Pp
+The SYSINIT framework provides macros for declaring functions that will be
+executed during start-up and shutdown; see
+.Xr SYSINIT 9 .
+.Pp
+Deprecation messages may be emitted with
+.Xr gone_in 9 .
+.Pp
+A unit number facility is provided by
+.Xr unr 9 .
+.Ss Synchronization Primitives
+The
+.Xr locking 9
+man page gives an overview of the various types of locks available in the
+kernel and advice on their usage.
+.Pp
+Atomic primitives are described by
+.Xr atomic 9 .
+.Pp
+The
+.Xr epoch 9
+and
+.Xr smr 9
+facilities are used to create lock-free data structures.
+There is also
+.Xr seqc 9 .
+.Ss Memory Management
+Dynamic memory allocations inside the kernel are generally done using
+.Xr malloc 9 .
+Frequently allocated objects may prefer to use
+.Xr uma 9 .
+.Pp
+.\" MHTODO: It would be useful to have a vm_page(9) or similar
+.\" high-level page which points to the following contents instead.
+Much of the virtual memory system operates on
+.Vt vm_page_t
+structures.
+The following functions are documented:
+.Bd -ragged -offset indent
+.Xr vm_page_advise 9 ,
+.Xr vm_page_alloc 9 ,
+.Xr vm_page_bits 9 ,
+.Xr vm_page_aflag 9 ,
+.Xr vm_page_alloc 9 ,
+.Xr vm_page_bits 9 ,
+.Xr vm_page_busy 9 ,
+.Xr vm_page_deactivate 9 ,
+.Xr vm_page_free 9 ,
+.Xr vm_page_grab 9 ,
+.Xr vm_page_insert 9 ,
+.Xr vm_page_lookup 9 ,
+.Xr vm_page_rename 9 ,
+.Xr vm_page_sbusy 9 ,
+.Xr vm_page_wire 9
+.Ed
+.Pp
+Virtual address space maps are managed with the
+.Xr vm_map 9
+API.
+.Pp
+The machine-dependent portion of the virtual memory stack is the
+.Xr pmap 9
+module.
+.Pp
+Allocation policies for NUMA memory domains are managed with the
+.Xr domainset 9
+API.
+.Ss File Systems
+The kernel interface for file systems is
+.Xr VFS 9 .
+File system implementations register themselves with
+.Xr vfsconf 9 .
+.Pp
+The
+.Xr vnode 9
+is the abstract and filesystem-independent representation of a file,
+directory, or other file-like entity within the kernel.
+.Pp
+The implementation of access control lists for filesystems is described by
+.Xr acl 9 .
+Also
+.Xr vaccess 9 .
+.Ss I/O and Storage
+.\" TODO: This page needs to be rewritten before it can be included here.
+.\" The buffer cache is described by:
+.\" .Xr buf 9
+.\" .Pp
+The GEOM framework represents I/O requests using the
+.Xr bio 9
+structure.
+.Pp
+Disk drivers connect themselves to GEOM using the
+.Xr disk 9
+API.
+.Pp
+The
+.Xr devstat 9
+facility provides an interface for recording device statistics in disk drivers.
+.Ss Networking
+Much of the networking stack uses the
+.Xr mbuf 9 ,
+a flexible memory management unit commonly used to store network packets.
+.Pp
+Network interfaces are implemented using the
+.Xr ifnet 9
+API, which has functions for drivers and consumers.
+.Pp
+A framework for managing packet output queues is described by
+.Xr altq 9 .
+.Pp
+To receive incoming packets, network protocols register themselves with
+.Xr netisr 9 .
+.Pp
+Virtualization of the network stack is provided by
+.Xr VNET 9 .
+.Pp
+The front-end for interfacing with network sockets from within the kernel is
+described by
+.Xr socket 9 .
+The back-end interface for socket implementations is
+.Xr domain 9 .
+.Pp
+The low-level packet filter interface is described by
+.Xr pfil 9 .
+.Pp
+The
+.Xr bpf 9
+interface provides a mechanism to redirect packets to userspace.
+.Pp
+The subsystem for IEEE 802.11 wireless networking is described by
+.Xr ieee80211 9 .
+.Pp
+A framework for modular TCP implementations is described by
+.Xr tcp_functions 9 .
+.Pp
+A framework for modular congestion control algorithms is described by
+.Xr mod_cc 9 .
+.Ss Device Drivers
+.\" TODO: a bus(9) or newbus(9) page, as well as updates to existing pages
+.\" would be helpful in laying out the high-level concepts of FreeBSD's device
+.\" structure, and explaining the organization of existing documentation.
+Consult the
+.Xr device 9
+and
+.Xr driver 9
+pages first.
+.Pp
+Most drivers act as devices, and provide a set of methods implementing the
+device interface.
+This includes methods such as
+.Xr DEVICE_PROBE 9 ,
+.Xr DEVICE_ATTACH 9 ,
+and
+.Xr DEVICE_DETACH 9 .
+.Pp
+In addition to devices, there are buses.
+Buses may have children, in the form of devices or other buses.
+Bus drivers will implement additional methods, such as
+.Xr BUS_ADD_CHILD 9 ,
+.Xr BUS_READ_IVAR 9 ,
+or
+.Xr BUS_RESCAN 9 .
+.Pp
+Buses often perform resource accounting on behalf of their children.
+For this there is the
+.Xr rman 9
+API.
+.Pp
+Drivers can request and manage their resources (e.g. memory-space or IRQ
+number) from their parent using the following sets of functions:
+.Bd -ragged -offset indent
+.Xr bus_alloc_resource 9 ,
+.Xr bus_adjust_resource 9 ,
+.Xr bus_get_resource 9 ,
+.Xr bus_map_resource 9 ,
+.Xr bus_release_resource 9 ,
+.Xr bus_set_resource 9
.Ed
.Pp
-And the name of the procedure should start with the prefix
-.Li DDB_
-to clearly identify the procedure as a debugger routine.
+Direct Memory Access (DMA) is handled using the
+.Xr busdma 9
+framework.
+.Pp
+Functions for accessing bus space (i.e. read/write) are provided by
+.Xr bus_space 9 .
+.Ss Clocks and Timekeeping
+The kernel clock frequency and overall system time model is described by
+.Xr hz 9 .
+.Pp
+A few global time variables, such as system up-time, are described by
+.Xr time 9 .
+.Pp
+Raw CPU cycles are provided by
+.Xr get_cyclecount 9 .
+.Ss Userspace Memory Access
+Direct read/write access of userspace memory from the kernel is not permitted,
+and memory transactions that cross the kernel/user boundary must go through one
+of several interfaces built for this task.
+.Pp
+Most device drivers use the
+.Xr uiomove 9
+set of routines.
+.Pp
+Simpler primitives for reading or writing smaller chunks of memory are
+described by
+.Xr casuword 9 ,
+.Xr copy 9 ,
+.Xr fetch 9 ,
+and
+.Xr store 9 .
+.Ss Kernel Threads, Tasks, and Callbacks
+Kernel threads and processes are created using the
+.Xr kthread 9
+and
+.Xr kproc 9
+interfaces, respectively.
+.Pp
+Where dedicated kernel threads are too heavyweight, there is also the
+.Xr taskqueue 9
+interface.
+.Pp
+For low-latency callback handling, the
+.Xr callout 9
+framework should be used.
+.Pp
+Dynamic handlers for pre-defined event hooks are registered and invoked using
+the
+.Xr EVENTHANDLER 9
+API.
+.Ss Thread Switching and Scheduling
+The machine-independent interface to a context switch is
+.Xr mi_switch 9 .
+.Pp
+To prevent preemption, use a
+.Xr critical 9
+section.
+.Pp
+To voluntarily yield the processor, use
+.Xr kern_yield 9 .
+.Pp
+The various functions which will deliberately put a thread to sleep are
+described by
+.Xr sleep 9 .
+Sleeping threads are removed from the scheduler and placed on a
+.Xr sleepqueue 9 .
+.\" TODO: This page is outdated and can't be included here yet.
+.\".Pp
+.\"The thread scheduler interface is described by
+.\".Xr scheduler 9 .
+.Ss Processes and Signals
+To locate a process or process group by its identifier, use
+.Xr pfind 9
+and
+.Xr pgfind 9 .
+Alternatively, the
+.Xr pget 9
+function provides additional search specificity.
+.Pp
+The "hold count" of a process can be manipulated with
+.Xr PHOLD 9 .
+.Pp
+The kernel interface for signals is described by
+.Xr signal 9 .
+.Pp
+Signals can be sent to processes or process groups using the functions
+described by
+.Xr psignal 9 .
+.Ss Security
+See the overview in
+.Xr security 7 .
+.Pp
+The basic structure for user credentials is
+.Vt struct ucred ,
+managed by the
+.Xr ucred 9
+API.
+Thread credentials are verified using
+.Xr priv 9
+to allow or deny certain privileged actions.
+.Pp
+Policies influenced by
+.Va kern.securelevel
+must use the
+.Xr securelevel_gt 9
+or
+.Xr securelevel_ge 9
+functions.
+.Pp
+The Mandatory Access Control (MAC) framework provides a wide set of hooks,
+supporting dynamically-registered security modules;
+see
+.Xr mac 9 .
+.Pp
+Cryptographic services are provided by the OpenCrypto framework.
+This API provides an interface for both consumers and crypto drivers;
+see
+.Xr crypto 9 .
+.Pp
+For information on random number generation, see
+.Xr random 9
+and
+.Xr prng 9 .
+.Ss Kernel Modules
+The interfaces for declaring loadable kernel modules are described by
+.Xr module 9 .
+.Ss Interrupts
+.Xr intr_event 9
+describes the machine-independent portion of the interrupt framework
+that supports registration and execution of interrupt handlers.
+.Pp
+Software interrupts are provided by
+.Xr swi 9 .
+.Pp
+Device drivers register their interrupt handlers using the
+.Xr bus_setup_intr 9
+function.
+.Ss Testing and Debugging Tools
+A kernel test framework:
+.Xr kern_testfrwk 9
+.Pp
+A facility for defining configurable fail points is described by
+.Xr fail 9 .
+.Pp
+Commands for the
+.Xr ddb 4
+kernel debugger are defined with the
+.Xr DB_COMMAND 9
+family of macros.
+.Pp
+The
+.Xr ktr 4
+tracing facility adds static tracepoints to many areas of the kernel.
+These tracepoints are defined using the macros described by
+.Xr ktr 9 .
+.Pp
+Static probes for DTrace are defined using the
+.Xr SDT 9
+macros.
+.Pp
+Stack traces can be captured and printed with the
+.Xr stack 9
+API.
+.Pp
+Kernel sanitizers can perform additional compiler-assisted checks against
+memory use/access.
+These runtimes are capable of detecting difficult-to-identify classes of bugs,
+at the cost of a large overhead.
+The Kernel Address Sanitizer
+.Xr KASAN 9
+and Kernel Memory Sanitizer
+.Xr KMSAN 9
+are supported.
+.Pp
+The
+.Xr LOCK_PROFILING 9
+kernel config option enables extra code to assist with profiling and/or
+debugging lock performance.
+.Ss Driver Tools
+Defined functions/APIs for specific types of devices.
+.Bl -tag -width "Xr usbdi 9"
+.It Xr iflib 9
+Programming interface for
+.Xr iflib 4
+based network drivers.
+.It Xr pci 9
+Peripheral Component Interconnect (PCI) and PCI Express (PCIe) programming API.
+.It Xr pwmbus 9
+Pulse-Width Modulation (PWM) bus interface methods.
+.It Xr usbdi 9
+Universal Serial Bus programming interface.
+.It Xr superio 9
+Functions for Super I/O controller devices.
.El
-.Sh SCOPE OF SYMBOLS
-It is important to carefully consider the scope of symbols in the kernel.
-The default is to make everything static, unless some reason requires
-the opposite.
-.Pp
-There are several reasons for this policy,
-the main one is that the kernel is one monolithic name-space,
-and pollution is not a good idea here either.
-.Pp
-For device drivers and other modules that do not add new internal interfaces
-to the kernel, the entire source should be in one file if possible.
-That way all symbols can be made static.
-.Pp
-If for some reason a module is split over multiple source files, then try
-to split the module along some major fault-line and consider using the
-number of global symbols as your guide.
-The fewer the better.
+.Ss Miscellaneous
+Dynamic per-CPU variables:
+.Xr dpcpu 9 .
+.Pp
+CPU bitmap management:
+.Xr cpuset 9 .
+.Pp
+Kernel environment management:
+.Xr getenv 9 .
+.Pp
+Contexts for CPU floating-point registers are managed by the
+.Xr fpu_kern 9
+facility.
+.Pp
+For details on the shutdown/reboot procedure and available shutdown hooks, see
+.Xr reboot 9 .
+.Pp
+A facility for asynchronous logging to files from within the kernel is provided
+by
+.Xr alq 9 .
+.Pp
+The
+.Xr osd 9
+framework provides a mechanism to dynamically extend core structures in a way
+that preserves KBI.
+See the
+.Xr hhook 9
+and
+.Xr khelp 9
+APIs for information on how this is used.
+.Pp
+The kernel object implementation is described by
+.Xr kobj 9 .
.Sh SEE ALSO
+.Xr man 1 ,
.Xr style 9
-.Sh HISTORY
-The
-.Nm
-section manual page appeared in
-.Fx 2.2 .
+.Rs
+.%T The FreeBSD Architecture Handbook
+.%U https://docs.freebsd.org/en/books/arch-handbook/
+.Re
diff --git a/share/man/man9/ithread.9 b/share/man/man9/ithread.9
deleted file mode 100644
index 2a2e44f3d6af..000000000000
--- a/share/man/man9/ithread.9
+++ /dev/null
@@ -1,350 +0,0 @@
-.\" Copyright (c) 2001 John H. Baldwin <jhb@FreeBSD.org>
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd August 25, 2006
-.Dt ITHREAD 9
-.Os
-.Sh NAME
-.Nm ithread_add_handler ,
-.Nm ithread_create ,
-.Nm ithread_destroy ,
-.Nm ithread_priority ,
-.Nm ithread_remove_handler ,
-.Nm ithread_schedule
-.Nd kernel interrupt threads
-.Sh SYNOPSIS
-.In sys/param.h
-.In sys/bus.h
-.In sys/interrupt.h
-.Ft int
-.Fo ithread_add_handler
-.Fa "struct ithd *ithread"
-.Fa "const char *name"
-.Fa "driver_intr_t handler"
-.Fa "void *arg"
-.Fa "u_char pri"
-.Fa "enum intr_type flags"
-.Fa "void **cookiep"
-.Fc
-.Ft int
-.Fo ithread_create
-.Fa "struct ithd **ithread"
-.Fa "int vector"
-.Fa "int flags"
-.Fa "void (*disable)(int)"
-.Fa "void (*enable)(int)"
-.Fa "const char *fmt"
-.Fa "..."
-.Fc
-.Ft int
-.Fn ithread_destroy "struct ithd *ithread"
-.Ft u_char
-.Fn ithread_priority "enum intr_type flags"
-.Ft int
-.Fn ithread_remove_handler "void *cookie"
-.Ft int
-.Fn ithread_schedule "struct ithd *ithread" "int do_switch"
-.Sh DESCRIPTION
-Interrupt threads are kernel threads that run a list of handlers when
-triggered by either a hardware or software interrupt.
-Each interrupt handler has a name, handler function, handler argument,
-priority, and various flags.
-Each interrupt thread maintains a list of handlers sorted by priority.
-This results in higher priority handlers being executed prior to lower
-priority handlers.
-Each thread assumes the priority of its highest priority handler for its
-process priority, or
-.Dv PRIO_MAX
-if it has no handlers.
-Interrupt threads are also associated with a single interrupt source,
-represented as a vector number.
-.Pp
-The
-.Fn ithread_create
-function creates a new interrupt thread.
-The
-.Fa ithread
-argument points to an
-.Vt struct ithd
-pointer that will point to the newly created thread upon success.
-The
-.Fa vector
-argument specifies the interrupt source to associate this thread with.
-The
-.Fa flags
-argument is a mask of properties of this thread.
-The only valid flag currently for
-.Fn ithread_create
-is
-.Dv IT_SOFT
-to specify that this interrupt thread is a software interrupt.
-The
-.Fa enable
-and
-.Fa disable
-arguments specify optional functions used to enable and disable this
-interrupt thread's interrupt source.
-The functions receive the vector corresponding to the thread's interrupt
-source as their only argument.
-The remaining arguments form a
-.Xr printf 9
-argument list that is used to build the base name of the new ithread.
-The full name of an interrupt thread is formed by concatenating the base
-name of an interrupt thread with the names of all of its interrupt handlers.
-.Pp
-The
-.Fn ithread_destroy
-function destroys a previously created interrupt thread by releasing its
-resources and arranging for the backing kernel thread to terminate.
-An interrupt thread can only be destroyed if it has no handlers remaining.
-.Pp
-The
-.Fn ithread_add_handler
-function adds a new handler to an existing interrupt thread specified by
-.Fa ithread .
-The
-.Fa name
-argument specifies a name for this handler.
-The
-.Fa handler
-and
-.Fa arg
-arguments provide the function to execute for this handler and an argument
-to pass to it.
-The
-.Fa pri
-argument specifies the priority of this handler and is used both in sorting
-it in relation to the other handlers for this thread and to specify the
-priority of the backing kernel thread.
-The
-.Fa flags
-argument can be used to specify properties of this handler as defined in
-.In sys/bus.h .
-If
-.Fa cookiep
-is not
-.Dv NULL ,
-then it will be assigned a cookie that can be used later to remove this
-handler.
-.Pp
-The
-.Fn ithread_remove_handler
-removes a handler from an interrupt thread.
-The
-.Fa cookie
-argument specifies the handler to remove from its thread.
-.Pp
-The
-.Fn ithread_schedule
-function schedules an interrupt thread to run.
-If the
-.Fa do_switch
-argument is non-zero and the interrupt thread is idle, then a context switch
-will be forced after putting the interrupt thread on the run queue.
-.Pp
-The
-.Fn ithread_priority
-function translates the
-.Dv INTR_TYPE_*
-interrupt flags into interrupt handler priorities.
-.Pp
-The interrupt flags not related to the type of a particular interrupt
-.Pq Dv INTR_TYPE_*
-can be used to specify additional properties of both hardware and software
-interrupt handlers.
-The
-.Dv INTR_EXCL
-flag specifies that this handler cannot share an interrupt thread with
-another handler.
-The
-.Dv INTR_MPSAFE
-flag specifies that this handler is MP safe in that it does not need the
-Giant mutex to be held while it is executed.
-The
-.Dv INTR_ENTROPY
-flag specifies that the interrupt source this handler is tied to is a good
-source of entropy, and thus that entropy should be gathered when an interrupt
-from the handler's source triggers.
-Presently, the
-.Dv INTR_ENTROPY
-flag is not valid for software interrupt handlers.
-.Pp
-It is not permitted to sleep in an interrupt thread; hence, any memory
-or zone allocations in an interrupt thread should be specified with the
-.Dv M_NOWAIT
-flag set.
-Any allocation errors must be handled thereafter.
-.Sh RETURN VALUES
-The
-.Fn ithread_add_handler ,
-.Fn ithread_create ,
-.Fn ithread_destroy ,
-.Fn ithread_remove_handler ,
-and
-.Fn ithread_schedule
-functions return zero on success and non-zero on failure.
-The
-.Fn ithread_priority
-function returns a process priority corresponding to the passed in interrupt
-flags.
-.Sh EXAMPLES
-The
-.Fn swi_add
-function demonstrates the use of
-.Fn ithread_create
-and
-.Fn ithread_add_handler .
-.Bd -literal -offset indent
-int
-swi_add(struct ithd **ithdp, const char *name, driver_intr_t handler,
- void *arg, int pri, enum intr_type flags, void **cookiep)
-{
- struct proc *p;
- struct ithd *ithd;
- int error;
-
- if (flags & INTR_ENTROPY)
- return (EINVAL);
-
- ithd = (ithdp != NULL) ? *ithdp : NULL;
-
- if (ithd != NULL) {
- if ((ithd->it_flags & IT_SOFT) == 0)
- return(EINVAL);
- } else {
- error = ithread_create(&ithd, pri, IT_SOFT, NULL, NULL,
- "swi%d:", pri);
- if (error)
- return (error);
-
- if (ithdp != NULL)
- *ithdp = ithd;
- }
- return (ithread_add_handler(ithd, name, handler, arg, pri + PI_SOFT,
- flags, cookiep));
-}
-.Ed
-.Sh ERRORS
-The
-.Fn ithread_add_handler
-function will fail if:
-.Bl -tag -width Er
-.It Bq Er EINVAL
-Any of the
-.Fa ithread ,
-.Fa handler ,
-or
-.Fa name
-arguments are
-.Dv NULL .
-.It Bq Er EINVAL
-The
-.Dv INTR_EXCL
-flag is specified and the interrupt thread
-.Fa ithread
-already has at least one handler, or the interrupt thread
-.Fa ithread
-already has an exclusive handler.
-.It Bq Er ENOMEM
-Could not allocate needed memory for this handler.
-.El
-.Pp
-The
-.Fn ithread_create
-function will fail if:
-.Bl -tag -width Er
-.It Bq Er EAGAIN
-The system-imposed limit on the total
-number of processes under execution would be exceeded.
-The limit is given by the
-.Xr sysctl 3
-MIB variable
-.Dv KERN_MAXPROC .
-.It Bq Er EINVAL
-A flag other than
-.Dv IT_SOFT
-was specified in the
-.Fa flags
-parameter.
-.It Bq Er ENOMEM
-Could not allocate needed memory for this interrupt thread.
-.El
-.Pp
-The
-.Fn ithread_destroy
-function will fail if:
-.Bl -tag -width Er
-.It Bq Er EINVAL
-The
-.Fa ithread
-argument is
-.Dv NULL .
-.It Bq Er EINVAL
-The interrupt thread pointed to by
-.Fa ithread
-has at least one handler.
-.El
-.Pp
-The
-.Fn ithread_remove_handler
-function will fail if:
-.Bl -tag -width Er
-.It Bq Er EINVAL
-The
-.Fa cookie
-argument is
-.Dv NULL .
-.El
-.Pp
-The
-.Fn ithread_schedule
-function will fail if:
-.Bl -tag -width Er
-.It Bq Er EINVAL
-The
-.Fa ithread
-argument is
-.Dv NULL .
-.It Bq Er EINVAL
-The interrupt thread pointed to by
-.Fa ithread
-has no interrupt handlers.
-.El
-.Sh SEE ALSO
-.Xr kthread 9 ,
-.Xr malloc 9 ,
-.Xr swi 9 ,
-.Xr uma 9
-.Sh HISTORY
-Interrupt threads and their corresponding API first appeared in
-.Fx 5.0 .
-.Sh BUGS
-Currently
-.Vt struct ithd
-represents both an interrupt source and an interrupt thread.
-There should be a separate
-.Vt struct isrc
-that contains a vector number, enable and disable functions, etc.\& that
-an ithread holds a reference to.
diff --git a/share/man/man9/kasan.9 b/share/man/man9/kasan.9
index 051c3ee0dbbb..77d7e8f46aa8 100644
--- a/share/man/man9/kasan.9
+++ b/share/man/man9/kasan.9
@@ -25,9 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 29, 2021
+.Dd October 13, 2023
.Dt KASAN 9
.Os
.Sh NAME
@@ -52,7 +50,7 @@ kernel configuration file:
.Nm
is a subsystem which leverages compiler instrumentation to detect invalid
memory accesses in the kernel.
-Currently it is implemented only on the amd64 platform.
+Currently it is implemented on the amd64 and arm64 platforms.
.Pp
When
.Nm
@@ -92,6 +90,12 @@ sysctl/tunable.
.Pp
The
.Nm
+runtime in a KASAN-configured kernel can be disabled by
+setting the loader tunable
+.Sy debug.kasan.disable=1 .
+.Pp
+The
+.Nm
runtime works by maintaining a shadow map for the kernel map.
There exists a linear mapping between addresses in the kernel map and addresses
in the shadow map.
@@ -159,7 +163,7 @@ should be 0.
was ported from
.Nx
and first appeared in
-.Fx 14.0 .
+.Fx 13.1 .
.Sh BUGS
Accesses to kernel memory outside of the kernel map are ignored by the
.Nm
@@ -168,7 +172,7 @@ When
.Nm
is configured, the kernel memory allocators are configured to use the kernel
map, but some uses of the direct map remain.
-For example, on amd64, accesses to page table pages are not tracked.
+For example, on amd64 and arm64, accesses to page table pages are not tracked.
.Pp
Some kernel memory allocators explicitly permit accesses after an object has
been freed.
diff --git a/share/man/man9/kern_reboot.9 b/share/man/man9/kern_reboot.9
index fe8ccd7390c3..5ab17b892ef4 100644
--- a/share/man/man9/kern_reboot.9
+++ b/share/man/man9/kern_reboot.9
@@ -1,11 +1,18 @@
.\" $NetBSD: boot.9,v 1.2 1996/09/24 07:01:26 ghudson Exp $
.\"
+.\" SPDX-License-Identifier: BSD-4-Clause
+.\"
.\" Copyright (c) 1997
.\" Mike Pritchard. All rights reserved.
.\"
.\" Copyright (c) 1994 Christopher G. Demetriou
.\" All rights reserved.
.\"
+.\" Copyright (c) 2021,2023 The FreeBSD Foundation
+.\"
+.\" Portions of this documentation were written by Mitchell Horne
+.\" under sponsorship from the FreeBSD Foundation.
+.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
@@ -18,7 +25,7 @@
.\" must display the following acknowledgement:
.\" This product includes software developed by Christopher G. Demetriou
.\" for the NetBSD Project.
-.\" 3. The name of the author may not be used to endorse or promote products
+.\" 4. The name of the author may not be used to endorse or promote products
.\" derived from this software without specific prior written permission
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
@@ -32,20 +39,22 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd September 23, 2021
-.Dt KERN_REBOOT 9
+.Dd November 23, 2023
+.Dt REBOOT 9
.Os
.Sh NAME
-.Nm kern_reboot
-.Nd halt or reboot the system
+.Nm kern_reboot ,
+.Nm shutdown_nice
+.Nd reboot, halt, or power off the system
.Sh SYNOPSIS
.In sys/types.h
.In sys/systm.h
.In sys/reboot.h
+.Vt extern int rebooting;
.Ft void
.Fn kern_reboot "int howto"
+.Ft void
+.Fn shutdown_nice "int howto"
.In sys/eventhandler.h
.Fn EVENTHANDLER_REGISTER "shutdown_pre_sync" "shutdown_fn" "private" "priority"
.Fn EVENTHANDLER_REGISTER "shutdown_post_sync" "shutdown_fn" "private" "priority"
@@ -53,58 +62,232 @@
.Sh DESCRIPTION
The
.Fn kern_reboot
-function handles final system shutdown, and either halts or reboots
-the system.
+function handles final system shutdown, and either halts, reboots,
+or powers down the system.
The exact action to be taken is determined by the flags passed in
+.Fa howto .
+.Pp
+The relevant flags are:
+.Bl -tag -compact -offset indent -width "RB_POWERCYCLE"
+.It Dv RB_HALT
+Halt the system in-place rather than restarting.
+.It Dv RB_POWEROFF
+Power down the system rather than restarting.
+.It Dv RB_POWERCYCLE
+Request a power-cycle in addition to restarting.
+.It Dv RB_NOSYNC
+Do not sync filesystems during shutdown.
+.It Dv RB_DUMP
+Dump kernel memory during shutdown.
+.El
+.Pp
+The
.Fa howto
-and by whether or not the system has finished autoconfiguration.
+field, and its full list of flags are described in additional detail by
+.Xr reboot 2 .
.Pp
-If the system has finished autoconfiguration,
.Fn kern_reboot
-does the following:
+performs the following actions:
.Bl -enum -offset indent
.It
-If this is the first invocation of
-.Fn kern_reboot
-and the
+Set the
+.Va rebooting
+variable to
+.Dv 1 ,
+indicating that the reboot process has begun and cannot be stopped.
+.It
+Unless the
.Dv RB_NOSYNC
-flag is not set in
+flag is set in
.Fa howto ,
-syncs and unmounts the system disks by calling
+sync and unmount the system's disks by calling
.Xr vfs_unmountall 9 .
.It
-Disables interrupts.
-.It
-If rebooting after a crash (i.e., if
+If rebooting after a panic
+.Po
.Dv RB_DUMP
is set in
.Fa howto ,
but
.Dv RB_HALT
-is not), saves a system crash dump.
+is not set
+.Pc ,
+initiate a system crash dump via
+.Fn doadump .
.It
-Runs any shutdown hooks previously registered.
+Print a message indicating that the system is about to be halted
+or rebooted, and a report of the total system uptime.
.It
-Prints a message indicating that the system is about to be halted
-or rebooted.
+Execute all registered shutdown hooks.
+See
+.Sx SHUTDOWN HOOKS
+below.
.It
-If
-.Dv RB_HALT
-is set in
-.Fa howto ,
-halts the system.
-Otherwise, reboots the system.
+As a last resort, if none of the shutdown hooks handled the reboot, call the
+machine-dependent
+.Fn cpu_reset
+function.
+In the unlikely case that this is not supported,
+.Fn kern_reboot
+will loop forever at the end of the function.
+This requires a manual reset of the system.
.El
.Pp
-If the system has not finished autoconfiguration,
.Fn kern_reboot
-runs any shutdown hooks previously registered,
-prints a message, and halts the system.
+may be called from a typical kernel execution context, when the system is
+running normally.
+It may also be called as the final step of a kernel panic, or from the kernel
+debugger.
+Therefore, the code in this function is subject to restrictions described by
+the
+.Sx EXECUTION CONTEXT
+section of the
+.Xr panic 9
+man page.
+.Pp
+The
+.Fn shutdown_nice
+function is the intended path for performing a clean reboot or shutdown when
+the system is operating under normal conditions.
+Calling this function will send a signal to the
+.Xr init 8
+process, instructing it to perform a shutdown.
+When
+.Xr init 8
+has cleanly terminated its children, it will perform the
+.Xr reboot 2
+system call, which in turn calls
+.Fn kern_reboot .
+.Pp
+If
+.Fn shutdown_nice
+is called before the
+.Xr init 8
+process has been spawned, or if the system has panicked or otherwise halted,
+.Fn kern_reboot
+will be called directly.
+.Sh SHUTDOWN HOOKS
+The system defines three separate
+.Xr EVENTHANDLER 9
+events, which are invoked successively during the shutdown procedure.
+These are
+.Va shutdown_pre_sync ,
+.Va shutdown_post_sync ,
+and
+.Va shutdown_final .
+They will be executed unconditionally in the listed order.
+Handler functions registered to any of these events will receive the value of
+.Fa howto
+as their second argument, which may be used to decide what action to take.
+.Pp
+The
+.Va shutdown_pre_sync
+event is invoked before syncing filesystems to disk.
+It enables any action or state transition that must happen before this point to
+take place.
+.Pp
+The
+.Va shutdown_post_sync
+event is invoked at the point immediately after the filesystem sync has
+finished.
+It enables, for example, disk drivers to complete the sync by flushing their
+cache to disk.
+Note that this event still takes place before the optional kernel core dump.
+.Pp
+The
+.Va shutdown_final
+event is invoked as the very last step of
+.Fn kern_reboot .
+Drivers and subsystems such as
+.Xr acpi 4
+can register handlers to this event that will perform the actual reboot,
+power-off, or halt.
+.Pp
+Notably, the
+.Va shutdown_final
+event is also the point at which all kernel modules will have their shutdown
+.Po
+.Dv MOD_SHUTDOWN
+.Pc
+hooks executed, and when the
+.Xr DEVICE_SHUTDOWN 9
+method will be executed recursively on all devices.
+.Pp
+All event handlers, like
+.Fn kern_reboot
+itself, may be run in either normal shutdown context or a kernel panic or
+debugger context.
+Handler functions are expected to take care not to trigger recursive panics.
.Sh RETURN VALUES
The
.Fn kern_reboot
function does not return.
+.Pp
+The
+.Fn shutdown_nice
+function will usually return to its caller, having initiated the asynchronous
+system shutdown.
+It will not return when called from a panic or debugger context, or during
+early boot.
+.Sh EXAMPLES
+A hypothetical driver, foo(4), defines a
+.Va shutdown_final
+event handler that can handle system power-off by writing to a device register,
+but it does not handle halt or reset.
+.Bd -literal -offset indent
+void
+foo_poweroff_handler(struct void *arg, int howto)
+{
+ struct foo_softc *sc = arg;
+ uint32_t reg;
+
+ if ((howto & RB_POWEROFF) != 0) {
+ reg = FOO_POWEROFF;
+ WRITE4(sc, FOO_POWEROFF_REG, reg);
+ }
+}
+.Ed
+.Pp
+The handler is then registered in the device attach routine:
+.Bd -literal -offset indent
+int
+foo_attach(device_t dev)
+{
+ struct foo_softc *sc;
+
+ ...
+
+ /* Pass the device's software context as the private arg. */
+ EVENTHANDLER_REGISTER(shutdown_final, foo_poweroff_handler, sc,
+ SHUTDOWN_PRI_DEFAULT);
+
+ ...
+}
+.Ed
+.Pp
+This
+.Va shutdown_final
+handler uses the
+.Dv RB_NOSYNC
+flag to detect that a panic or other unusual condition has occurred, and
+returns early:
+.Bd -literal -offset indent
+void
+bar_shutdown_final(struct void *arg, int howto)
+{
+
+ if ((howto & RB_NOSYNC) != 0)
+ return;
+
+ /* Some code that is not panic-safe. */
+ ...
+}
+.Ed
.Sh SEE ALSO
.Xr reboot 2 ,
+.Xr init 8 ,
+.Xr DEVICE_SHUTDOWN 9 ,
.Xr EVENTHANDLER 9 ,
+.Xr module 9 ,
+.Xr panic 9 ,
.Xr vfs_unmountall 9
diff --git a/share/man/man9/kern_testfrwk.9 b/share/man/man9/kern_testfrwk.9
index fd893dc54537..0ae694da75f6 100644
--- a/share/man/man9/kern_testfrwk.9
+++ b/share/man/man9/kern_testfrwk.9
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 12, 2015
.Dt KERN_TESTFRWK 9
.Os
diff --git a/share/man/man9/kern_yield.9 b/share/man/man9/kern_yield.9
new file mode 100644
index 000000000000..ba8d64a66b1f
--- /dev/null
+++ b/share/man/man9/kern_yield.9
@@ -0,0 +1,134 @@
+.\"
+.\" Copyright (c) 2023 The FreeBSD Foundation
+.\"
+.\" This documentation was written by Mitchell Horne <mhorne@FreeBSD.org> under
+.\" sponsorship from the FreeBSD Foundation.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 January 30, 2023
+.Dt KERN_YIELD 9
+.Os
+.Sh NAME
+.Nm kern_yield ,
+.Nm maybe_yield ,
+.Nm should_yield
+.Nd "functions for yielding execution of the current thread"
+.Sh SYNOPSIS
+.Ft void
+.Fn kern_yield "int prio"
+.Ft void
+.Fn maybe_yield
+.Ft bool
+.Fn should_yield
+.Sh DESCRIPTION
+The
+.Fn kern_yield
+function causes the currently running thread to voluntarily, but
+unconditionally, surrender its execution to the scheduler.
+The
+.Va prio
+argument specifies the scheduling priority to be assigned before the context
+switch, which has an influence on when execution will resume.
+Note that the requested priority will take effect until the thread returns to
+usermode, after which its base user priority will be restored.
+Valid values for
+.Va prio
+are any of the
+.Dv PRI_*
+values defined in
+.In sys/priority.h ,
+as well as the following special values:
+.Bl -tag -width "PRI_UNCHANGED"
+.It Dv PRI_USER
+Schedule the thread with its base user priority; the value corresponding to
+.Xr setpriority 2 /
+.Xr nice 3 .
+.It Dv PRI_UNCHANGED
+Yield the thread without changing its priority.
+.El
+.Pp
+The
+.Fn should_yield
+function checks if sufficient time has passed since the thread's last voluntary
+context switch that yielding would be a useful service to other threads.
+It returns
+.Va true
+when this is the case.
+See
+.Sx USAGE NOTES
+for an elaboration of what this means.
+.Pp
+The
+.Fn maybe_yield
+function is a helper function for the common task of optionally yielding the
+processor.
+Internally,
+.Fn kern_yield "PRI_USER"
+will be called if
+.Fn should_yield
+returns
+.Va true .
+.Sh USAGE NOTES
+Although the kernel supports preemption, this is usually reserved for
+high-priority realtime or interrupt threads.
+Kernel worker threads and timesharing threads are not guaranteed to preempt
+each another.
+Thus, threads executing in the kernel are expected to behave cooperatively
+with respect to other threads in the system.
+The yield functions are mostly intended to be used by threads which perform a
+lot of work inside the kernel.
+For example:
+.Fn maybe_yield
+is called by the
+.Dv vlnru
+process each time it reclaims a vnode.
+.Pp
+The scheduler aims to identify threads which monopolize the CPU, and will
+schedule them with decreased priority.
+Threads which regularly yield the processor will be given the chance to run
+more often.
+The possibly surprising effect of this is that, depending on the disposition of
+other threads on the CPU's runqueue, a call to
+.Fn kern_yield
+does not guarantee that the yielding thread will be taken off the CPU.
+.Pp
+With the above considerations in mind, it is advised that code written using
+.Fn kern_yield
+be measured to confirm that its use has a positive effect on relevant
+performance or responsiveness metrics.
+Switching thread contexts has a non-zero cost, and thus yielding the processor
+too eagerly could have a negative impact on performance.
+.Pp
+Additionally, since yielding is a cooperative action, it is advised that the
+yielding thread release any locks that it may be holding, when possible.
+Otherwise, threads which have been given the chance to run could end up waiting
+on the yielding thread to release the lock, largely defeating the purpose of
+the yield.
+.Sh SEE ALSO
+.Xr setpriority 2 ,
+.Xr nice 3 ,
+.Xr mi_switch 9
+.Sh AUTHORS
+.An -nosplit
+This manual page was written by
+.An Mitchell Horne Aq Mt mhorne@FreeBSD.org .
diff --git a/share/man/man9/kernacc.9 b/share/man/man9/kernacc.9
index f6d60dcf6463..9e48b01fe991 100644
--- a/share/man/man9/kernacc.9
+++ b/share/man/man9/kernacc.9
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 1996
.Dt KERNACC 9
.Os
diff --git a/share/man/man9/kernel_mount.9 b/share/man/man9/kernel_mount.9
index 7a11007c288b..1f3ed02e1b65 100644
--- a/share/man/man9/kernel_mount.9
+++ b/share/man/man9/kernel_mount.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 20, 2021
.Dt KERNEL_MOUNT 9
.Os
diff --git a/share/man/man9/khelp.9 b/share/man/man9/khelp.9
index 64e5232acba4..39515eef237c 100644
--- a/share/man/man9/khelp.9
+++ b/share/man/man9/khelp.9
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 15, 2011
.Dt KHELP 9
.Os
diff --git a/share/man/man9/kmsan.9 b/share/man/man9/kmsan.9
index a80ef7112451..d9d279e12140 100644
--- a/share/man/man9/kmsan.9
+++ b/share/man/man9/kmsan.9
@@ -25,9 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 10, 2021
+.Dd January 11, 2024
.Dt KMSAN 9
.Os
.Sh NAME
@@ -58,11 +56,13 @@ kernel configuration file:
.Fn kmsan_check_ccb "const union ccb *" "const char *descr"
.Ft void
.Fn kmsan_check_mbuf "const struct mbuf *" "const char *descr"
+.Ft void
+.Fn kmsan_check_uio "const struct uio *" "const char *descr"
.Sh DESCRIPTION
.Nm
is a subsystem which leverages compiler instrumentation to detect uses of
uninitialized memory in the kernel.
-Currently it is implemented only on the amd64 platform.
+Currently it is implemented only on the amd64 and arm64 platforms.
.Pp
When
.Nm
@@ -110,6 +110,10 @@ should be used only for kernel testing and development.
It is not recommended to enable
.Nm
in systems with less than 8GB of physical RAM.
+.Pp
+The sanitizer in a KMSAN-configured kernel can be disabled by setting the loader
+tunable
+.Sy debug.kmsan.disable=1 .
.Sh FUNCTIONS
The
.Fn kmsan_mark
@@ -304,6 +308,7 @@ f(size_t osz)
.Xr busdma 9 ,
.Xr copyout 9 ,
.Xr KASAN 9 ,
+.Xr uio 9 ,
.Xr uma 9
.Rs
.%A Evgeniy Stepanov
diff --git a/share/man/man9/kobj.9 b/share/man/man9/kobj.9
index 0e1745e6bd6b..caa933da5586 100644
--- a/share/man/man9/kobj.9
+++ b/share/man/man9/kobj.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 14, 2011
.Dt KOBJ 9
.Os
diff --git a/share/man/man9/kproc.9 b/share/man/man9/kproc.9
index 613ac31bc157..14ee056cb710 100644
--- a/share/man/man9/kproc.9
+++ b/share/man/man9/kproc.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 19, 2007
.Dt KPROC 9
.Os
diff --git a/share/man/man9/kqueue.9 b/share/man/man9/kqueue.9
index 53f55b8efe03..8214d7c01673 100644
--- a/share/man/man9/kqueue.9
+++ b/share/man/man9/kqueue.9
@@ -22,17 +22,15 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd October 12, 2021
+.Dd December 18, 2023
.Dt KQUEUE 9
.Os
.Sh NAME
.Nm kqueue_add_filteropts , kqueue_del_filteropts ,
.Nm kqfd_register ,
.Nm knote_fdclose ,
-.Nm knlist_init , knlist_init_mtx , knlist_init_rw_reader ,
-.Nm knlist_add , knlist_remove , knlist_remove_inevent , knlist_empty ,
+.Nm knlist_init , knlist_init_mtx ,
+.Nm knlist_add , knlist_remove , knlist_empty ,
.Nm knlist_clear , knlist_delete , knlist_destroy ,
.Nm KNOTE_LOCKED , KNOTE_UNLOCKED
.Nd "event delivery subsystem"
@@ -57,13 +55,9 @@
.Ft void
.Fn knlist_init_mtx "struct knlist *knl" "struct mtx *lock"
.Ft void
-.Fn knlist_init_rw_reader "struct knlist *knl" "struct rwlock *lock"
-.Ft void
.Fn knlist_add "struct knlist *knl" "struct knote *kn" "int islocked"
.Ft void
.Fn knlist_remove "struct knlist *knl" "struct knote *kn" "int islocked"
-.Ft void
-.Fn knlist_remove_inevent "struct knlist *knl" "struct knote *kn"
.Ft int
.Fn knlist_empty "struct knlist *knl"
.Ft void
@@ -161,8 +155,7 @@ function will be called to detach the
if the
.Vt knote
has not already been detached by a call to
-.Fn knlist_remove ,
-.Fn knlist_remove_inevent
+.Fn knlist_remove
or
.Fn knlist_delete .
The list
@@ -190,16 +183,6 @@ The
.Va kn_data
value should be updated as necessary to reflect the current value, such as
number of bytes available for reading, or buffer space available for writing.
-If the note needs to be removed,
-.Fn knlist_remove_inevent
-must be called.
-The function
-.Fn knlist_remove_inevent
-will remove the note from the list, the
-.Va f_detach
-function will not be called and the
-.Vt knote
-will not be returned as an event.
.Pp
Locks
.Em must not
@@ -260,10 +243,9 @@ is not required, but is commonly used.
If used, the
.Vt knlist
must be initialized with either
-.Fn knlist_init ,
-.Fn knlist_init_mtx
+.Fn knlist_init
or
-.Fn knlist_init_rw_reader .
+.Fn knlist_init_mtx .
The
.Vt knlist
structure may be embedded into the object structure.
@@ -308,19 +290,6 @@ style
lock.
.Pp
The function
-.Fn knlist_init_rw_reader
-may be used to initialize a
-.Vt knlist
-when
-.Fa lock
-is a
-.Xr rwlock 9
-read lock.
-Lock is acquired via
-.Fn rw_rlock
-function.
-.Pp
-The function
.Fn knlist_empty
returns true when there are no
.Vt knotes
@@ -351,16 +320,6 @@ The
function will be called when the
.Vt knote
is deleted during the next scan.
-This function must not be used when
-.Va f_isfd
-is set in
-.Vt "struct filterops" ,
-as the
-.Fa td
-argument of
-.Fn fdrop
-will be
-.Dv NULL .
.Pp
The function
.Fn knlist_delete
diff --git a/share/man/man9/vcount.9 b/share/man/man9/kstack_contains.9
index 186a350ac56b..9e0c22bf43f1 100644
--- a/share/man/man9/vcount.9
+++ b/share/man/man9/kstack_contains.9
@@ -1,10 +1,6 @@
-.\" -*- nroff -*-
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
-.\" Copyright (c) 2000 Andrew Stevenson
-.\"
-.\" All rights reserved.
-.\"
-.\" This program is free software.
+.\" Copyright (c) 2023 Joseph Koshy <jkoshy@FreeBSD.org>
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -26,48 +22,39 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" If this manual page travels to places exotic (like projects other than
-.\" FreeBSD) I would love to hear about it.
-.\" Andrew <andrew@ugh.net.au>
-.\"
-.\" $FreeBSD$
-.\"
-.Dd January 19, 2012
-.Dt VCOUNT 9
+.Dd May 2, 2023
+.Dt KSTACK_CONTAINS 9
.Os
.Sh NAME
-.Nm vcount ,
-.Nm count_dev
-.Nd "get total number of references to a device"
+.Nm kstack_contains
+.Nd determine if an address range lies within the kernel stack for a thread
.Sh SYNOPSIS
-.In sys/param.h
-.In sys/time.h
-.In sys/conf.h
-.In sys/vnode.h
-.Ft int
-.Fn vcount "struct vnode *vp"
-.Ft int
-.Fn count_dev "struct cdev *dev"
+.In machine/stack.h
+.Ft bool
+.Fn kstack_contains "struct thread *td" "vm_offset_t va" "size_t len"
.Sh DESCRIPTION
-.Fn vcount
-is used to get the number of references to a particular device.
-It allows for the fact that multiple vnodes may reference the same device.
-.Fn count_dev
-does the same thing as
-.Fn vcount ,
-but takes a
-.Vt "struct cdev"
-rather than a
-.Vt "struct vnode"
-pointer as an argument.
+This function can be used to determine whether a given address range
+falls within the kernel stack for the thread pointed to by
+.Fa td .
.Sh RETURN VALUES
-.Fn vcount
-and
-.Fn count_dev
-both return the number of references to the device.
+The function
+.Fn kstack_contains
+returns
+.Dv true
+if the range of addresses
+.Bo
+.Fa va Ns .. Ns (
+.Fa va Ns + Ns
+.Fa len Ns - Ns 1 )
+.Bc
+(both addresses inclusive) lies within the kernel stack for the thread
+pointed to by argument
+.Fa td ,
+or returns
+.Dv false
+otherwise.
+.Sh ERRORS
+This function does not return an error.
.Sh SEE ALSO
-.Xr VFS 9 ,
-.Xr vnode 9
-.Sh AUTHORS
-This manual page was written by
-.An Andrew Stevenson .
+.Xr kproc 9 ,
+.Xr kthread 9
diff --git a/share/man/man9/kthread.9 b/share/man/man9/kthread.9
index b7c0388bf8b2..266faa038322 100644
--- a/share/man/man9/kthread.9
+++ b/share/man/man9/kthread.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 15, 2014
.Dt KTHREAD 9
.Os
diff --git a/share/man/man9/ktr.9 b/share/man/man9/ktr.9
index cfe9cacf8611..6910fcd54add 100644
--- a/share/man/man9/ktr.9
+++ b/share/man/man9/ktr.9
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 12, 2022
.Dt KTR 9
.Os
@@ -61,7 +59,7 @@ style
fashion.
These events can then be dumped with
.Xr ddb 4 ,
-.Xr gdb 1
+.Xr gdb 1 Pq Pa ports/devel/gdb
or
.Xr ktrdump 8 .
.Pp
diff --git a/share/man/man9/lock.9 b/share/man/man9/lock.9
index ef2380ae3f31..110fdd68fda0 100644
--- a/share/man/man9/lock.9
+++ b/share/man/man9/lock.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 17, 2017
.Dt LOCK 9
.Os
diff --git a/share/man/man9/locking.9 b/share/man/man9/locking.9
index 145ae6e9f1f5..b29cd07e2c2a 100644
--- a/share/man/man9/locking.9
+++ b/share/man/man9/locking.9
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd March 29, 2022
+.Dd February 3, 2023
.Dt LOCKING 9
.Os
.Sh NAME
@@ -145,6 +143,32 @@ for this reason, they should be avoided.
See
.Xr lock 9
for details.
+.Ss Non-blocking synchronization
+The kernel has two facilities,
+.Xr epoch 9
+and
+.Xr smr 9 ,
+which can be used to provide read-only access to a data structure while one or
+more writers are concurrently modifying the data structure.
+Specifically, readers using
+.Xr epoch 9
+and
+.Xr smr 9
+to synchronize accesses do not block writers, in contrast with reader/writer
+locks, and they help ensure that memory freed by writers is not reused until
+all readers which may be accessing it have finished.
+Thus, they are a useful building block in the construction of lock-free
+data structures.
+.Pp
+These facilities are difficult to use correctly and should be avoided
+in preference to traditional mutual exclusion-based synchronization,
+except when performance or non-blocking guarantees are a major concern.
+.Pp
+See
+.Xr epoch 9
+and
+.Xr smr 9
+for details.
.Ss Counting semaphores
Counting semaphores provide a mechanism for synchronizing access
to a pool of resources.
@@ -394,8 +418,11 @@ At this time this is a rather easy to remember table.
.Sh SEE ALSO
.Xr lockstat 1 ,
.Xr witness 4 ,
+.Xr atomic 9 ,
.Xr BUS_SETUP_INTR 9 ,
+.Xr callout 9 ,
.Xr condvar 9 ,
+.Xr epoch 9 ,
.Xr lock 9 ,
.Xr LOCK_PROFILING 9 ,
.Xr mtx_pool 9 ,
@@ -404,13 +431,7 @@ At this time this is a rather easy to remember table.
.Xr rwlock 9 ,
.Xr sema 9 ,
.Xr sleep 9 ,
-.Xr sx 9 ,
-.Xr timeout 9
-.Sh HISTORY
-These
-functions appeared in
-.Bsx 4.1
-through
-.Fx 7.0 .
+.Xr smr 9 ,
+.Xr sx 9
.Sh BUGS
There are too many locking primitives to choose from.
diff --git a/share/man/man9/mac.9 b/share/man/man9/mac.9
index 91b1aef88c94..98a455e46de3 100644
--- a/share/man/man9/mac.9
+++ b/share/man/man9/mac.9
@@ -31,8 +31,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 20, 2021
.Dt MAC 9
.Os
@@ -150,16 +148,7 @@ for information on the MAC Framework APIs.
.Xr acl 3 ,
.Xr mac 3 ,
.Xr posix1e 3 ,
-.Xr mac_biba 4 ,
-.Xr mac_bsdextended 4 ,
-.Xr mac_ddb 4 ,
-.Xr mac_ifoff 4 ,
-.Xr mac_lomac 4 ,
-.Xr mac_mls 4 ,
-.Xr mac_none 4 ,
-.Xr mac_partition 4 ,
-.Xr mac_seeotheruids 4 ,
-.Xr mac_test 4 ,
+.Xr mac 4 ,
.Xr ucred 9 ,
.Xr vaccess 9 ,
.Xr vaccess_acl_posix1e 9 ,
diff --git a/share/man/man9/make_dev.9 b/share/man/man9/make_dev.9
index cd038a703616..2beb38586593 100644
--- a/share/man/man9/make_dev.9
+++ b/share/man/man9/make_dev.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 2, 2016
.Dt MAKE_DEV 9
.Os
diff --git a/share/man/man9/malloc.9 b/share/man/man9/malloc.9
index c240344ea77e..0ab5b2ed6e8d 100644
--- a/share/man/man9/malloc.9
+++ b/share/man/man9/malloc.9
@@ -27,18 +27,26 @@
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.\" $NetBSD: malloc.9,v 1.3 1996/11/11 00:05:11 lukem Exp $
-.\" $FreeBSD$
.\"
-.Dd July 2, 2021
+.Dd October 12, 2022
.Dt MALLOC 9
.Os
.Sh NAME
.Nm malloc ,
+.Nm mallocarray ,
.Nm free ,
+.Nm zfree ,
.Nm realloc ,
.Nm reallocf ,
+.Nm malloc_usable_size ,
+.Nm malloc_aligned ,
+.Nm malloc_exec ,
+.Nm MALLOC_DECLARE ,
.Nm MALLOC_DEFINE ,
-.Nm MALLOC_DECLARE
+.Nm malloc_domainset ,
+.Nm malloc_domainset_aligned ,
+.Nm malloc_domainset_exec ,
+.Nm mallocarray_domainset
.Nd kernel memory management routines
.Sh SYNOPSIS
.In sys/types.h
@@ -73,6 +81,7 @@
.Fn MALLOC_DEFINE type shortdesc longdesc
.In sys/param.h
.In sys/domainset.h
+.In sys/malloc.h
.Ft void *
.Fn malloc_domainset "size_t size" "struct malloc_type *type" "struct domainset *ds" "int flags"
.Ft void *
@@ -116,7 +125,8 @@ Both
and
.Fn malloc_domainset_exec
can be used to return executable memory.
-Not all platforms enforce a distinction between executable and non-executable memory.
+Not all platforms enforce a distinction between executable and non-executable
+memory.
.Pp
The
.Fn mallocarray
diff --git a/share/man/man9/mbchain.9 b/share/man/man9/mbchain.9
index 3603ba188991..94bad32a0302 100644
--- a/share/man/man9/mbchain.9
+++ b/share/man/man9/mbchain.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 20, 2001
.Dt MBCHAIN 9
.Os
diff --git a/share/man/man9/mbuf.9 b/share/man/man9/mbuf.9
index e573bfe6f52d..0b03d697b8bf 100644
--- a/share/man/man9/mbuf.9
+++ b/share/man/man9/mbuf.9
@@ -22,9 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 8, 2021
+.Dd December 28, 2023
.Dt MBUF 9
.Os
.\"
@@ -54,7 +52,10 @@
.Fc
.\"
.Ss Mbuf utility macros
+.Ft type
.Fn mtod "struct mbuf *mbuf" "type"
+.Ft void *
+.Fn mtodo "struct mbuf *mbuf" "offset"
.Fn M_ALIGN "struct mbuf *mbuf" "u_int len"
.Fn MH_ALIGN "struct mbuf *mbuf" "u_int len"
.Ft int
@@ -396,6 +397,14 @@ It is advisable to ensure that there is enough contiguous data in
See
.Fn m_pullup
for details.
+.It Fn mtodo mbuf offset
+Return a data pointer at an offset (in bytes) into the data attached to
+.Fa mbuf .
+Returns a
+.Ft void *
+pointer .
+.Sy Note :
+The caller must ensure that the offset is in bounds of the attached data.
.It Fn MGET mbuf how type
Allocate an
.Vt mbuf
@@ -775,7 +784,9 @@ in the
are contiguous and lay in the data area of
.Fa mbuf ,
so they are accessible with
-.Fn mtod mbuf type .
+.Fn mtod
+or
+.Fn mtodo .
.Fa len
must be smaller than, or equal to, the size of an
.Vt mbuf cluster .
@@ -789,12 +800,13 @@ to the data contained in the returned mbuf is stored in
If
.Fa offsetp
is NULL, the region may be accessed using
-.Fn mtod mbuf type .
+.Fn mtod mbuf type
+or
+.Fn mtodo mbuf 0 .
If
.Fa offsetp
is non-NULL, the region may be accessed using
-.Fn mtod mbuf uint8_t
-+ *offsetp.
+.Fn mtodo mbuf *offsetp .
The region of the mbuf chain between its beginning and
.Fa offset
is not modified, therefore it is safe to hold pointers to data within
diff --git a/share/man/man9/mbuf_tags.9 b/share/man/man9/mbuf_tags.9
index 9f3e8c064054..834b1eb0614d 100644
--- a/share/man/man9/mbuf_tags.9
+++ b/share/man/man9/mbuf_tags.9
@@ -18,8 +18,6 @@
.\" MERCHANTABILITY OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR
.\" PURPOSE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 28, 2021
.Dt MBUF_TAGS 9
.Os
diff --git a/share/man/man9/mdchain.9 b/share/man/man9/mdchain.9
index ed25c1eb6f20..d799775f0085 100644
--- a/share/man/man9/mdchain.9
+++ b/share/man/man9/mdchain.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 28, 2001
.Dt MDCHAIN 9
.Os
diff --git a/share/man/man9/memcchr.9 b/share/man/man9/memcchr.9
index 0be3b79aa9a8..ce0e9cdac7ea 100644
--- a/share/man/man9/memcchr.9
+++ b/share/man/man9/memcchr.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 1, 2012
.Dt MEMCCHR 9
.Os
diff --git a/share/man/man9/memguard.9 b/share/man/man9/memguard.9
index 55cea93d98f2..61b047826f14 100644
--- a/share/man/man9/memguard.9
+++ b/share/man/man9/memguard.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 22, 2017
.Dt MEMGUARD 9
.Os
diff --git a/share/man/man9/mi_switch.9 b/share/man/man9/mi_switch.9
index 835356744647..549ec497434c 100644
--- a/share/man/man9/mi_switch.9
+++ b/share/man/man9/mi_switch.9
@@ -2,10 +2,14 @@
.\"
.\" Copyright (c) 1996 The NetBSD Foundation, Inc.
.\" All rights reserved.
+.\" Copyright (c) 2023 The FreeBSD Foundation
.\"
.\" This code is derived from software contributed to The NetBSD Foundation
.\" by Paul Kranenburg.
.\"
+.\" Portions of this documentation were written by Mitchell Horne
+.\" under sponsorship from the FreeBSD Foundation.
+.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
@@ -27,9 +31,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 24, 1996
+.Dd January 9, 2023
.Dt MI_SWITCH 9
.Os
.Sh NAME
@@ -41,96 +43,171 @@
.In sys/param.h
.In sys/proc.h
.Ft void
-.Fn mi_switch "void"
+.Fn mi_switch "int flags"
.Ft void
-.Fn cpu_switch "void"
+.Fn cpu_switch "struct thread *oldtd" "struct thread *newtd" "struct mtx *lock"
.Ft void
-.Fn cpu_throw "void"
+.Fn cpu_throw "struct thread *oldtd" "struct thread *newtd"
.Sh DESCRIPTION
The
.Fn mi_switch
-function implements the machine independent prelude to a thread context
+function implements the machine-independent prelude to a thread context
switch.
-It is called from only a few distinguished places in the kernel
-code as a result of the principle of non-preemptable kernel mode execution.
+It is the single entry point for every context switch and is called from only
+a few distinguished places in the kernel.
+The context switch is, by necessity, always performed by the switched thread,
+even when the switch is initiated from elsewhere; e.g. preemption requested via
+Inter-Processor Interrupt (IPI).
+.Pp
The various major uses of
-.Nm
+.Fn mi_switch
can be enumerated as follows:
.Bl -enum -offset indent
.It
From within a function such as
-.Xr cv_wait 9 ,
-.Xr mtx_lock 9 ,
+.Xr sleepq_wait 9
or
-.Xr tsleep 9
+.Fn turnstile_wait
when the current thread
voluntarily relinquishes the CPU to wait for some resource or lock to become
available.
.It
-After handling a trap
-(e.g.\& a system call, device interrupt)
-when the kernel prepares a return to user-mode execution.
-This case is
-typically handled by machine dependent trap-handling code after detection
-of a change in the signal disposition of the current process, or when a
-higher priority thread might be available to run.
-The latter event is
-communicated by the machine independent scheduling routines by calling
-the machine defined
-.Fn need_resched .
+Involuntary preemption due to arrival of a higher-priority thread.
+.It
+At the tail end of
+.Xr critical_exit 9 ,
+if preemption was deferred due to the critical section.
+.It
+Within the TDA_SCHED AST handler, when rescheduling before the return to
+usermode was requested.
+There are several reasons for this, a notable one coming from
+.Fn sched_clock
+when the running thread has exceeded its time slice.
.It
In the signal handling code
(see
.Xr issignal 9 )
if a signal is delivered that causes a process to stop.
.It
-When a thread dies in
-.Xr thread_exit 9
-and control of the processor can be passed to the next runnable thread.
-.It
In
-.Xr thread_suspend_check 9
+.Fn thread_suspend_check
where a thread needs to stop execution due to the suspension state of
the process as a whole.
+.It
+In
+.Xr kern_yield 9
+when a thread wants to voluntarily relinquish the processor.
.El
.Pp
+The
+.Va flags
+argument to
.Fn mi_switch
-records the amount of time the current thread has been running in the
-process structures and checks this value against the CPU time limits
-allocated to the process
-(see
-.Xr getrlimit 2 ) .
-Exceeding the soft limit results in a
-.Dv SIGXCPU
-signal to be posted to the process, while exceeding the hard limit will
-cause a
-.Dv SIGKILL .
+indicates the context switch type.
+One of the following must be passed:
+.Bl -tag -offset indent -width "SWT_REMOTEWAKEIDLE"
+.It Dv SWT_OWEPREEMPT
+Switch due to delayed preemption after exiting a critical section.
+.It Dv SWT_TURNSTILE
+Switch after propagating scheduling priority to the owner of a resource.
+.It Dv SWT_SLEEPQ
+Begin waiting on a
+.Xr sleepqueue 9 .
+.It Dv SWT_RELINQUISH
+Yield call.
+.It Dv SWT_NEEDRESCHED
+Rescheduling was requested.
+.It Dv SWT_IDLE
+Switch from the idle thread.
+.It Dv SWT_IWAIT
+A kernel thread which handles interrupts has finished work and must wait for
+interrupts to schedule additional work.
+.It Dv SWT_SUSPEND
+Thread suspended.
+.It Dv SWT_REMOTEPREEMPT
+Preemption by a higher-priority thread, initiated by a remote processor.
+.It Dv SWT_REMOTEWAKEIDLE
+Idle thread preempted, initiated by a remote processor.
+.It Dv SWT_BIND
+The running thread has been bound to another processor and must be switched
+out.
+.El
+.Pp
+In addition to the switch type, callers must specify the nature of the
+switch by performing a bitwise OR with one of the
+.Dv SW_VOL
+or
+.Dv SW_INVOL
+flags, but not both.
+Respectively, these flags denote whether the context switch is voluntary or
+involuntary on the part of the current thread.
+For an involuntary context switch in which the running thread is
+being preempted, the caller should also pass the
+.Dv SW_PREEMPT
+flag.
.Pp
-If the thread is still in the
-.Dv TDS_RUNNING
-state,
+Upon entry to
+.Fn mi_switch ,
+the current thread must be holding its assigned thread lock.
+It may be unlocked as part of the context switch.
+After they have been rescheduled and execution resumes, threads will exit
.Fn mi_switch
-will put it back onto the run queue, assuming that
-it will want to run again soon.
-If it is in one of the other
-states and KSE threading is enabled, the associated
-.Em KSE
-will be made available to any higher priority threads from the same
-group, to allow them to be scheduled next.
+with their thread lock unlocked.
.Pp
-After these administrative tasks are done,
.Fn mi_switch
-hands over control to the machine dependent routine
-.Fn cpu_switch ,
-which will perform the actual thread context switch.
+records the amount of time the current thread has been running before handing
+control over to the scheduler, via
+.Fn sched_switch .
+After selecting a new thread to run, the scheduler will call
+.Fn cpu_switch
+to perform the low-level context switch.
+.Pp
+.Fn cpu_switch
+is the machine-dependent function that performs the actual switch from the
+running thread
+.Fa oldtd
+to the chosen thread
+.Fa newtd .
+First, it saves the context of
+.Fa oldtd
+to its Process Control Block
+.Po
+PCB,
+.Vt struct pcb
+.Pc ,
+pointed at by
+.Va oldtd->td_pcb .
+The function then updates important per-CPU state such as the
+.Dv curthread
+variable, and activates
+.Fa newtd\&'s
+virtual address space using its associated
+.Xr pmap 9
+structure.
+Finally, it reads in the saved context from
+.Fa newtd\&'s
+PCB.
+CPU instruction flow continues in the new thread context, on
+.Fa newtd\&'s
+kernel stack.
+The return from
+.Fn cpu_switch
+can be understood as a completion of the function call initiated by
+.Fa newtd
+when it was previously switched out, at some point in the distant (relative to
+CPU time) past.
.Pp
+The
+.Fa mtx
+argument to
.Fn cpu_switch
-first saves the context of the current thread.
-Next, it calls
-.Fn choosethread
-to determine which thread to run next.
-Finally, it reads in the saved context of the new thread and starts to
-execute the new thread.
+is used to pass the mutex which will be stored as
+.Fa oldtd\&'s
+thread lock at the moment that
+.Fa oldtd
+is completely switched out.
+This is an implementation detail of
+.Fn sched_switch .
.Pp
.Fn cpu_throw
is similar to
@@ -140,19 +217,18 @@ This function is useful when the kernel does not have an old thread
context to save, such as when CPUs other than the boot CPU perform their
first task switch, or when the kernel does not care about the state of the
old thread, such as in
-.Fn thread_exit
+.Xr thread_exit 9
when the kernel terminates the current thread and switches into a new
-thread.
-.Pp
-To protect the
-.Xr runqueue 9 ,
-all of these functions must be called with the
-.Va sched_lock
-mutex held.
+thread,
+.Fa newtd .
+The
+.Fa oldtd
+argument is unused.
.Sh SEE ALSO
-.Xr cv_wait 9 ,
+.Xr critical_exit 9 ,
.Xr issignal 9 ,
+.Xr kern_yield 9 ,
.Xr mutex 9 ,
-.Xr runqueue 9 ,
-.Xr tsleep 9 ,
-.Xr wakeup 9
+.Xr pmap 9 ,
+.Xr sleepqueue 9 ,
+.Xr thread_exit 9
diff --git a/share/man/man9/microseq.9 b/share/man/man9/microseq.9
index e9d86db26163..06e3ebdd3a0a 100644
--- a/share/man/man9/microseq.9
+++ b/share/man/man9/microseq.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 6, 1998
.Dt MICROSEQ 9
.Os
diff --git a/share/man/man9/microtime.9 b/share/man/man9/microtime.9
index f5ea65d1fc34..d703d7b572d7 100644
--- a/share/man/man9/microtime.9
+++ b/share/man/man9/microtime.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 16, 2004
.Dt MICROTIME 9
.Os
diff --git a/share/man/man9/microuptime.9 b/share/man/man9/microuptime.9
index 2ff5e9b25a4e..e1b9b193a971 100644
--- a/share/man/man9/microuptime.9
+++ b/share/man/man9/microuptime.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 21, 2015
.Dt MICROUPTIME 9
.Os
diff --git a/share/man/man9/mod_cc.9 b/share/man/man9/mod_cc.9
index 0a275d2da8e1..86d9c7b5312c 100644
--- a/share/man/man9/mod_cc.9
+++ b/share/man/man9/mod_cc.9
@@ -29,8 +29,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 13, 2021
.Dt MOD_CC 9
.Os
@@ -219,8 +217,8 @@ Note that currently not all TCP stacks call the
.Va rttsample
and
.Va newround
-function so dependancy on these functions is also
-dependant upon which TCP stack is in use.
+function so dependency on these functions is also
+dependent upon which TCP stack is in use.
.Pp
The
.Fn DECLARE_CC_MODULE
@@ -261,7 +259,7 @@ function should return 0.
.Pp
The stack will skip calling any function pointer which is NULL, so there is no
requirement to implement any of the function pointers (with the exception of
-the cb_init <-> cc_data_sz dependancy noted above).
+the cb_init <-> cc_data_sz dependency noted above).
Using the C99 designated initialiser feature to set fields is encouraged.
.Pp
Each function pointer which deals with congestion control state is passed a
diff --git a/share/man/man9/module.9 b/share/man/man9/module.9
index 5bd9a13c6925..8cb558bca631 100644
--- a/share/man/man9/module.9
+++ b/share/man/man9/module.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 11, 2021
.Dt MODULE 9
.Os
diff --git a/share/man/man9/mtx_pool.9 b/share/man/man9/mtx_pool.9
index ab2cc8b31b11..3273406143ab 100644
--- a/share/man/man9/mtx_pool.9
+++ b/share/man/man9/mtx_pool.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 6, 2010
.Dt MTX_POOL 9
.Os
diff --git a/share/man/man9/mutex.9 b/share/man/man9/mutex.9
index 43d523a56c98..ccba09f3212f 100644
--- a/share/man/man9/mutex.9
+++ b/share/man/man9/mutex.9
@@ -26,9 +26,8 @@
.\" SUCH DAMAGE.
.\"
.\" from BSDI $Id: mutex.4,v 1.1.2.3 1998/04/27 22:53:13 ewv Exp $
-.\" $FreeBSD$
.\"
-.Dd May 24, 2017
+.Dd February 17, 2023
.Dt MUTEX 9
.Os
.Sh NAME
@@ -74,7 +73,7 @@
.Fn mtx_trylock "struct mtx *mutex"
.Ft int
.Fn mtx_trylock_flags "struct mtx *mutex" "int flags"
-.Ft void
+.Ft int
.Fn mtx_trylock_spin "struct mtx *mutex"
.Ft int
.Fn mtx_trylock_spin_flags "struct mtx *mutex" "int flags"
diff --git a/share/man/man9/namei.9 b/share/man/man9/namei.9
index f98646725fb3..0be73f68cdda 100644
--- a/share/man/man9/namei.9
+++ b/share/man/man9/namei.9
@@ -31,9 +31,7 @@
.\" If you integrate this manpage in another OS, I'd appreciate a note
.\" - eivind@FreeBSD.org
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 23, 2015
+.Dd July 8, 2023
.Dt NAMEI 9
.Os
.Sh NAME
@@ -219,23 +217,10 @@ and we have not gone through any symlinks with an absolute path, and
the root otherwise.
.Pp
In this case, it is only used by
-.Fn lookup ,
+.Fn vfs_lookup ,
and should not be
considered valid after a call to
.Fn namei .
-If
-.Dv SAVESTART
-is set, this is set to the same as
-.Va ni_dvp ,
-with an extra
-.Xr vref 9 .
-To block
-.Fn NDFREE
-from releasing
-.Va ni_startdir ,
-the
-.Dv NDF_NO_STARTDIR_RELE
-can be set.
.It Va ni_dvp
Vnode pointer to directory of the object on which lookup is performed.
This is available on successful return if
@@ -246,13 +231,6 @@ is set.
It is locked if
.Dv LOCKPARENT
is set.
-Freeing this in
-.Fn NDFREE
-can be inhibited by
-.Dv NDF_NO_DVP_RELE , NDF_NO_DVP_PUT ,
-or
-.Dv NDF_NO_DVP_UNLOCK
-(with the obvious effects).
.It Va ni_vp
Vnode pointer to the resulting object,
.Dv NULL
@@ -264,13 +242,6 @@ If
.Dv LOCKLEAF
is set, it is also locked.
.Pp
-Freeing this in
-.Fn NDFREE
-can be inhibited by
-.Dv NDF_NO_VP_RELE , NDF_NO_VP_PUT ,
-or
-.Dv NDF_NO_VP_UNLOCK
-(with the obvious effects).
.It Va ni_cnd.cn_pnbuf
The pathname buffer contains the location of the file or directory
that will be used by the
@@ -279,28 +250,6 @@ operations.
It is managed by the
.Xr uma 9
zone allocation interface.
-If the
-.Dv SAVESTART
-or
-.Dv SAVENAME
-flag is set, then the pathname buffer is available
-after calling the
-.Fn namei
-function.
-.Pp
-To only deallocate resources used by the pathname buffer,
-.Va ni_cnd.cn_pnbuf ,
-then
-.Dv NDF_ONLY_PNBUF
-flag can be passed to the
-.Fn NDFREE
-function.
-To keep the pathname buffer intact,
-the
-.Dv NDF_NO_FREE_PNBUF
-flag can be passed to the
-.Fn NDFREE
-function.
.El
.Sh RETURN VALUES
If successful,
diff --git a/share/man/man9/netisr.9 b/share/man/man9/netisr.9
index efcb8ed8e7b1..6bb59b45ad31 100644
--- a/share/man/man9/netisr.9
+++ b/share/man/man9/netisr.9
@@ -25,9 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 25, 2017
+.Dd April 12, 2023
.Dt NETISR 9
.Os
.Sh NAME
@@ -220,9 +218,6 @@ Routing socket loopback
ARP
.It Dv NETISR_IPV6
IPv6
-.It Dv NETISR_EPAIR
-.Xr netstat 1 ,
-.Xr epair 4
.El
.Sh AUTHORS
This manual page and the
diff --git a/share/man/man9/nv.9 b/share/man/man9/nv.9
index c80e70116d67..67c05247fdfb 100644
--- a/share/man/man9/nv.9
+++ b/share/man/man9/nv.9
@@ -27,9 +27,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 19, 2018
+.Dd February 2, 2023
.Dt NV 9
.Os
.Sh NAME
@@ -933,8 +931,7 @@ do {
nvl = tmp;
while ((name = nvlist_next(nvl, &type, &cookie)) != NULL) {
if (type == NV_TYPE_NVLIST) {
- nvl = nvlist_get_nvlist(nvl,
- name);
+ nvl = nvlist_get_nvlist(nvl, name);
cookie = NULL;
} else if (type == NV_TYPE_NVLIST_ARRAY) {
nvl = nvlist_get_nvlist_array(nvl, name,
diff --git a/share/man/man9/nvmem.9 b/share/man/man9/nvmem.9
index fe06a98c29ce..812cd09a5e35 100644
--- a/share/man/man9/nvmem.9
+++ b/share/man/man9/nvmem.9
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 2018
.Dt nvmem 9
.Os
diff --git a/share/man/man9/ofw_bus_is_compatible.9 b/share/man/man9/ofw_bus_is_compatible.9
index 3f7dd0639716..1b44807e84e8 100644
--- a/share/man/man9/ofw_bus_is_compatible.9
+++ b/share/man/man9/ofw_bus_is_compatible.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 8, 2018
.Dt ofw_bus_is_compatible 9
.Os
diff --git a/share/man/man9/ofw_bus_status_okay.9 b/share/man/man9/ofw_bus_status_okay.9
index c8861c6df106..8c77e777cb7f 100644
--- a/share/man/man9/ofw_bus_status_okay.9
+++ b/share/man/man9/ofw_bus_status_okay.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 8, 2018
.Dt ofw_bus_status_okay 9
.Os
diff --git a/share/man/man9/ofw_graph.9 b/share/man/man9/ofw_graph.9
index becb5caffc1f..fe4b7a6b3b41 100644
--- a/share/man/man9/ofw_graph.9
+++ b/share/man/man9/ofw_graph.9
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 10, 2019
.Dt ofw_graph 9
.Os
diff --git a/share/man/man9/osd.9 b/share/man/man9/osd.9
index c4060f409566..82f279ef17f4 100644
--- a/share/man/man9/osd.9
+++ b/share/man/man9/osd.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 26, 2016
.Dt OSD 9
.Os
diff --git a/share/man/man9/owll.9 b/share/man/man9/owll.9
index a8b623a73a50..6df01ea2c748 100644
--- a/share/man/man9/owll.9
+++ b/share/man/man9/owll.9
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 22, 2016
.Dt OWLL 9
.Os
diff --git a/share/man/man9/own.9 b/share/man/man9/own.9
index c508fb0944fd..b27ef82a8b45 100644
--- a/share/man/man9/own.9
+++ b/share/man/man9/own.9
@@ -21,8 +21,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 20, 2015
.Dt OWN 9
.Os
diff --git a/share/man/man9/p_candebug.9 b/share/man/man9/p_candebug.9
index 722052a8c04d..c824db974154 100644
--- a/share/man/man9/p_candebug.9
+++ b/share/man/man9/p_candebug.9
@@ -1,5 +1,6 @@
.\"
.\" Copyright (c) 2003 Joseph Koshy <jkoshy@FreeBSD.org>
+.\" Copyright (c) 2023 Olivier Certner <olce.freebsd@certner.fr>
.\"
.\" All rights reserved.
.\"
@@ -25,9 +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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 19, 2006
+.Dd August 18, 2023
.Dt P_CANDEBUG 9
.Os
.Sh NAME
@@ -39,24 +38,27 @@
.Ft int
.Fn p_candebug "struct thread *td" "struct proc *p"
.Sh DESCRIPTION
-This function can be used to determine if a given process
+This function determines if a given process
.Fa p
-is debuggable by the thread
+is debuggable by some thread
.Fa td .
-.Sh SYSCTL VARIABLES
+.Pp
The following
.Xr sysctl 8
variables directly influence the behaviour of
.Fn p_candebug :
.Bl -tag -width indent
+.It Va security.bsd.unprivileged_proc_debug
+Must be set to a non-zero value to allow unprivileged processes
+access to the kernel's debug facilities.
.It Va kern.securelevel
Debugging of the init process is not allowed if this variable is
.Li 1
or greater.
-.It Va security.bsd.unprivileged_proc_debug
-Must be set to a non-zero value to allow unprivileged processes
-access to the kernel's debug facilities.
.El
+.Pp
+Other such variables indirectly influence it; see
+.Xr cr_bsd_visible 9 .
.Sh RETURN VALUES
The
.Fn p_candebug
@@ -70,35 +72,45 @@ is debuggable by thread
or a non-zero error return value otherwise.
.Sh ERRORS
.Bl -tag -width Er
-.It Bq Er EACCESS
-The MAC subsystem denied debuggability.
-.It Bq Er EAGAIN
-Process
-.Fa p
-is in the process of being
-.Fn exec Ns 'ed.
.It Bq Er EPERM
+An unprivileged process attempted to debug another process but the system is
+configured to deny it
+.Po
+see
+.Xr sysctl 8
+variable
+.Va security.bsd.unprivileged_proc_debug
+above
+.Pc .
+.It Bq Er ESRCH
Thread
.Fa td
-lacks super-user credentials and process
-.Fa p
-is executing a set-user-ID or set-group-ID executable.
+has been jailed and the process to debug does not belong to the same jail or one
+of its sub-jails, as determined by
+.Xr prison_check 9 .
+.It Bq Er ESRCH
+.Xr cr_bsd_visible 9
+denied visibility according to the BSD security policies in force.
.It Bq Er EPERM
Thread
.Fa td
-lacks super-user credentials and process
+lacks superuser credentials and its (effective) group set is not a superset of
+process
.Fa p Ns 's
-group set is not a subset of
-.Fa td Ns 's
-effective group set.
+whole group set
+.Pq "including real, effective and saved group IDs" .
.It Bq Er EPERM
Thread
.Fa td
-lacks super-user credentials and process
-.Fa p Ns 's
-user IDs do not match thread
-.Fa td Ns 's
-effective user ID.
+lacks superuser credentials and its (effective) user ID does not match all user
+IDs of process
+.Fa p .
+.It Bq Er EPERM
+Thread
+.Fa td
+lacks superuser credentials and process
+.Fa p
+is executing a set-user-ID or set-group-ID executable.
.It Bq Er EPERM
Process
.Fa p
@@ -109,30 +121,25 @@ and the
variable
.Va kern.securelevel
is greater than zero.
-.It Bq Er ESRCH
+.It Bq Er EBUSY
Process
.Fa p
-is not visible to thread
-.Fa td
-as determined by
-.Xr cr_seeotheruids 9
-or
-.Xr cr_seeothergids 9 .
-.It Bq Er ESRCH
-Thread
-.Fa td
-has been jailed and process
+is in the process of being
+.Fn exec Ns 'ed.
+.It Bq Er EPERM
+Process
.Fa p
-does not belong to the same jail as
-.Fa td .
-.It Bq Er ESRCH
-The MAC subsystem denied debuggability.
+denied debuggability
+.Po
+see
+.Xr procctl 2 ,
+command
+.Dv PROC_TRACE_CTL
+.Pc .
.El
.Sh SEE ALSO
-.Xr jail 2 ,
-.Xr sysctl 8 ,
-.Xr cr_seeothergids 9 ,
-.Xr cr_seeotheruids 9 ,
+.Xr prison_check 9 ,
.Xr mac 9 ,
-.Xr p_cansee 9 ,
-.Xr prison_check 9
+.Xr cr_bsd_visible 9 ,
+.Xr procctl 2 ,
+.Xr p_cansee 9
diff --git a/share/man/man9/p_cansee.9 b/share/man/man9/p_cansee.9
index b94ec30ac103..9fdce460dfea 100644
--- a/share/man/man9/p_cansee.9
+++ b/share/man/man9/p_cansee.9
@@ -24,21 +24,18 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 19, 2006
+.Dd August 18, 2023
.Dt P_CANSEE 9
.Os
.Sh NAME
.Nm p_cansee
.Nd determine visibility of a process
.Sh SYNOPSIS
-.In sys/param.h
.In sys/proc.h
.Ft int
.Fn p_cansee "struct thread *td" "struct proc *p"
.Sh DESCRIPTION
-This function can be used to determine if a given process
+This function determines if a given process
.Fa p
is visible to the thread
.Fa td ,
@@ -47,13 +44,14 @@ where the notion of
may be read as
.Dq "awareness of existence" .
.Pp
-The function is implemented using
-.Xr cr_cansee 9 ,
-and the dependencies on
-.Xr sysctl 8
-variables documented in the
-.Xr cr_cansee 9
-manual page apply.
+This function explicitly allows a thread to always see its own process,
+even with pending credentials changes
+.Po
+see
+.Xr ucred 9
+.Pc .
+Otherwise, it simply defers to
+.Xr cr_cansee 9 .
.Sh RETURN VALUES
The
.Fn p_cansee
@@ -64,30 +62,18 @@ if the process denoted by
.Fa p
is visible by thread
.Fa td ,
-or a non-zero error return value otherwise.
+or ESRCH otherwise.
.Sh ERRORS
.Bl -tag -width Er
.It Bq Er ESRCH
-Process
-.Fa p
-is not visible to thread
-.Fa td
-as determined by
-.Xr cr_cansee 9 .
-.It Bq Er ESRCH
Thread
.Fa td
-has been jailed and process
+is not part of process
.Fa p
-does not belong to the same jail as
-.Fa td .
-.It Bq Er ESRCH
-The MAC subsystem denied visibility.
+and cannot see it as determined by
+.Xr cr_cansee 9 .
.El
.Sh SEE ALSO
-.Xr jail 2 ,
-.Xr sysctl 8 ,
+.Xr ucred 9 ,
.Xr cr_cansee 9 ,
-.Xr mac 9 ,
-.Xr p_candebug 9 ,
-.Xr prison_check 9
+.Xr p_candebug 9
diff --git a/share/man/man9/panic.9 b/share/man/man9/panic.9
index c467b86dd5a1..ee422e45caef 100644
--- a/share/man/man9/panic.9
+++ b/share/man/man9/panic.9
@@ -1,7 +1,13 @@
.\" $NetBSD: panic.9,v 1.2 1996/10/09 17:20:04 explorer Exp $
.\"
+.\" SPDX-License-Identifier: BSD-4-Clause
+.\"
.\" Copyright (c) 1996 Michael Graff.
.\" All rights reserved.
+.\" Copyright (c) 2023 The FreeBSD Foundation
+.\"
+.\" Portions of this documentation were written by Mitchell Horne
+.\" under sponsorship from the FreeBSD Foundation.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -15,7 +21,7 @@
.\" must display the following acknowledgement:
.\" This product includes software developed by Michael Graff
.\" for the NetBSD Project.
-.\" 3. The name of the author may not be used to endorse or promote products
+.\" 4. The name of the author may not be used to endorse or promote products
.\" derived from this software without specific prior written permission
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
@@ -29,9 +35,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.
.\"
-.\" $FreeBSD$
-.\"
-.Dd April 23, 2015
+.Dd March 17, 2023
.Dt PANIC 9
.Os
.Sh NAME
@@ -40,10 +44,12 @@
.Sh SYNOPSIS
.In sys/types.h
.In sys/systm.h
+.Vt extern char *panicstr;
.Ft void
.Fn panic "const char *fmt" ...
.Ft void
.Fn vpanic "const char *fmt" "va_list ap"
+.Fn KERNEL_PANICKED
.Sh DESCRIPTION
The
.Fn panic
@@ -55,20 +61,97 @@ The message
is a
.Xr printf 3
style format string.
-The message is printed to the console and the location
-.Fa panicstr
-is set to the address of the message text for retrieval from the OS
-core dump.
+The message is printed to the console and
+.Va panicstr
+is set pointing to the address of the message text.
+This can be retrieved from a core dump at a later time.
+.Pp
+Upon entering the
+.Fn panic
+function the panicking thread disables interrupts and calls
+.Xr critical_enter 9 .
+This prevents the thread from being preempted or interrupted while the system
+is still in a running state.
+Next, it will instruct the other CPUs in the system to stop.
+This synchronizes with other threads to prevent concurrent panic conditions
+from interfering with one another.
+In the unlikely event of concurrent panics, only one panicking thread will proceed.
.Pp
-If the kernel debugger is installed control is passed to it, otherwise
-an attempt to save a core dump of the OS to a configured dump device
-is made.
+Control will be passed to the kernel debugger via
+.Fn kdb_enter .
+This is conditional on a debugger being installed and enabled by the
+.Va debugger_on_panic
+variable; see
+.Xr ddb 4
+and
+.Xr gdb 4 .
+The debugger may initiate a system reset, or it may eventually return.
.Pp
+Finally,
+.Xr kern_reboot 9
+is called to restart the system, and a kernel dump will be requested.
If
.Fn panic
-is called twice (from the disk sync routines, for example) the system is
-rebooted without syncing the disks.
+is called recursively (from the disk sync routines, for example),
+.Fn kern_reboot
+will be instructed not to sync the disks.
+.Pp
+The
+.Fn vpanic
+function implements the main body of
+.Fn panic .
+It is suitable to be called by functions which perform their own
+variable-length argument processing.
+In all other cases,
+.Fn panic
+is preferred.
+.Pp
+The
+.Fn KERNEL_PANICKED
+macro is the preferred way to determine if the system has panicked.
+It returns a boolean value.
+Most often this is used to avoid taking an action that cannot possibly succeed
+in a panic context.
+.Sh EXECUTION CONTEXT
+.\" TODO: This text describes the kernel debugger / kernel dump execution
+.\" context as well. It could be moved to a future kdb(9) page, and this
+.\" section would become a pointer.
+Once the panic has been initiated, code executing in a panic context is subject
+to the following restrictions:
+.Bl -bullet
+.It
+Single-threaded execution.
+The scheduler is disabled, and other CPUs are stopped/forced idle.
+Functions that manipulate the scheduler state must be avoided.
+This includes, but is not limited to,
+.Xr wakeup 9
+and
+.Xr sleepqueue 9
+functions.
+.It
+Interrupts are disabled.
+Device I/O (e.g. to the console) must be achieved with polling.
+.It
+Dynamic memory allocation cannot be relied on, and must be avoided.
+.It
+Lock acquisition/release will be ignored, meaning these operations will appear
+to succeed.
+.It
+Sleeping on a resource is not strictly prohibited, but will result in an
+immediate return from the sleep function.
+Time-based sleeps such as
+.Xr pause 9
+may be performed as a busy-wait.
+.El
.Sh RETURN VALUES
The
.Fn panic
-function does not return.
+and
+.Fn vpanic
+functions do not return.
+.Sh SEE ALSO
+.Xr printf 3 ,
+.Xr ddb 4 ,
+.Xr gdb 4 ,
+.Xr KASSERT 9 ,
+.Xr kern_reboot 9
diff --git a/share/man/man9/pci.9 b/share/man/man9/pci.9
index 5dc9ef099a87..3c3e54bf8760 100644
--- a/share/man/man9/pci.9
+++ b/share/man/man9/pci.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 20, 2021
.Dt PCI 9
.Os
diff --git a/share/man/man9/pci_iov_schema.9 b/share/man/man9/pci_iov_schema.9
index b065b2e78dae..764d357fbaee 100644
--- a/share/man/man9/pci_iov_schema.9
+++ b/share/man/man9/pci_iov_schema.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 8, 2015
.Dt PCI_IOV_SCHEMA 9
.Os
diff --git a/share/man/man9/pfil.9 b/share/man/man9/pfil.9
index 620d024bf8d1..63eb3da8f2a3 100644
--- a/share/man/man9/pfil.9
+++ b/share/man/man9/pfil.9
@@ -27,8 +27,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 28, 2019
.Dt PFIL 9
.Os
diff --git a/share/man/man9/pfind.9 b/share/man/man9/pfind.9
index 5a3f5caf1344..48e34d65d6ab 100644
--- a/share/man/man9/pfind.9
+++ b/share/man/man9/pfind.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 11, 2001
.Dt PFIND 9
.Os
diff --git a/share/man/man9/pget.9 b/share/man/man9/pget.9
index 12eda29ca7c8..af292d2180b1 100644
--- a/share/man/man9/pget.9
+++ b/share/man/man9/pget.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 3, 2014
.Dt PGET 9
.Os
diff --git a/share/man/man9/pgfind.9 b/share/man/man9/pgfind.9
index 5a2cf289f64b..58e2e290fc2a 100644
--- a/share/man/man9/pgfind.9
+++ b/share/man/man9/pgfind.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 8, 2001
.Dt PGFIND 9
.Os
diff --git a/share/man/man9/physio.9 b/share/man/man9/physio.9
index 977c4677df84..09f2886cf07b 100644
--- a/share/man/man9/physio.9
+++ b/share/man/man9/physio.9
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 19, 2012
.Dt PHYSIO 9
.Os
diff --git a/share/man/man9/pmap.9 b/share/man/man9/pmap.9
index 0b1987a19d3b..8c86f44d9ff2 100644
--- a/share/man/man9/pmap.9
+++ b/share/man/man9/pmap.9
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 30, 2016
+.Dd January 12, 2024
.Dt PMAP 9
.Os
.Sh NAME
@@ -96,9 +94,9 @@ operation.
.Xr pmap_extract_and_hold 9 ,
.Xr pmap_growkernel 9 ,
.Xr pmap_init 9 ,
-.Xr pmap_init2 9 ,
.Xr pmap_is_modified 9 ,
.Xr pmap_is_prefaultable 9 ,
+.Xr pmap_kextract 9 ,
.Xr pmap_map 9 ,
.Xr pmap_mincore 9 ,
.Xr pmap_object_init_pt 9 ,
@@ -106,7 +104,6 @@ operation.
.Xr pmap_page_init 9 ,
.Xr pmap_pinit 9 ,
.Xr pmap_pinit0 9 ,
-.Xr pmap_pinit2 9 ,
.Xr pmap_protect 9 ,
.Xr pmap_qenter 9 ,
.Xr pmap_qremove 9 ,
diff --git a/share/man/man9/pmap_activate.9 b/share/man/man9/pmap_activate.9
index 8d9f0504c02b..9a3989833c45 100644
--- a/share/man/man9/pmap_activate.9
+++ b/share/man/man9/pmap_activate.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_ACTIVATE 9
.Os
diff --git a/share/man/man9/pmap_clear_modify.9 b/share/man/man9/pmap_clear_modify.9
index a873c91df9ad..708ea1aa4687 100644
--- a/share/man/man9/pmap_clear_modify.9
+++ b/share/man/man9/pmap_clear_modify.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 17, 2014
.Dt PMAP_CLEAR_MODIFY 9
.Os
diff --git a/share/man/man9/pmap_copy.9 b/share/man/man9/pmap_copy.9
index 4899b6d970c6..cfc2428232dd 100644
--- a/share/man/man9/pmap_copy.9
+++ b/share/man/man9/pmap_copy.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_COPY 9
.Os
diff --git a/share/man/man9/pmap_enter.9 b/share/man/man9/pmap_enter.9
index 564c91d2f4f0..d4b8dd7eccd5 100644
--- a/share/man/man9/pmap_enter.9
+++ b/share/man/man9/pmap_enter.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 16, 2018
.Dt PMAP_ENTER 9
.Os
diff --git a/share/man/man9/pmap_extract.9 b/share/man/man9/pmap_extract.9
index 77f3b47ec51e..896558797c74 100644
--- a/share/man/man9/pmap_extract.9
+++ b/share/man/man9/pmap_extract.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_EXTRACT 9
.Os
diff --git a/share/man/man9/pmap_growkernel.9 b/share/man/man9/pmap_growkernel.9
index 1385ddcb1273..4a39ed279fac 100644
--- a/share/man/man9/pmap_growkernel.9
+++ b/share/man/man9/pmap_growkernel.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_GROWKERNEL 9
.Os
diff --git a/share/man/man9/pmap_init.9 b/share/man/man9/pmap_init.9
index b377208231d6..3ca609d0d3fd 100644
--- a/share/man/man9/pmap_init.9
+++ b/share/man/man9/pmap_init.9
@@ -23,14 +23,11 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 10, 2005
+.Dd January 12, 2024
.Dt PMAP_INIT 9
.Os
.Sh NAME
-.Nm pmap_init ,
-.Nm pmap_init2
+.Nm pmap_init
.Nd initialize the pmap subsystem
.Sh SYNOPSIS
.In sys/param.h
@@ -38,8 +35,6 @@
.In vm/pmap.h
.Ft void
.Fn pmap_init "void"
-.Ft void
-.Fn pmap_init2 "void"
.Sh DESCRIPTION
The
.Fn pmap_init
@@ -47,17 +42,10 @@ function initializes the
.Xr pmap 9
sub-system.
It is called during system initialization by
-.Fn vm_init ,
+.Fn vm_mem_init ,
to initialize any structures that the
.Nm
system needs in order to map between physical and virtual memory.
-.Pp
-The
-.Fn pmap_init2
-function initializes a zone for the PV entries.
-These are used to implement page sharing at the physical level.
-A high water mark is set so that the system can recover from
-excessive numbers of PV entries.
.Sh SEE ALSO
.Xr pmap 9
.Sh AUTHORS
diff --git a/share/man/man9/pmap_is_modified.9 b/share/man/man9/pmap_is_modified.9
index 66493cda651e..4f6a15b8ba3a 100644
--- a/share/man/man9/pmap_is_modified.9
+++ b/share/man/man9/pmap_is_modified.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 17, 2014
.Dt PMAP_IS_MODIFIED 9
.Os
@@ -36,7 +34,7 @@
.In sys/param.h
.In vm/vm.h
.In vm/pmap.h
-.Ft boolean_t
+.Ft bool
.Fn pmap_is_modified "vm_page_t m"
.Ft int
.Fn pmap_ts_referenced "vm_page_t m"
diff --git a/share/man/man9/pmap_is_prefaultable.9 b/share/man/man9/pmap_is_prefaultable.9
index 9c3a7490e732..eb8bd54c2953 100644
--- a/share/man/man9/pmap_is_prefaultable.9
+++ b/share/man/man9/pmap_is_prefaultable.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_IS_PREFAULTABLE 9
.Os
@@ -35,7 +33,7 @@
.In sys/param.h
.In vm/vm.h
.In vm/pmap.h
-.Ft boolean_t
+.Ft bool
.Fn pmap_is_prefaultable "pmap_t pmap" "vm_offset_t va"
.Sh DESCRIPTION
The
diff --git a/share/man/man9/pmap_kextract.9 b/share/man/man9/pmap_kextract.9
new file mode 100644
index 000000000000..a93bbc70b351
--- /dev/null
+++ b/share/man/man9/pmap_kextract.9
@@ -0,0 +1,77 @@
+.\"
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2023 The FreeBSD Foundation
+.\"
+.\" This manual page was written by Mina Galić <FreeBSD@igalic.co> under
+.\" sponsorship from the FreeBSD Foundation.
+.\"
+.Dd October 16, 2023
+.Dt PMAP_KEXTRACT 9
+.Os
+.Sh NAME
+.Nm pmap_kextract ,
+.Nm vtophys
+.Nd extract a physical address from the kernel page table
+.Sh SYNOPSIS
+.In sys/param.h
+.In vm/vm.h
+.In vm/pmap.h
+.Ft vm_paddr_t
+.Fo pmap_kextract
+.Fa "vm_offset_t va"
+.Fc
+.Ft vm_paddr_t
+.Fo vtophys
+.Fa "vm_offset_t va"
+.Fc
+.Sh DESCRIPTION
+The
+.Fn pmap_kextract
+function retrieves the underlying physical memory address corresponding to the
+given kernel virtual address
+.Fa va .
+The caller is responsible for ensuring that
+.Fa va
+belongs to a valid mapping in the kernel address space.
+The returned physical address is only meaningful as long as the mapping remains
+stable, so the caller must also have some knowledge or guarantee of the
+mapping's lifetime.
+For example, it is invalid to call
+.Fn pmap_kextract
+with the address of a malloc'd object while there is a possibility for that
+object to be freed concurrently.
+.Pp
+Unlike
+.Xr pmap_extract 9 ,
+.Fn pmap_kextract
+is safe to be called from any context; it has no internal locking or sleep.
+.Pp
+.Fn vtophys
+is an alias for
+.Fn pmap_kextract
+and behaves identically.
+.Sh RETURN VALUES
+The
+.Fn pmap_kextract
+function returns the physical address of memory mapped at the kernel
+virtual address
+.Fa va .
+.Pp
+.Fn pmap_kextract
+generally does not fail.
+However, if supplied with an illegitimate value for
+.Fa va ,
+the function may return zero, an invalid non-zero value, or call
+.Xr panic 9 .
+.Sh SEE ALSO
+.Xr pmap 9 ,
+.Xr pmap_extract 9
+.Sh AUTHORS
+.An -nosplit
+This manual page was written by
+.An Mina Galić Aq Mt FreeBSD@igalic.co ,
+based on the
+.Xr pmap_extract 9
+page written by
+.An Bruce M Simpson Aq Mt bms@spc.org .
diff --git a/share/man/man9/pmap_map.9 b/share/man/man9/pmap_map.9
index f813a217ce9c..9af182864776 100644
--- a/share/man/man9/pmap_map.9
+++ b/share/man/man9/pmap_map.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_MAP 9
.Os
diff --git a/share/man/man9/pmap_mincore.9 b/share/man/man9/pmap_mincore.9
index 383387cfdb4a..38c3f9ac071e 100644
--- a/share/man/man9/pmap_mincore.9
+++ b/share/man/man9/pmap_mincore.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_MINCORE 9
.Os
diff --git a/share/man/man9/pmap_object_init_pt.9 b/share/man/man9/pmap_object_init_pt.9
index f87c8a9fc56a..a4c6f804fa55 100644
--- a/share/man/man9/pmap_object_init_pt.9
+++ b/share/man/man9/pmap_object_init_pt.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_OBJECT_INIT_PT 9
.Os
diff --git a/share/man/man9/pmap_page_exists_quick.9 b/share/man/man9/pmap_page_exists_quick.9
index cc377ab7793a..030d0e1fdddd 100644
--- a/share/man/man9/pmap_page_exists_quick.9
+++ b/share/man/man9/pmap_page_exists_quick.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_PAGE_EXISTS_QUICK 9
.Os
@@ -35,7 +33,7 @@
.In sys/param.h
.In vm/vm.h
.In vm/pmap.h
-.Ft boolean_t
+.Ft bool
.Fn pmap_page_exists_quick "pmap_t pmap" "vm_page_t m"
.Sh DESCRIPTION
The
@@ -48,13 +46,13 @@ It is typically called from the VM paging code.
.Sh IMPLEMENTATION NOTES
The PV count used above may be changed upwards or downwards in future;
it is only necessary that
-.Dv TRUE
+.Dv true
be returned for a small subset of pmaps for proper page aging.
.Sh RETURN VALUES
The
.Fn pmap_page_exists_quick
returns
-.Dv TRUE
+.Dv true
only if the PV entry for the physical map
.Fa pmap
is one of the first 16 PVs linked from the page
diff --git a/share/man/man9/pmap_page_init.9 b/share/man/man9/pmap_page_init.9
index d6787e36aa11..4e39f855a426 100644
--- a/share/man/man9/pmap_page_init.9
+++ b/share/man/man9/pmap_page_init.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 10, 2005
.Dt PMAP_PAGE_INIT 9
.Os
diff --git a/share/man/man9/pmap_pinit.9 b/share/man/man9/pmap_pinit.9
index f001e7454744..8ef16a69e5fe 100644
--- a/share/man/man9/pmap_pinit.9
+++ b/share/man/man9/pmap_pinit.9
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 21, 2003
+.Dd January 12, 2024
.Dt PMAP_PINIT 9
.Os
.Sh NAME
@@ -54,11 +52,6 @@ The
function initializes the physical map
.Fa pm ,
associated with process 0, the first process created in the system.
-.Sh IMPLEMENTATION NOTES
-The
-.Fn pmap_pinit2
-function has been deprecated, and should be implemented as a stub
-until further notice.
.Sh SEE ALSO
.Xr pmap 9 ,
.Xr pmap_growkernel 9
diff --git a/share/man/man9/pmap_protect.9 b/share/man/man9/pmap_protect.9
index 659dc6db6a2d..80959ced0a35 100644
--- a/share/man/man9/pmap_protect.9
+++ b/share/man/man9/pmap_protect.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 18, 2014
.Dt PMAP_PROTECT 9
.Os
diff --git a/share/man/man9/pmap_qenter.9 b/share/man/man9/pmap_qenter.9
index d72174f15a30..bf7b79f2fc03 100644
--- a/share/man/man9/pmap_qenter.9
+++ b/share/man/man9/pmap_qenter.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 15, 2018
.Dt PMAP_QENTER 9
.Os
diff --git a/share/man/man9/pmap_quick_enter_page.9 b/share/man/man9/pmap_quick_enter_page.9
index 2089dd98a932..418b657d9f7a 100644
--- a/share/man/man9/pmap_quick_enter_page.9
+++ b/share/man/man9/pmap_quick_enter_page.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 6, 2015
.Dt PMAP_QUICK_ENTER_PAGE 9
.Os
diff --git a/share/man/man9/pmap_release.9 b/share/man/man9/pmap_release.9
index b328bd852c89..b343c4c66786 100644
--- a/share/man/man9/pmap_release.9
+++ b/share/man/man9/pmap_release.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_RELEASE 9
.Os
diff --git a/share/man/man9/pmap_remove.9 b/share/man/man9/pmap_remove.9
index 4426f0de7d42..0b48b92b52fa 100644
--- a/share/man/man9/pmap_remove.9
+++ b/share/man/man9/pmap_remove.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_REMOVE 9
.Os
diff --git a/share/man/man9/pmap_resident_count.9 b/share/man/man9/pmap_resident_count.9
index 343dc7cc5cf1..fae1f759c0d6 100644
--- a/share/man/man9/pmap_resident_count.9
+++ b/share/man/man9/pmap_resident_count.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt PMAP_RESIDENT_COUNT 9
.Os
diff --git a/share/man/man9/pmap_unwire.9 b/share/man/man9/pmap_unwire.9
index 964eff9a469f..ca36d4e07205 100644
--- a/share/man/man9/pmap_unwire.9
+++ b/share/man/man9/pmap_unwire.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 17, 2014
.Dt PMAP_UNWIRE 9
.Os
diff --git a/share/man/man9/pmap_zero_page.9 b/share/man/man9/pmap_zero_page.9
index 52e76520ec40..82cf9ccf79ee 100644
--- a/share/man/man9/pmap_zero_page.9
+++ b/share/man/man9/pmap_zero_page.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 30, 2016
.Dt PMAP_ZERO 9
.Os
diff --git a/share/man/man9/printf.9 b/share/man/man9/printf.9
index 4d3a6fb8b2a5..9f026d1d2004 100644
--- a/share/man/man9/printf.9
+++ b/share/man/man9/printf.9
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 9, 2020
+.Dd April 25, 2023
.Dt PRINTF 9
.Os
.Sh NAME
@@ -94,11 +92,13 @@ and a
These are used as a register value and a print mask for decoding bitmasks.
The print mask is made up of two parts: the base and the
arguments.
-The base value is the output base expressed as an integer value;
+The base value is the output base (radix) expressed as an octal value;
for example, \e10 gives octal and \e20 gives hexadecimal.
The arguments are made up of a sequence of bit identifiers.
-Each bit identifier begins with an integer value which is the number of the
-bit (starting from 1) this identifier describes.
+Each bit identifier begins with an
+.Em octal
+value which is the number of the bit (starting from 1) this identifier
+describes.
The rest of the identifier is a string of characters containing the name of
the bit.
The string is terminated by either the bit number at the start of the next
@@ -164,14 +164,14 @@ printf_test(void)
{
printf("reg=%b\en", 3, "\e10\e2BITTWO\e1BITONE");
- printf("out: %4D\en", "AAAA", ":");
+ printf("out: %4D\en", "AAZZ", ":");
}
.Ed
.Pp
will produce the following output:
.Bd -literal -offset indent
reg=3<BITTWO,BITONE>
-out: 41:41:41:41
+out: 41:41:5a:5a
.Ed
.Pp
The call
diff --git a/share/man/man9/prison_check.9 b/share/man/man9/prison_check.9
index 4fe1f2f4eec4..7f174e3ceb2e 100644
--- a/share/man/man9/prison_check.9
+++ b/share/man/man9/prison_check.9
@@ -25,24 +25,23 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd December 11, 2003
+.Dd August 18, 2023
.Dt PRISON_CHECK 9
.Os
.Sh NAME
.Nm prison_check
-.Nd determine if two credentials belong to the same jail
+.Nd determine if subjects may see entities according to jail restrictions
.Sh SYNOPSIS
.In sys/jail.h
.Ft int
.Fn prison_check "struct ucred *cred1" "struct ucred *cred2"
.Sh DESCRIPTION
-This function can be used to determine if the two credentials
+This function determines if a subject with credentials
.Fa cred1
-and
+is denied access to subjects or objects with credentials
.Fa cred2
-belong to the same jail.
+according to the policy that a subject can see subjects or objects in its own
+jail or any sub-jail of it.
.Sh RETURN VALUES
The
.Fn prison_check
@@ -50,12 +49,9 @@ function
returns
.Er ESRCH
if
-.Fa cred1
-has been jailed, and
-.Fa cred1
-and
.Fa cred2
-do not belong to the same jail.
+is not in the same jail or a sub-jail of that of
+.Fa cred1 .
In all other cases,
.Fn prison_check
returns zero.
diff --git a/share/man/man9/priv.9 b/share/man/man9/priv.9
index 93dce23855c1..80d0542e9bdf 100644
--- a/share/man/man9/priv.9
+++ b/share/man/man9/priv.9
@@ -26,8 +26,6 @@
.\" NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
.\" SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 19, 2018
.Dt PRIV 9
.Os
diff --git a/share/man/man9/prng.9 b/share/man/man9/prng.9
index 20cfcf910442..9fcc6f1e3fab 100644
--- a/share/man/man9/prng.9
+++ b/share/man/man9/prng.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 5, 2020
.Dt PRNG 9
.Os
diff --git a/share/man/man9/proc_rwmem.9 b/share/man/man9/proc_rwmem.9
index 10a4773ad0dc..fb59502608af 100644
--- a/share/man/man9/proc_rwmem.9
+++ b/share/man/man9/proc_rwmem.9
@@ -21,8 +21,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 7, 2015
.Dt PROC_RWMEM 9
.Os
diff --git a/share/man/man9/pseudofs.9 b/share/man/man9/pseudofs.9
index 98ccc6cae7b9..e076c398c711 100644
--- a/share/man/man9/pseudofs.9
+++ b/share/man/man9/pseudofs.9
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2001 Dag-Erling Coïdan Smørgrav
+.\" Copyright (c) 2001 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 20, 2007
.Dt PSEUDOFS 9
.Os
diff --git a/share/man/man9/psignal.9 b/share/man/man9/psignal.9
index aa170322e7cf..2d57673d0401 100644
--- a/share/man/man9/psignal.9
+++ b/share/man/man9/psignal.9
@@ -26,16 +26,14 @@
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.\" $NetBSD: psignal.9,v 1.1 1996/06/22 22:57:35 pk Exp $
-.\" $FreeBSD$
.\"
-.Dd October 8, 2011
+.Dd July 14, 2023
.Dt PSIGNAL 9
.Os
.Sh NAME
.Nm psignal ,
.Nm kern_psignal ,
.Nm pgsignal ,
-.Nm gsignal ,
.Nm tdsignal
.Nd post signal to a thread, process, or process group
.Sh SYNOPSIS
@@ -46,8 +44,6 @@
.Ft void
.Fn pgsignal "struct pgrp *pgrp" "int signum" "int checkctty"
.Ft void
-.Fn gsignal "int pgid" "int signum"
-.Ft void
.Fn tdsignal "struct thread *td" "int signum"
.Sh DESCRIPTION
These functions post a signal to a thread or one or more processes.
@@ -129,24 +125,6 @@ is
no action is taken.
.Pp
The
-.Fn gsignal
-function posts signal number
-.Fa signum
-to each member of the process group identified by the group id
-.Fa pgid .
-.Fn gsignal
-first finds the group structure associated with
-.Fa pgid ,
-then invokes
-.Fn pgsignal
-with the argument
-.Fa checkctty
-set to zero.
-If
-.Fa pgid
-is zero no action is taken.
-.Pp
-The
.Fn tdsignal
function posts signal number
.Fa signum
diff --git a/share/man/man9/pwmbus.9 b/share/man/man9/pwmbus.9
index 858a27b9afe3..1cd10d6f92db 100644
--- a/share/man/man9/pwmbus.9
+++ b/share/man/man9/pwmbus.9
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 9, 2021
.Dt PWMBUS 9
.Os
diff --git a/share/man/man9/random.9 b/share/man/man9/random.9
index 1c5f962b1363..7fc721564897 100644
--- a/share/man/man9/random.9
+++ b/share/man/man9/random.9
@@ -23,10 +23,8 @@
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.\" "
-.Dd March 22, 2021
+.Dd March 18, 2024
.Dt RANDOM 9
.Os
.Sh NAME
@@ -135,7 +133,7 @@ The deprecated
.Fn random
function will return a 31-bit value.
It is obsolete and scheduled to be removed in
-.Fx 14.0 .
+.Fx 15.0 .
Consider
.Xr prng 9
instead and see
diff --git a/share/man/man9/random_harvest.9 b/share/man/man9/random_harvest.9
index 6ae643ba2fb1..0f98d77bcc18 100644
--- a/share/man/man9/random_harvest.9
+++ b/share/man/man9/random_harvest.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 26, 2018
.Dt RANDOM_HARVEST 9
.Os
diff --git a/share/man/man9/ratecheck.9 b/share/man/man9/ratecheck.9
index 9e02caf7e1cc..71f19839226f 100644
--- a/share/man/man9/ratecheck.9
+++ b/share/man/man9/ratecheck.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 11, 2022
.Dt RATECHECK 9
.Os
diff --git a/share/man/man9/redzone.9 b/share/man/man9/redzone.9
index 6328236ced5d..f9a5cef6e5f5 100644
--- a/share/man/man9/redzone.9
+++ b/share/man/man9/redzone.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 9, 2009
.Dt REDZONE 9
.Os
diff --git a/share/man/man9/refcount.9 b/share/man/man9/refcount.9
index 9171062a70b6..0c8e4380aed3 100644
--- a/share/man/man9/refcount.9
+++ b/share/man/man9/refcount.9
@@ -30,9 +30,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd November 2, 2020
+.Dd October 12, 2022
.Dt REFCOUNT 9
.Os
.Sh NAME
@@ -48,7 +46,7 @@
.Fn refcount_init "volatile u_int *count" "u_int value"
.Ft u_int
.Fn refcount_load "volatile u_int *count"
-.Ft void
+.Ft u_int
.Fn refcount_acquire "volatile u_int *count"
.Ft bool
.Fn refcount_acquire_checked "volatile u_int *count"
@@ -91,6 +89,7 @@ qualifier.
The
.Fn refcount_acquire
function is used to acquire a new reference.
+It returns the counter value before the new reference was acquired.
The caller is responsible for ensuring that it holds a valid reference
while obtaining a new reference.
For example,
diff --git a/share/man/man9/resettodr.9 b/share/man/man9/resettodr.9
index 9818c8fd435b..a697500bc15d 100644
--- a/share/man/man9/resettodr.9
+++ b/share/man/man9/resettodr.9
@@ -29,8 +29,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 13, 1995
.Dt RESETTODR 9
.Os
diff --git a/share/man/man9/resource_int_value.9 b/share/man/man9/resource_int_value.9
index 3eed8761f63b..08efe41a29de 100644
--- a/share/man/man9/resource_int_value.9
+++ b/share/man/man9/resource_int_value.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 1, 2001
.Dt RESOURCE_INT_VALUE 9
.Os
diff --git a/share/man/man9/rijndael.9 b/share/man/man9/rijndael.9
index 1d8d90412b0e..0084b3adfeb1 100644
--- a/share/man/man9/rijndael.9
+++ b/share/man/man9/rijndael.9
@@ -23,8 +23,6 @@
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
.\" "
.Dd February 6, 2002
.Dt RIJNDAEL 9
diff --git a/share/man/man9/rman.9 b/share/man/man9/rman.9
index a5a8c34cde90..35a2d176233c 100644
--- a/share/man/man9/rman.9
+++ b/share/man/man9/rman.9
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd May 20, 2016
+.Dd March 13, 2024
.Dt RMAN 9
.Os
.Sh NAME
@@ -58,7 +56,9 @@
.Nm rman_set_bushandle ,
.Nm rman_get_bushandle ,
.Nm rman_set_rid ,
-.Nm rman_get_rid
+.Nm rman_get_rid ,
+.Nm rman_set_type ,
+.Nm rman_get_type
.Nd resource management functions
.Sh SYNOPSIS
.In sys/types.h
@@ -127,6 +127,10 @@
.Fn rman_set_rid "struct resource *r" "int rid"
.Ft int
.Fn rman_get_rid "struct resource *r"
+.Ft void
+.Fn rman_set_type "struct resource *r" "int type"
+.Ft int
+.Fn rman_get_type "struct resource *r"
.Sh DESCRIPTION
The
.Nm
@@ -459,6 +463,14 @@ The
function retrieves this RID.
.Pp
The
+.Fn rman_set_type
+function associates a resource type with a resource
+.Fa r .
+The
+.Fn rman_get_type
+function retrieves this type.
+.Pp
+The
.Fn rman_get_device
function returns a pointer to the device which reserved the resource
.Fa r .
diff --git a/share/man/man9/rmlock.9 b/share/man/man9/rmlock.9
index 283bd1b4fbb2..777492f89939 100644
--- a/share/man/man9/rmlock.9
+++ b/share/man/man9/rmlock.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.\" Based on rwlock.9 man page
.Dd April 12, 2021
.Dt RMLOCK 9
diff --git a/share/man/man9/rtalloc.9 b/share/man/man9/rtalloc.9
deleted file mode 100644
index ea22f8717d4a..000000000000
--- a/share/man/man9/rtalloc.9
+++ /dev/null
@@ -1,282 +0,0 @@
-.\"
-.\" Copyright 1996 Massachusetts Institute of Technology
-.\"
-.\" Permission to use, copy, modify, and distribute this software and
-.\" its documentation for any purpose and without fee is hereby
-.\" granted, provided that both the above copyright notice and this
-.\" permission notice appear in all copies, that both the above
-.\" copyright notice and this permission notice appear in all
-.\" supporting documentation, and that the name of M.I.T. not be used
-.\" in advertising or publicity pertaining to distribution of the
-.\" software without specific, written prior permission. M.I.T. makes
-.\" no representations about the suitability of this software for any
-.\" purpose. It is provided "as is" without express or implied
-.\" warranty.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY M.I.T. ``AS IS''. M.I.T. DISCLAIMS
-.\" ALL EXPRESS OR IMPLIED WARRANTIES WITH REGARD TO THIS SOFTWARE,
-.\" INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT
-.\" SHALL M.I.T. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-.\" LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
-.\" USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
-.\" ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd July 4, 2012
-.Dt RTALLOC 9
-.Os
-.Sh NAME
-.Nm rtalloc1_fib ,
-.Nm rtalloc_ign_fib ,
-.Nm rtalloc_fib
-.Nd look up a route in the kernel routing table
-.Sh SYNOPSIS
-.In sys/types.h
-.In sys/socket.h
-.In net/route.h
-.Ft "struct rtentry *"
-.Fn rtalloc1_fib "struct sockaddr *dst" "int report" "u_long flags" "u_int fibnum"
-.Ft void
-.Fn rtalloc_fib "struct route *ro" "u_int fibnum"
-.Ft void
-.Fn rtalloc_ign_fib "struct route *ro" "u_long flags" "u_int fibnum"
-.Fn RTFREE_LOCKED "struct rt_entry *rt"
-.Fn RTFREE "struct rt_entry *rt"
-.Fn RT_LOCK "struct rt_entry *rt"
-.Fn RT_UNLOCK "struct rt_entry *rt"
-.Fn RT_ADDREF "struct rt_entry *rt"
-.Fn RT_REMREF "struct rt_entry *rt"
-.Fn RO_RTFREE "struct route *ro"
-.Ft void
-.Fn rtfree "struct rt_entry *rt"
-.Ft "struct rtentry *"
-.Fn rtalloc1 "struct sockaddr *dst" "int report" "u_long flags"
-.Ft void
-.Fn rtalloc "struct route *ro"
-.Ft void
-.Fn rtalloc_ign "struct route *ro" "u_long flags"
-.Pp
-.Cd options RADIX_MPATH
-.Sh DESCRIPTION
-The kernel uses a radix tree structure to manage routes for the
-networking subsystem.
-If compiled with
-.Cd options RADIX_MPATH
-kernel may maintain several independent forwarding information databases (FIBs).
-The
-.Fn rtalloc
-family of routines is used by protocols to query these structures for a
-route corresponding to a particular end-node address, and to cause
-certain protocol\- and interface-specific actions to take place.
-.Pp
-The
-.Fn rtalloc1_fib
-function is the most general form of
-.Fn rtalloc ,
-and all of the other forms are implemented as calls to it.
-It takes a
-.Fa "struct sockaddr *"
-directly as the
-.Fa dst
-argument.
-The second argument,
-.Fa report ,
-controls whether the routing sockets are notified when a lookup fails.
-The third argument,
-.Fa flags ,
-is a combination of
-the following values:
-.Bl -item -offset indent
-.It
-.Dv RTF_RNH_LOCKED
-indicates that the radix tree lock is already held
-.El
-.Pp
-The last argument
-.Fa fibnum
-specifies number of forwarding information database (FIB) on which
-the lookup should be performed.
-In case of success the
-.Fn rtalloc1_fib
-function returns a pointer to a locked
-.Vt "struct rtentry"
-with an additional reference.
-.Pp
-The
-.Fn rtalloc_fib
-is the most simple variant.
-Its main argument is
-.Fa ro ,
-a pointer to a
-.Fa "struct route" ,
-which is defined as follows:
-.Bd -literal -offset indent
-struct route {
- struct rtentry *ro_rt;
- struct llentry *ro_lle;
- struct sockaddr ro_dst;
-};
-.Ed
-.Pp
-Thus, this function can only be used for address families which are
-smaller than the default
-.Ft "struct sockaddr" .
-Before calling
-.Fn rtalloc_fib
-for the first time, callers should ensure that unused bits of the
-structure are set to zero.
-The second argument
-.Fa fibnum
-is FIB number.
-In case of success of the
-.Fn rtalloc_fib
-the
-.Fa ro_rt
-points to a valid and unlocked
-.Xr rtentry 9 ,
-which has an additional reference put on it, freeing which is
-responsibility of the caller.
-On subsequent calls,
-.Fn rtalloc_fib
-returns without performing a lookup if
-.Fa ro->ro_rt
-is non-null and the
-.Dv RTF_UP
-flag is set in the rtentry's
-.Fa rt_flags
-field.
-.Pp
-The
-.Fn rtalloc_ign_fib
-function is the same as the
-.Fn rtalloc_fib ,
-but there is additional
-.Fa flags
-argument, which is same as in
-.Fn rtalloc1_fib .
-.Pp
-The
-.Fn RTFREE_LOCKED
-macro is used to unref and possibly free a locked routing entry
-with one our reference, for example previously allocated by
-.Fn rtalloc1_fib .
-.Pp
-The
-.Fn RTFREE
-macro is used to unref and possibly free an unlocked route entries with
-one our reference, for example previously allocated by
-.Fn rtalloc_fib
-or
-.Fn rtalloc_ign_fib .
-.Pp
-Both
-.Fn RTFREE_LOCKED
-and
-.Fn RTFREE
-macros decrement the reference count on the routing table entry,
-and proceed with actual freeing if the reference count has reached zero.
-.Pp
-The
-.Fn RT_LOCK
-macro is used to lock a routing table entry.
-.Pp
-The
-.Fn RT_UNLOCK
-macro is used to unlock a routing table entry.
-.Pp
-The
-.Fn RT_ADDREF
-macro increments the reference count on a previously locked route entry.
-It should be used whenever a reference to an
-.Xr rtentry 9
-is going to be stored outside the routing table.
-.Pp
-The
-.Fn RT_REMREF
-macro decrements the reference count on a previously locked route entry.
-Its usage is contrary to
-.Fn RT_ADDREF .
-.Pp
-The
-.Fn RO_RTFREE
-macro is used to free route entry that is referenced by struct route.
-At certain circumstances the latter may not hold a reference on rtentry,
-and
-.Fn RO_RTFREE
-treats such routes correctly.
-.Pp
-The
-.Fn rtfree
-function does the actual free of the routing table entry, and shouldn't
-be called directly by facilities, that just perform routing table lookups.
-.Sh LEGACY INTERFACE
-Prior to introduction of multiple routing tables functions did not
-require the
-.Fa "u_int fibnum"
-argument.
-Legacy
-.Fn rtalloc1 ,
-.Fn rtalloc
-and
-.Fn rtalloc_ign
-functions are kept for compatibility, and are equivalent to
-calling new interface with
-.Fa fibnum
-argument equal to
-.Va 0 ,
-which implies default forwarding table.
-.Sh RETURN VALUES
-The
-.Fn rtalloc1_fib
-function returns a pointer to a locked routing-table entry if it succeeds,
-otherwise a null pointer.
-The
-.Fn rtalloc_fib
-and
-.Fn rtalloc_ign_fib
-functions do not return a value, but they fill in the
-.Fa *ro_rt
-member of the
-.Fa *ro
-argument with a pointer to an unlocked routing-table entry if they
-succeed, otherwise a null pointer.
-In a case of success all functions put a reference on the
-routing-table entry, freeing of which is responsibility of the caller.
-Lack of a route should in most cases be
-translated to the
-.Xr errno 2
-value
-.Er EHOSTUNREACH .
-.Sh SEE ALSO
-.Xr route 4 ,
-.Xr rtentry 9
-.Sh HISTORY
-The
-.Nm rtalloc
-facility first appeared in
-.Bx 4.2 ,
-although with much different internals.
-The
-.Fn rtalloc_ign
-function and the
-.Fa flags
-argument to
-.Fn rtalloc1
-first appeared in
-.Fx 2.0 .
-Routing table locking was introduced in
-.Fx 5.2 .
-Multiple routing tables were introduced in
-.Fx 8.0 .
-.Sh AUTHORS
-The original version of this manual page was written by
-.An -nosplit
-.An "Garrett Wollman" .
-It was significantly updated by
-.An "Gleb Smirnoff" .
diff --git a/share/man/man9/rtentry.9 b/share/man/man9/rtentry.9
index 65a63e481c4b..f9d2b1668da5 100644
--- a/share/man/man9/rtentry.9
+++ b/share/man/man9/rtentry.9
@@ -26,8 +26,6 @@
.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 5, 2014
.Dt RTENTRY 9
.Os
@@ -230,7 +228,6 @@ Empty space available for protocol-specific information.
.Sh SEE ALSO
.Xr route 4 ,
.Xr route 8 ,
-.Xr rtalloc 9
.Sh HISTORY
The
.Vt rtentry
diff --git a/share/man/man9/runqueue.9 b/share/man/man9/runqueue.9
index d6028ba1a2b9..9938af8eaffa 100644
--- a/share/man/man9/runqueue.9
+++ b/share/man/man9/runqueue.9
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 15, 2010
.Dt RUNQUEUE 9
.Os
diff --git a/share/man/man9/rwlock.9 b/share/man/man9/rwlock.9
index 2bbad71fb42c..632663871c4b 100644
--- a/share/man/man9/rwlock.9
+++ b/share/man/man9/rwlock.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 11, 2017
.Dt RWLOCK 9
.Os
diff --git a/share/man/man9/sbuf.9 b/share/man/man9/sbuf.9
index 071e6f11e02e..d4ffa050a893 100644
--- a/share/man/man9/sbuf.9
+++ b/share/man/man9/sbuf.9
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2000 Poul-Henning Kamp and Dag-Erling Coïdan Smørgrav
+.\" Copyright (c) 2000 Poul-Henning Kamp and Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd August 26, 2020
+.Dd October 3, 2023
.Dt SBUF 9
.Os
.Sh NAME
@@ -62,6 +60,8 @@
.Nm sbuf_printf_drain ,
.Nm sbuf_putbuf
.Nd safe string composition
+.Sh LIBRARY
+.Lb libsbuf
.Sh SYNOPSIS
.In sys/types.h
.In sys/sbuf.h
@@ -358,7 +358,7 @@ function returns the current user flags.
The
.Fn sbuf_set_flags
and
-.Fn sbuf_get_flags
+.Fn sbuf_clear_flags
functions set or clear one or more user flags, respectively.
The user flags are described under the
.Fn sbuf_new
diff --git a/share/man/man9/scheduler.9 b/share/man/man9/scheduler.9
index 8366692ca9d8..31f0309a49b8 100644
--- a/share/man/man9/scheduler.9
+++ b/share/man/man9/scheduler.9
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 3, 2000
.Dt SCHEDULER 9
.Os
diff --git a/share/man/man9/securelevel_gt.9 b/share/man/man9/securelevel_gt.9
index b2706948eb83..4ba7dfe9e2a0 100644
--- a/share/man/man9/securelevel_gt.9
+++ b/share/man/man9/securelevel_gt.9
@@ -24,7 +24,6 @@
.\" 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.
-.\" $FreeBSD$
.\"
.Dd June 2, 2007
.Dt SECURELEVEL_GT 9
diff --git a/share/man/man9/selrecord.9 b/share/man/man9/selrecord.9
index aafbe4b3d96e..685079dacf3b 100644
--- a/share/man/man9/selrecord.9
+++ b/share/man/man9/selrecord.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 25, 2011
.Dt SELRECORD 9
.Os
diff --git a/share/man/man9/sema.9 b/share/man/man9/sema.9
index 1f6e3b54eb24..5c1b9e0ee05e 100644
--- a/share/man/man9/sema.9
+++ b/share/man/man9/sema.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 1, 2006
.Dt SEMA 9
.Os
diff --git a/share/man/man9/seqc.9 b/share/man/man9/seqc.9
index 34783fff7448..e13d73ecb5d7 100644
--- a/share/man/man9/seqc.9
+++ b/share/man/man9/seqc.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 29, 2019
.Dt SEQC 9
.Os
diff --git a/share/man/man9/sf_buf.9 b/share/man/man9/sf_buf.9
index 8d73937c2878..e99e4841d449 100644
--- a/share/man/man9/sf_buf.9
+++ b/share/man/man9/sf_buf.9
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 28, 2007
.Dt SF_BUF 9
.Os
diff --git a/share/man/man9/sglist.9 b/share/man/man9/sglist.9
index ec452194527b..49d0cbfd1871 100644
--- a/share/man/man9/sglist.9
+++ b/share/man/man9/sglist.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 25, 2021
.Dt SGLIST 9
.Os
diff --git a/share/man/man9/shm_map.9 b/share/man/man9/shm_map.9
index e2b57d526334..d5d8cc038778 100644
--- a/share/man/man9/shm_map.9
+++ b/share/man/man9/shm_map.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 14, 2011
.Dt SHM_MAP 9
.Os
diff --git a/share/man/man9/signal.9 b/share/man/man9/signal.9
index a2e54fef012d..a41ceea4b00a 100644
--- a/share/man/man9/signal.9
+++ b/share/man/man9/signal.9
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd June 8, 2013
+.Dd July 14, 2023
.Dt SIGNAL 9
.Os
.Sh NAME
@@ -430,7 +428,6 @@ function returns either a valid signal number or zero.
.Fn issignal
returns either a valid signal number or zero.
.Sh SEE ALSO
-.Xr gsignal 9 ,
.Xr pgsignal 9 ,
.Xr psignal 9
.Sh AUTHORS
diff --git a/share/man/man9/sleep.9 b/share/man/man9/sleep.9
index 78625e5e1184..10ad743c5738 100644
--- a/share/man/man9/sleep.9
+++ b/share/man/man9/sleep.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 19, 2019
.Dt SLEEP 9
.Os
@@ -366,13 +364,13 @@ A non-zero timeout was specified and the timeout expired.
.El
.Sh SEE ALSO
.Xr ps 1 ,
+.Xr callout 9 ,
.Xr locking 9 ,
.Xr malloc 9 ,
.Xr mi_switch 9 ,
.Xr mtx_sleep 9 ,
.Xr rw_sleep 9 ,
-.Xr sx_sleep 9 ,
-.Xr timeout 9
+.Xr sx_sleep 9
.Sh HISTORY
The functions
.Fn sleep
diff --git a/share/man/man9/sleepqueue.9 b/share/man/man9/sleepqueue.9
index 64dfc3bdee55..6502ce37a027 100644
--- a/share/man/man9/sleepqueue.9
+++ b/share/man/man9/sleepqueue.9
@@ -20,8 +20,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 19, 2019
.Dt SLEEPQUEUE 9
.Os
@@ -383,8 +381,8 @@ interfaces.
Almost all other code in the kernel should use one of those interfaces rather
than manipulating sleep queues directly.
.Sh SEE ALSO
+.Xr callout 9 ,
.Xr condvar 9 ,
.Xr runqueue 9 ,
.Xr scheduler 9 ,
-.Xr sleep 9 ,
-.Xr timeout 9
+.Xr sleep 9
diff --git a/share/man/man9/smr.9 b/share/man/man9/smr.9
new file mode 100644
index 000000000000..32ef313c0988
--- /dev/null
+++ b/share/man/man9/smr.9
@@ -0,0 +1,294 @@
+.\" SPDX-License-Identifier: BSD-2-Clause
+.\"
+.\" Copyright (c) 2023 The FreeBSD Foundation
+.\"
+.\" This documentation was written by Mark Johnston <markj@FreeBSD.org>
+.\" under sponsorship from the FreeBSD Foundation.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" 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 January 17, 2023
+.Dt SMR 9
+.Os
+.Sh NAME
+.Nm smr
+.Nd safe memory reclamation for lock-free data structures
+.Sh SYNOPSIS
+.In sys/smr.h
+.Ft smr_seq_t
+.Fo smr_advance
+.Fa "smr_t smr"
+.Fc
+.Ft smr_t
+.Fo smr_create
+.Fa "const char *name"
+.Fc
+.Ft void
+.Fo smr_destroy
+.Fa "smr_t smr"
+.Fc
+.Ft void
+.Fo smr_enter
+.Fa "smr_t smr"
+.Fc
+.Ft void
+.Fo smr_exit
+.Fa "smr_t smr"
+.Fc
+.Ft bool
+.Fo smr_poll
+.Fa "smr_t smr"
+.Fa "smr_seq_t goal"
+.Fa "bool wait"
+.Fc
+.Ft void
+.Fo smr_synchronize
+.Fa "smr_t smr"
+.Fc
+.Ft void
+.Fo smr_wait
+.Fa "smr_t smr"
+.Fa "smr_seq_t goal"
+.Fc
+.Sh DESCRIPTION
+Safe Memory Reclamation (SMR) is a facility which enables the implementation of
+memory-safe lock-free data structures.
+In typical usage, read accesses to an SMR-protected data structure, such as a
+hash table or tree, are performed in a
+.Dq read section
+consisting of code bracketed by
+.Fn smr_enter
+and
+.Fn smr_exit
+calls, while mutations of the data structure are serialized by a traditional
+mutex such as
+.Xr mutex 9 .
+In contrast with reader-writer locks such as
+.Xr rwlock 9 ,
+.Xr rmlock 9 ,
+and
+.Xr sx 9 ,
+SMR allows readers and writers to access the data structure concurrently.
+Readers can always enter a read section immediately
+.Po
+.Fn smr_enter
+never blocks
+.Pc ,
+so mutations do not introduce read latency.
+Furthermore,
+.Fn smr_enter
+and
+.Fn smr_exit
+operate only on per-CPU data and thus avoid some of the performance problems
+inherent in the implementation of traditional reader-writer mutexes.
+SMR can therefore be a useful building block for data structures which are
+accessed frequently but are only rarely modified.
+.Pp
+Note that any SMR-protected data structure must be implemented carefully such
+that operations behave correctly in the absence of mutual exclusion between
+readers and writers.
+The data structure must be designed to be lock-free; SMR merely facilitates
+the implementation, for example by making it safe to follow dangling pointers
+and by helping avoid the ABA problem.
+.Pp
+When shared accesses to and mutations of a data structure can proceed
+concurrently, writers must take care to ensure that any items removed from the
+structure are not freed and recycled while readers are accessing them in
+parallel.
+This requirement results in a two-phase approach to the removal of items:
+first, the item is unlinked such that all pointers to the item are removed from
+the structure, preventing any new readers from observing the item.
+Then, the writer waits until some mechanism guarantees that no existing readers
+are still accessing the item.
+At that point the memory for that item can be freed and reused safely.
+SMR provides this mechanism: readers may access a lock-free data structure in
+between calls to the
+.Fn smr_enter
+and
+.Fn smr_exit
+functions, which together create a read section, and the
+.Fn smr_advance ,
+.Fn smr_poll ,
+.Fn smr_wait ,
+and
+.Fn smr_synchronize
+functions can be used to wait for threads in read sections to finish.
+All of these functions operate on a
+.Ft smr_t
+state block which holds both per-CPU and global state.
+Readers load global state and modify per-CPU state, while writers must scan all
+per-CPU states to detect active readers.
+SMR is designed to amortize this cost by batching to give acceptable
+performance in write-heavy workloads.
+.Ss Readers
+Threads enter a read section by calling
+.Fn smr_enter .
+Read sections should be short, and many operations are not permitted while in
+a read section.
+Specifically, context switching is disabled, and thus readers may not acquire
+blocking mutexes such as
+.Xr mutex 9 .
+Another consequence of this is that the thread is pinned to the current CPU for
+the duration of the read section.
+Furthermore, read sections may not be nested: it is incorrect to call
+.Fn smr_enter
+with a given
+.Ft smr_t
+state block when already in a read section for that state block.
+.Ss UMA Integration
+To simplify the integration of SMR into consumers, the
+.Xr uma 9
+kernel memory allocator provides some SMR-specified facilities.
+This eliminates a good deal of complexity from the implementation of consumers
+and automatically batches write operations.
+.Pp
+In typical usage, a UMA zone (created with the
+.Dv UMA_ZONE_SMR
+flag or initialized with the
+.Fn uma_zone_set_smr
+function) is coupled with a
+.Ft smr_t
+state block.
+To insert an item into an SMR-protected data structure, memory is allocated
+from the zone using the
+.Fn uma_zalloc_smr
+function.
+Insertions and removals are serialized using traditional mutual exclusion
+and items are freed using the
+.Fn uma_zfree_smr
+function.
+Read-only lookup operations are performed in SMR read sections.
+.Fn uma_zfree_smr
+waits for all active readers which may be accessing the freed item to finish
+their read sections before recycling that item's memory.
+.Pp
+If the zone has an associated per-item destructor, it will be invoked at some
+point when no readers can be accessing a given item.
+The destructor can be used to release additional resources associated with the
+item.
+Note however that there is no guarantee that the destructor will be invoked in
+a bounded time period.
+.Ss Writers
+Consumers are expected to use SMR in conjunction with UMA and thus need only
+make use of the
+.Fn smr_enter
+and
+.Fn smr_exit
+functions, and the SMR helper macros defined in
+.Pa sys/smr_types.h .
+However, an introduction to the write-side interface of SMR can be useful.
+.Pp
+Internally, SMR maintains a global
+.Ql write sequence
+number.
+When entering a read section,
+.Fn smr_enter
+loads a copy of the write sequence and stores it in per-CPU memory, hence
+.Ql observing
+that value.
+To exit a read section, this per-CPU memory is overwritten with an invalid
+value, making the CPU inactive.
+Writers perform two operations: advancing the write sequence number, and
+polling all CPUs to see whether active readers have observed a given sequence
+number.
+These operations are performed by
+.Fn smr_advance
+and
+.Fn smr_poll ,
+respectively, which do not require serialization between multiple writers.
+.Pp
+After a writer unlinks an item from a data structure, it increments the write
+sequence number and tags the item with the new value returned by
+.Fn smr_advance .
+Once all CPUs have observed the new value, the writer can use
+.Fn smr_poll
+to deduce that no active readers have access to the unlinked item, and thus the
+item is safe to recycle.
+Because this pair of operations is relatively expensive, it is generally a good
+idea to amortize this cost by accumulating a collection of multiple unlinked
+items and tagging the entire batch with a target write sequence number.
+.Pp
+.Fn smr_poll
+is a non-blocking operation and returns true only if all active readers are
+guaranteed to have observed the target sequence number value.
+.Fn smr_wait
+is a variant of
+.Fn smr_poll
+which waits until all CPUs have observed the target sequence number value.
+.Fn smr_synchronize
+combines
+.Fn smr_advance
+with
+.Fn smr_wait
+to wait for all CPUs to observe a new write sequence number.
+This is an expensive operation and should only be used if polling cannot be
+deferred in some way.
+.Ss Memory Ordering
+The
+.Fn smr_enter
+function has acquire semantics, and the
+.Fn smr_exit
+function has release semantics.
+The
+.Fn smr_advance ,
+.Fn smr_poll ,
+.Fn smr_wait ,
+and
+.Fn smr_synchronize
+functions should not be assumed to have any guarantees with respect to memory
+ordering.
+In practice, some of these functions have stronger ordering semantics than
+is stated here, but this is specific to the implementation and should not be
+relied upon.
+See
+.Xr atomic 9
+for more details.
+.Sh NOTES
+Outside of
+.Fx
+the acronym SMR typically refers to a family of algorithms which enable
+memory-safe read-only access to a data structure concurrent with modifications
+to that data structure.
+Here, SMR refers to a particular algorithm belonging to this family, as well as
+its implementation in
+.Fx .
+See
+.Pa sys/sys/smr.h
+and
+.Pa sys/kern/subr_smr.c
+in the
+.Fx
+source tree for further details on the algorithm and the context.
+.Pp
+The acronym SMR is also used to mean "shingled magnetic recording", a
+technology used to store data on hard disk drives which requires operating
+system support.
+These two uses of the acronym are unrelated.
+.Sh SEE ALSO
+.Xr atomic 9 ,
+.Xr locking 9 ,
+.Xr uma 9
+.Sh AUTHORS
+The SMR algorithm and its implementation were provided by
+.An Jeff Roberson Aq Mt jeff@FreeBSD.org .
+This manual page was written by
+.An Mark Johnston Aq Mt markj@FreeBSD.org .
diff --git a/share/man/man9/socket.9 b/share/man/man9/socket.9
index 1c3f75785013..fb0ead0e20e1 100644
--- a/share/man/man9/socket.9
+++ b/share/man/man9/socket.9
@@ -24,9 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd October 18, 2018
+.Dd September 6, 2022
.Dt SOCKET 9
.Os
.Sh NAME
@@ -38,7 +36,7 @@
.Ft void
.Fn soabort "struct socket *so"
.Ft int
-.Fn soaccept "struct socket *so" "struct sockaddr **nam"
+.Fn soaccept "struct socket *so" "struct sockaddr *nam"
.Ft int
.Fn socheckuid "struct socket *so" "uid_t uid"
.Ft int
@@ -171,8 +169,7 @@ are only useful for protocol implementors.
.Pp
Except where otherwise indicated,
.Nm
-functions may sleep, and are not appropriate for use in an
-.Xr ithread 9
+functions may sleep, and are not appropriate for use in an interrupt thread
context or while holding non-sleepable kernel locks.
.Ss Creating and Destroying Sockets
A new socket may be created using
@@ -461,10 +458,8 @@ argument, and use the same flag name space as the
.Xr sendmsg 2
system call.
.Pp
-Kernel callers running in
-.Xr ithread 9
-context, or with a mutex held, will wish to use non-blocking sockets and pass
-the
+Kernel callers running in an interrupt thread context, or with a mutex held,
+will wish to use non-blocking sockets and pass the
.Dv MSG_DONTWAIT
flag in order to prevent these functions from sleeping.
.Pp
@@ -593,7 +588,7 @@ data between user and kernel code.
.Xr shutdown 2 ,
.Xr socket 2 ,
.Xr ng_ksocket 4 ,
-.Xr ithread 9 ,
+.Xr intr_event 9 ,
.Xr msleep 9 ,
.Xr ucred 9
.Sh HISTORY
diff --git a/share/man/man9/stack.9 b/share/man/man9/stack.9
index 9ac64ff333a8..c912cd309cb3 100644
--- a/share/man/man9/stack.9
+++ b/share/man/man9/stack.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 6, 2022
.Dt STACK 9
.Os
diff --git a/share/man/man9/store.9 b/share/man/man9/store.9
index 6492fdbc3924..18fd646d609d 100644
--- a/share/man/man9/store.9
+++ b/share/man/man9/store.9
@@ -32,8 +32,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 22, 2021
.Dt STORE 9
.Os
diff --git a/share/man/man9/style.9 b/share/man/man9/style.9
index 64fcc7425b4e..8eb82e3419ec 100644
--- a/share/man/man9/style.9
+++ b/share/man/man9/style.9
@@ -22,10 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" From: @(#)style 1.14 (Berkeley) 4/28/95
-.\" $FreeBSD$
-.\"
-.Dd July 28, 2022
+.Dd April 26, 2024
.Dt STYLE 9
.Os
.Sh NAME
@@ -47,8 +44,6 @@ is silent on an issue.
.Bd -literal
/*
* Style guide for FreeBSD. Based on the CSRG's KNF (Kernel Normal Form).
- *
- * @(#)style 1.14 (Berkeley) 4/28/95
*/
/*
@@ -67,7 +62,7 @@ The copyright header should be a multi-line comment, with the first
line of the comment having a dash after the star like so:
.Bd -literal
/*-
- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+ * SPDX-License-Identifier: BSD-2-Clause
*
* Copyright (c) 1984-2025 John Q. Public
*
@@ -112,12 +107,6 @@ lines should only be added when making substantial changes to the file,
not for trivial changes.
.Pp
After any copyright and license comment, there is a blank line.
-Include
-.Li $\&FreeBSD$
-or
-.Li __FBSDID("$\&FreeBSD$");
-only if you are certain the new code will be merged to stable/12.
-The tag will be removed from legacy code in the future.
Non-C/C++ source files follow the example above, while C/C++ source files
follow the one below.
Version control system ID tags should only exist once in a file
@@ -141,7 +130,6 @@ and FreeBSD git hash with full path name if the file was derived
from another FreeBSD file and include relevant copyright info
from the original file.
.Bd -literal
-/* From: @(#)style 1.14 (Berkeley) 4/28/95 */
.Ed
.Pp
Leave one blank line before the header files.
@@ -916,6 +904,10 @@ instead of the older
.Fn CTASSERT .
.Sh FILES
.Bl -tag -width indent
+.It Pa /usr/src/tools/build/checkstyle9.pl
+A script to check for violations of
+.Nm
+in a source file.
.It Pa /usr/src/tools/tools/editing/freebsd.el
An Emacs plugin to follow the
.Fx
@@ -935,11 +927,11 @@ indentation rules.
.Xr style.mdoc 5 ,
.Xr style.lua 9
.Sh HISTORY
-This manual page is largely based on the
+This manual page was originally based on the
.Pa src/admin/style/style
file from the
.Bx 4.4 Lite2
-release, with occasional updates to reflect the current practice and
+release, with frequent updates to reflect the current practice and
desire of the
.Fx
project.
diff --git a/share/man/man9/style.lua.9 b/share/man/man9/style.lua.9
index 089b4e986dca..991a6f96b01b 100644
--- a/share/man/man9/style.lua.9
+++ b/share/man/man9/style.lua.9
@@ -1,5 +1,5 @@
.\"-
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2018 Kyle Evans <kevans@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 25, 2018
.Dt STYLE.LUA 9
.Os
@@ -46,15 +44,13 @@ is silent on an issue.
The copyright header should be a series of single-line comments.
Use the single-line comment style for every line in a multi-line comment.
.Pp
-After any copyright header, there is a blank line, and the
-.Li $\&FreeBSD$
-comment for non-C/C++ source files.
+After any copyright header there is a blank line.
.Pp
The preferred method of including other files and modules is with
.Fn require name ,
such as:
.Bd -literal
--- $FreeBSD$
+-- License block
config = require("config");
menu = require("menu");
diff --git a/share/man/man9/superio.9 b/share/man/man9/superio.9
index 832871d6980a..6318b5a45b50 100644
--- a/share/man/man9/superio.9
+++ b/share/man/man9/superio.9
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2019 Andriy Gapon <avg@FreeBSD.org>
.\"
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 11, 2019
.Dt SUPERIO 9
.Os
diff --git a/share/man/man9/swi.9 b/share/man/man9/swi.9
index 52a39fe61c86..ea6285b5d6a2 100644
--- a/share/man/man9/swi.9
+++ b/share/man/man9/swi.9
@@ -21,9 +21,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd July 25, 2020
+.Dd October 12, 2022
.Dt SWI 9
.Os
.Sh NAME
@@ -35,9 +33,7 @@
.In sys/param.h
.In sys/bus.h
.In sys/interrupt.h
-.Vt "extern struct intr_event *tty_intr_event" ;
.Vt "extern struct intr_event *clk_intr_event" ;
-.Vt "extern void *vm_ih" ;
.Ft int
.Fo swi_add
.Fa "struct intr_event **eventp"
@@ -140,12 +136,6 @@ Instead,
.Fa handler
will be executed the next time that the software interrupt thread runs after
being scheduled by another event.
-Attaching a handler to the clock software interrupt thread and using this flag
-when scheduling a software interrupt handler can be used to implement the
-functionality performed by
-.Fn setdelayed
-in earlier versions of
-.Fx .
.It Dv SWI_FROMNMI
Specifies that
.Fn swi_sched
@@ -155,24 +145,12 @@ On platforms allowing IPI sending from NMI context it immediately wakes
via the IPI, otherwise it works just like SWI_DELAY.
.El
.Pp
-The
-.Va tty_intr_event
-and
.Va clk_intr_event
-variables contain pointers to the software interrupt handlers for the tty and
-clock software interrupts, respectively.
-.Va tty_intr_event
-is used to hang tty software interrupt handlers off of the same thread.
-.Va clk_intr_event
-is used to hang delayed handlers off of the clock software interrupt thread so
-that the functionality of
-.Fn setdelayed
-can be obtained in conjunction with
-.Dv SWI_DELAY .
-The
-.Va vm_ih
-handler cookie is used to schedule software interrupt threads to run for the
-VM subsystem.
+is a pointer to the
+.Vt struct intr_event
+used to hang delayed handlers off of the clock interrupt, and is invoked
+directly by
+.Xr hardclock 9 .
.Sh RETURN VALUES
The
.Fn swi_add
@@ -227,7 +205,8 @@ is
.Dv NULL .
.El
.Sh SEE ALSO
-.Xr ithread 9 ,
+.Xr hardclock 9 ,
+.Xr intr_event 9 ,
.Xr taskqueue 9
.Sh HISTORY
The
@@ -250,7 +229,3 @@ The
.Fn swi_remove
function first appeared in
.Fx 6.1 .
-.Sh BUGS
-Most of the global variables described in this manual page should not be
-global, or at the very least should not be declared in
-.In sys/interrupt.h .
diff --git a/share/man/man9/sx.9 b/share/man/man9/sx.9
index 74d115ede245..473a47c27cf4 100644
--- a/share/man/man9/sx.9
+++ b/share/man/man9/sx.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 11, 2017
.Dt SX 9
.Os
diff --git a/share/man/man9/syscall_helper_register.9 b/share/man/man9/syscall_helper_register.9
index c852ecabb63f..bad8eee3e37b 100644
--- a/share/man/man9/syscall_helper_register.9
+++ b/share/man/man9/syscall_helper_register.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 10, 2018
.Dt SYSCALL_HELPER_REGISTER 9
.Os
diff --git a/share/man/man9/sysctl.9 b/share/man/man9/sysctl.9
index f2b1159e71a8..8c4ee71c96c6 100644
--- a/share/man/man9/sysctl.9
+++ b/share/man/man9/sysctl.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 1, 2020
.Dt SYSCTL 9
.Os
@@ -577,6 +575,10 @@ Current formats:
node
.It Cm A
.Li "char *"
+.It Cm C
+.Li "int8_t"
+.It Cm CU
+.Li "uint8_t"
.It Cm I
.Li "int"
.It Cm IK Ns Op Ar n
@@ -593,6 +595,10 @@ gives milliKelvin
.Li "quad_t"
.It Cm QU
.Li "u_quad_t"
+.It Cm S
+.Li "int16_t"
+.It Cm SU
+.Li "uint16_t"
.It Cm "S,TYPE"
.Li "struct TYPE"
structures
@@ -620,7 +626,7 @@ For example,
.Fn SYSCTL_INT
reports the raw value of an associated variable of type
.Vt int .
-However, nodes may also export a value that is a translatation of an internal
+However, nodes may also export a value that is a translation of an internal
representation.
.Pp
The
@@ -698,7 +704,7 @@ macro or the
function.
If the
.Fa len
-argument in zero, the string length is computed at every access to the OID using
+argument is zero, the string length is computed at every access to the OID using
.Xr strlen 3 .
Use the
.Fn SYSCTL_CONST_STRING
@@ -1052,6 +1058,9 @@ The
.Xr sysctl 8
utility first appeared in
.Bx 4.4 .
+.Nm SYSCTL_ADD_CONST_STRING
+first appeared in
+.Fx 12.1 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man9/sysctl_add_oid.9 b/share/man/man9/sysctl_add_oid.9
index d28aa799be8f..c6c41582473f 100644
--- a/share/man/man9/sysctl_add_oid.9
+++ b/share/man/man9/sysctl_add_oid.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 13, 2016
.Dt SYSCTL_ADD_OID 9
.Os
diff --git a/share/man/man9/sysctl_ctx_init.9 b/share/man/man9/sysctl_ctx_init.9
index 28c7b9309de3..92ba3e1a4d26 100644
--- a/share/man/man9/sysctl_ctx_init.9
+++ b/share/man/man9/sysctl_ctx_init.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 31, 2014
.Dt SYSCTL_CTX_INIT 9
.Os
diff --git a/share/man/man9/taskqueue.9 b/share/man/man9/taskqueue.9
index e13ad9498562..5afeffcb558b 100644
--- a/share/man/man9/taskqueue.9
+++ b/share/man/man9/taskqueue.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 25, 2022
.Dt TASKQUEUE 9
.Os
diff --git a/share/man/man9/tcp_functions.9 b/share/man/man9/tcp_functions.9
index d0fb8ee2b217..eb9b299eae9e 100644
--- a/share/man/man9/tcp_functions.9
+++ b/share/man/man9/tcp_functions.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 10, 2017
.Dt TCP_FUNCTIONS 9
.Os
diff --git a/share/man/man9/thread_exit.9 b/share/man/man9/thread_exit.9
index 6a06433acebd..a5822d6ef363 100644
--- a/share/man/man9/thread_exit.9
+++ b/share/man/man9/thread_exit.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 5, 2002
.Dt THREAD_EXIT 9
.Os
diff --git a/share/man/man9/time.9 b/share/man/man9/time.9
index 443608dd3f5b..8a3f9eecc87f 100644
--- a/share/man/man9/time.9
+++ b/share/man/man9/time.9
@@ -29,8 +29,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd May 4, 2021
.Dt TIME 9
.Os
diff --git a/share/man/man9/tvtohz.9 b/share/man/man9/tvtohz.9
index cf07d603a790..947ab5b095a1 100644
--- a/share/man/man9/tvtohz.9
+++ b/share/man/man9/tvtohz.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 3, 2000
.Dt TVTOHZ 9
.Os
@@ -45,9 +43,9 @@ of system ticks that would elapse.
Returns the integral number of system ticks expected to elapse in the given
interval, including the current tick.
.Sh SEE ALSO
+.Xr callout 9 ,
.Xr microtime 9 ,
-.Xr microuptime 9 ,
-.Xr timeout 9
+.Xr microuptime 9
.Sh HISTORY
The
.Nm
diff --git a/share/man/man9/ucred.9 b/share/man/man9/ucred.9
index acd7c911a1fc..e9fe2e1d02fc 100644
--- a/share/man/man9/ucred.9
+++ b/share/man/man9/ucred.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 23, 2019
.Dt UCRED 9
.Os
diff --git a/share/man/man9/uidinfo.9 b/share/man/man9/uidinfo.9
index 4dc93d2bfedd..99d96ee97b9a 100644
--- a/share/man/man9/uidinfo.9
+++ b/share/man/man9/uidinfo.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 10, 2001
.Dt UIDINFO 9
.Os
diff --git a/share/man/man9/uio.9 b/share/man/man9/uio.9
index c17520da981f..e6240c4e51d3 100644
--- a/share/man/man9/uio.9
+++ b/share/man/man9/uio.9
@@ -23,8 +23,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 11, 2017
.Dt UIO 9
.Os
diff --git a/share/man/man9/unr.9 b/share/man/man9/unr.9
index c2e9b3943829..73717dd94115 100644
--- a/share/man/man9/unr.9
+++ b/share/man/man9/unr.9
@@ -22,24 +22,30 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 21, 2022
.Dt UNR 9
.Os
.Sh NAME
.Nm new_unrhdr ,
+.Nm clean_unrhdr ,
.Nm clear_unrhdr ,
.Nm delete_unrhdr ,
.Nm alloc_unr ,
.Nm alloc_unr_specific ,
-.Nm free_unr
+.Nm free_unr ,
+.Nm create_iter_unr ,
+.Nm next_iter_unr ,
+.Nm free_iter_unr
.Nd "kernel unit number allocator"
.Sh SYNOPSIS
.In sys/systm.h
.Ft "struct unrhdr *"
.Fn new_unrhdr "int low" "int high" "struct mtx *mutex"
.Ft void
+.Fn clean_unrhdr "struct unrhdr *uh"
+.Ft void
+.Fn clean_unrhdrl "struct unrhdr *uh"
+.Ft void
.Fn clear_unrhdr "struct unrhdr *uh"
.Ft void
.Fn delete_unrhdr "struct unrhdr *uh"
@@ -51,6 +57,12 @@
.Fn alloc_unr_specific "struct unrhdr *uh" "u_int item"
.Ft void
.Fn free_unr "struct unrhdr *uh" "u_int item"
+.Ft void *
+.Fn create_iter_unr "struct unrhdr *uh"
+.Ft int
+.Fn next_iter_unr "void *handle"
+.Ft void
+.Fn free_iter_unr "void *handle"
.Sh DESCRIPTION
The kernel unit number allocator is a generic facility, which allows to allocate
unit numbers within a specified range.
@@ -86,6 +98,26 @@ This function frees the memory associated with the entity, it does not free
any units.
To free all units use
.Fn clear_unrhdr .
+.It Fn clean_unrhdr uh
+Freeing unit numbers might result in some internal memory becoming unused.
+There are
+.Nm unit
+allocator consumers that cannot tolerate taking
+.Xr malloc 9
+locks to free the memory, while having their unit mutex locked.
+For this reason, free of the unused memory after delete is postponed
+until the consumer can afford calling into the
+.Xr malloc 9
+subsystem.
+Call
+.Fn clean_unrhdr uh
+to do the cleanup.
+In particular, this needs to be done before freeing a unr, if
+a deletion of units could have been performed.
+.It Fn clean_unrhdrl
+Same as
+.Fn clean_unrhdr ,
+but assumes that the unr mutex is already owned, if any.
.It Fn alloc_unr uh
Return a new unit number.
The lowest free number is always allocated.
@@ -110,6 +142,41 @@ Free a previously allocated unit number.
This function may require allocating memory, and thus it can sleep.
There is no pre-locked variant.
.El
+.Sh ITERATOR INTERFACE
+The
+.Nm unr
+facility provides an interface to iterate over all allocated units
+for the given
+.Dv unrhdr .
+Iterators are identified by an opaque handle.
+More than one iterators can operate simultaneously; the iterator position
+data is recorded only in the iterator handle.
+.Pp
+Consumers must ensure that the unit allocator is not modified between
+calls to the iterator functions.
+In particular, the internal allocator mutex cannot provide consistency,
+because it is acquired and dropped inside the
+.Fn next_iter_unr
+function.
+If the allocator was modified, it is safe to free the iterator with
+.Fn free_iter_unr
+method nevertheless.
+.Bl -tag -width indent
+.It Fn create_iter_unr uh
+Create an iterator.
+Return the handle that should be passed to other iterator functions.
+.It Fn next_iter_unr handle
+Return the value of the next unit.
+Units are returned in ascending order.
+A return value of
+.Li \-1
+indicates the end of iteration, in which
+case
+.Li \-1
+is returned for all future calls.
+.It Fn free_iter_unr handle
+Free the iterator, handle is no longer valid.
+.El
.Sh CODE REFERENCES
The above functions are implemented in
.Pa sys/kern/subr_unit.c .
diff --git a/share/man/man9/usbdi.9 b/share/man/man9/usbdi.9
index 640222b8067c..47034b87c806 100644
--- a/share/man/man9/usbdi.9
+++ b/share/man/man9/usbdi.9
@@ -22,8 +22,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd November 14, 2016
.Dt USBDI 9
.Os
@@ -352,7 +350,7 @@ Example4: SETUP + STATUS - split
.Ed
.Sh USB TRANSFER CONFIG
-To simply the search for endpoints the
+To simplify the search for endpoints the
.Nm usb
module defines a USB config structure where it is possible to specify
the characteristics of the wanted endpoint.
diff --git a/share/man/man9/vaccess.9 b/share/man/man9/vaccess.9
index 4bf377406903..fe9a37d15358 100644
--- a/share/man/man9/vaccess.9
+++ b/share/man/man9/vaccess.9
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd September 18, 2009
+.Dd August 23, 2022
.Dt VACCESS 9
.Os
.Sh NAME
@@ -42,7 +40,6 @@
.Fa "gid_t file_gid"
.Fa "accmode_t accmode"
.Fa "struct ucred *cred"
-.Fa "int *privused"
.Fc
.Sh DESCRIPTION
This call implements the logic for the
@@ -59,19 +56,9 @@ owning UID
owning GID
.Fa file_gid ,
desired access mode
-.Fa accmode ,
-requesting credential
-.Fa cred ,
-and an optional call-by-reference
-.Vt int
-pointer returning whether or not
-privilege was required for successful evaluation of the call; the
-.Fa privused
-pointer may be set to
-.Dv NULL
-by the caller in order not to be informed of
-privilege information, or it may point to an integer that will be set to
-1 if privilege is used, and 0 otherwise.
+.Fa accmode
+and requesting credential
+.Fa cred .
.Pp
This call is intended to support implementations of
.Xr VOP_ACCESS 9 ,
diff --git a/share/man/man9/vaccess_acl_nfs4.9 b/share/man/man9/vaccess_acl_nfs4.9
index c7293619a349..76cedc3466e9 100644
--- a/share/man/man9/vaccess_acl_nfs4.9
+++ b/share/man/man9/vaccess_acl_nfs4.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 18, 2009
.Dt VACCESS_ACL_NFS4 9
.Os
diff --git a/share/man/man9/vaccess_acl_posix1e.9 b/share/man/man9/vaccess_acl_posix1e.9
index dc857a8ee61f..5b61a00e0c13 100644
--- a/share/man/man9/vaccess_acl_posix1e.9
+++ b/share/man/man9/vaccess_acl_posix1e.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 22, 2001
.Dt VACCESS_ACL_POSIX1E 9
.Os
diff --git a/share/man/man9/vflush.9 b/share/man/man9/vflush.9
index 280088f99269..b5d3cacf55d6 100644
--- a/share/man/man9/vflush.9
+++ b/share/man/man9/vflush.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 21, 2001
.Dt VFLUSH 9
.Os
diff --git a/share/man/man9/vfs_busy.9 b/share/man/man9/vfs_busy.9
index 8b9ba86d2bac..5cbd1d6ff25f 100644
--- a/share/man/man9/vfs_busy.9
+++ b/share/man/man9/vfs_busy.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 11, 2013
.Dt VFS_BUSY 9
.Os
diff --git a/share/man/man9/vfs_getnewfsid.9 b/share/man/man9/vfs_getnewfsid.9
index f43800c41a57..8eb958057920 100644
--- a/share/man/man9/vfs_getnewfsid.9
+++ b/share/man/man9/vfs_getnewfsid.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 21, 2001
.Dt VFS_GETNEWFSID 9
.Os
diff --git a/share/man/man9/vfs_getopt.9 b/share/man/man9/vfs_getopt.9
index 1675fef8f6ee..0e68655f540f 100644
--- a/share/man/man9/vfs_getopt.9
+++ b/share/man/man9/vfs_getopt.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 31, 2011
.Dt VFS_GETOPT 9
.Os
diff --git a/share/man/man9/vfs_getvfs.9 b/share/man/man9/vfs_getvfs.9
index 93df89f7070a..639eccb7a988 100644
--- a/share/man/man9/vfs_getvfs.9
+++ b/share/man/man9/vfs_getvfs.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 21, 2001
.Dt VFS_GETVFS 9
.Os
diff --git a/share/man/man9/vfs_mountedfrom.9 b/share/man/man9/vfs_mountedfrom.9
index d0d7542630f0..bd1b19190f9b 100644
--- a/share/man/man9/vfs_mountedfrom.9
+++ b/share/man/man9/vfs_mountedfrom.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 25, 2008
.Dt VFS_MOUNTEDFROM 9
.Os
diff --git a/share/man/man9/vfs_rootmountalloc.9 b/share/man/man9/vfs_rootmountalloc.9
index 6453849f1e98..eee413a3946f 100644
--- a/share/man/man9/vfs_rootmountalloc.9
+++ b/share/man/man9/vfs_rootmountalloc.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 21, 2001
.Dt VFS_ROOTMOUNTALLOC 9
.Os
diff --git a/share/man/man9/vfs_suser.9 b/share/man/man9/vfs_suser.9
index df68bc21efab..aff6410b4072 100644
--- a/share/man/man9/vfs_suser.9
+++ b/share/man/man9/vfs_suser.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 2, 2004
.Dt VFS_SUSER 9
.Os
diff --git a/share/man/man9/vfs_timestamp.9 b/share/man/man9/vfs_timestamp.9
index 0103779402ce..19baff12449d 100644
--- a/share/man/man9/vfs_timestamp.9
+++ b/share/man/man9/vfs_timestamp.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 21, 2001
.Dt VFS_TIMESTAMP 9
.Os
diff --git a/share/man/man9/vfs_unbusy.9 b/share/man/man9/vfs_unbusy.9
index 13cea5eba67f..8e3b8f1ed0d5 100644
--- a/share/man/man9/vfs_unbusy.9
+++ b/share/man/man9/vfs_unbusy.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 14, 2010
.Dt VFS_UNBUSY 9
.Os
diff --git a/share/man/man9/vfs_unmountall.9 b/share/man/man9/vfs_unmountall.9
index e20020328153..a637a6b025f5 100644
--- a/share/man/man9/vfs_unmountall.9
+++ b/share/man/man9/vfs_unmountall.9
@@ -22,8 +22,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 26, 2001
.Dt VFS_UNMOUNTALL 9
.Os
diff --git a/share/man/man9/vfsconf.9 b/share/man/man9/vfsconf.9
index 7e129c07ff08..ff299e3d535b 100644
--- a/share/man/man9/vfsconf.9
+++ b/share/man/man9/vfsconf.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 16, 2013
.Dt VFSCONF 9
.Os
diff --git a/share/man/man9/vget.9 b/share/man/man9/vget.9
index 1a7d16cdc378..8bfc50681c7d 100644
--- a/share/man/man9/vget.9
+++ b/share/man/man9/vget.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 1996
.Dt VGET 9
.Os
diff --git a/share/man/man9/vgone.9 b/share/man/man9/vgone.9
index d34fe25878fd..319b54075198 100644
--- a/share/man/man9/vgone.9
+++ b/share/man/man9/vgone.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 8, 2019
.Dt VGONE 9
.Os
diff --git a/share/man/man9/vhold.9 b/share/man/man9/vhold.9
index 503ce29c5643..d8e9e56e4b38 100644
--- a/share/man/man9/vhold.9
+++ b/share/man/man9/vhold.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd April 1, 2007
.Dt VHOLD 9
.Os
diff --git a/share/man/man9/vinvalbuf.9 b/share/man/man9/vinvalbuf.9
index 260eb6f39b37..5660eb35fbbf 100644
--- a/share/man/man9/vinvalbuf.9
+++ b/share/man/man9/vinvalbuf.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd October 20, 2008
.Dt VINVALBUF 9
.Os
diff --git a/share/man/man9/vm_fault_prefault.9 b/share/man/man9/vm_fault_prefault.9
index 39138e88a1ad..a61b453bd790 100644
--- a/share/man/man9/vm_fault_prefault.9
+++ b/share/man/man9/vm_fault_prefault.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 21, 2003
.Dt VM_FAULT_PREFAULT 9
.Os
diff --git a/share/man/man9/vm_map.9 b/share/man/man9/vm_map.9
index 6d9e74bfa8d8..81379a5c347d 100644
--- a/share/man/man9/vm_map.9
+++ b/share/man/man9/vm_map.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 3, 2018
.Dt VM_MAP 9
.Os
diff --git a/share/man/man9/vm_map_check_protection.9 b/share/man/man9/vm_map_check_protection.9
index 1d475249d0c7..2e1bdc8de30c 100644
--- a/share/man/man9/vm_map_check_protection.9
+++ b/share/man/man9/vm_map_check_protection.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_CHECK_PROTECTION 9
.Os
diff --git a/share/man/man9/vm_map_delete.9 b/share/man/man9/vm_map_delete.9
index 8eea565a04da..c8e1cd2d010e 100644
--- a/share/man/man9/vm_map_delete.9
+++ b/share/man/man9/vm_map_delete.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_DELETE 9
.Os
diff --git a/share/man/man9/vm_map_entry_resize_free.9 b/share/man/man9/vm_map_entry_resize_free.9
index 9e70a8d757bf..07f80db581bf 100644
--- a/share/man/man9/vm_map_entry_resize_free.9
+++ b/share/man/man9/vm_map_entry_resize_free.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 17, 2004
.Dt VM_MAP_ENTRY_RESIZE_FREE 9
.Os
diff --git a/share/man/man9/vm_map_find.9 b/share/man/man9/vm_map_find.9
index 031be99b767a..0a961dfa3475 100644
--- a/share/man/man9/vm_map_find.9
+++ b/share/man/man9/vm_map_find.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 12, 2013
.Dt VM_MAP_FIND 9
.Os
diff --git a/share/man/man9/vm_map_findspace.9 b/share/man/man9/vm_map_findspace.9
index 29d465bd3583..5e5ebcbafd4d 100644
--- a/share/man/man9/vm_map_findspace.9
+++ b/share/man/man9/vm_map_findspace.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_FINDSPACE 9
.Os
diff --git a/share/man/man9/vm_map_inherit.9 b/share/man/man9/vm_map_inherit.9
index f8416c722cde..511403d8ea0a 100644
--- a/share/man/man9/vm_map_inherit.9
+++ b/share/man/man9/vm_map_inherit.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_INHERIT 9
.Os
diff --git a/share/man/man9/vm_map_init.9 b/share/man/man9/vm_map_init.9
index 25b8aeb39f21..f2e01bed4b50 100644
--- a/share/man/man9/vm_map_init.9
+++ b/share/man/man9/vm_map_init.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_INIT 9
.Os
diff --git a/share/man/man9/vm_map_insert.9 b/share/man/man9/vm_map_insert.9
index 20e062b446a3..2cd33e45fc32 100644
--- a/share/man/man9/vm_map_insert.9
+++ b/share/man/man9/vm_map_insert.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 11, 2013
.Dt VM_MAP_INSERT 9
.Os
diff --git a/share/man/man9/vm_map_lock.9 b/share/man/man9/vm_map_lock.9
index 0f26412871fb..5b0afa1bdb4c 100644
--- a/share/man/man9/vm_map_lock.9
+++ b/share/man/man9/vm_map_lock.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_LOCK 9
.Os
diff --git a/share/man/man9/vm_map_lookup.9 b/share/man/man9/vm_map_lookup.9
index a28613fafdfd..fe19d09e00e8 100644
--- a/share/man/man9/vm_map_lookup.9
+++ b/share/man/man9/vm_map_lookup.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_LOOKUP 9
.Os
diff --git a/share/man/man9/vm_map_madvise.9 b/share/man/man9/vm_map_madvise.9
index dc283ebbb8b2..9163ca9d28b1 100644
--- a/share/man/man9/vm_map_madvise.9
+++ b/share/man/man9/vm_map_madvise.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_MADVISE 9
.Os
diff --git a/share/man/man9/vm_map_max.9 b/share/man/man9/vm_map_max.9
index 92d574dbeed6..0f5317851374 100644
--- a/share/man/man9/vm_map_max.9
+++ b/share/man/man9/vm_map_max.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_MAX 9
.Os
diff --git a/share/man/man9/vm_map_protect.9 b/share/man/man9/vm_map_protect.9
index d5986ce7b7c3..21e7b53a6bc6 100644
--- a/share/man/man9/vm_map_protect.9
+++ b/share/man/man9/vm_map_protect.9
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 23, 2021
.Dt VM_MAP_PROTECT 9
.Os
diff --git a/share/man/man9/vm_map_remove.9 b/share/man/man9/vm_map_remove.9
index 79c678228175..c72abe745d9a 100644
--- a/share/man/man9/vm_map_remove.9
+++ b/share/man/man9/vm_map_remove.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_REMOVE 9
.Os
diff --git a/share/man/man9/vm_map_simplify_entry.9 b/share/man/man9/vm_map_simplify_entry.9
index 3c7a1f87df36..0e99596d067e 100644
--- a/share/man/man9/vm_map_simplify_entry.9
+++ b/share/man/man9/vm_map_simplify_entry.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_SIMPLIFY_ENTRY 9
.Os
diff --git a/share/man/man9/vm_map_stack.9 b/share/man/man9/vm_map_stack.9
index 4036efb4f043..533a9a49a4b1 100644
--- a/share/man/man9/vm_map_stack.9
+++ b/share/man/man9/vm_map_stack.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 11, 2013
.Dt VM_MAP_STACK 9
.Os
diff --git a/share/man/man9/vm_map_submap.9 b/share/man/man9/vm_map_submap.9
index 6f29d6b90b3f..9d96f9bd063a 100644
--- a/share/man/man9/vm_map_submap.9
+++ b/share/man/man9/vm_map_submap.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_SUBMAP 9
.Os
diff --git a/share/man/man9/vm_map_sync.9 b/share/man/man9/vm_map_sync.9
index dd487df273c6..028ef20b0499 100644
--- a/share/man/man9/vm_map_sync.9
+++ b/share/man/man9/vm_map_sync.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 9, 2011
.Dt VM_MAP_SYNC 9
.Os
diff --git a/share/man/man9/vm_map_wire.9 b/share/man/man9/vm_map_wire.9
index f112f344e6bc..2bea01c74e2e 100644
--- a/share/man/man9/vm_map_wire.9
+++ b/share/man/man9/vm_map_wire.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 19, 2003
.Dt VM_MAP_WIRE 9
.Os
diff --git a/share/man/man9/vm_page_aflag.9 b/share/man/man9/vm_page_aflag.9
index 0d0bdeb55085..4f45d7b71ef1 100644
--- a/share/man/man9/vm_page_aflag.9
+++ b/share/man/man9/vm_page_aflag.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 31, 2011
.Dt VM_PAGE_AFLAG 9
.Os
diff --git a/share/man/man9/vm_page_alloc.9 b/share/man/man9/vm_page_alloc.9
index 95463483c25c..de225e05d707 100644
--- a/share/man/man9/vm_page_alloc.9
+++ b/share/man/man9/vm_page_alloc.9
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd November 11, 2021
.Dt VM_PAGE_ALLOC 9
.Os
diff --git a/share/man/man9/vm_page_bits.9 b/share/man/man9/vm_page_bits.9
index 43b54dcf93b6..c8900f4a45c0 100644
--- a/share/man/man9/vm_page_bits.9
+++ b/share/man/man9/vm_page_bits.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 1, 2001
.Dt VM_PAGE_BITS 9
.Os
diff --git a/share/man/man9/vm_page_busy.9 b/share/man/man9/vm_page_busy.9
index 88511aafabca..ee8ca7e1f329 100644
--- a/share/man/man9/vm_page_busy.9
+++ b/share/man/man9/vm_page_busy.9
@@ -22,8 +22,6 @@
.\" 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.
-.\"
-.\" $FreeBSD$
.Dd November 11, 2021
.Dt VM_PAGE_BUSY 9
.Os
diff --git a/share/man/man9/vm_page_deactivate.9 b/share/man/man9/vm_page_deactivate.9
index fff5ea9b5499..ca6c0595cce7 100644
--- a/share/man/man9/vm_page_deactivate.9
+++ b/share/man/man9/vm_page_deactivate.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 2001
.Dt VM_PAGE_DEACTIVATE 9
.Os
diff --git a/share/man/man9/vm_page_dontneed.9 b/share/man/man9/vm_page_dontneed.9
index b30df14c7018..6f6628f747a2 100644
--- a/share/man/man9/vm_page_dontneed.9
+++ b/share/man/man9/vm_page_dontneed.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 30, 2001
.Dt VM_PAGE_DONTNEED 9
.Os
diff --git a/share/man/man9/vm_page_free.9 b/share/man/man9/vm_page_free.9
index 7df970cf6da9..0a71076d164c 100644
--- a/share/man/man9/vm_page_free.9
+++ b/share/man/man9/vm_page_free.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 24, 2001
.Dt VM_PAGE_FREE 9
.Os
diff --git a/share/man/man9/vm_page_grab.9 b/share/man/man9/vm_page_grab.9
index d19289ae9459..28a24e8bfa63 100644
--- a/share/man/man9/vm_page_grab.9
+++ b/share/man/man9/vm_page_grab.9
@@ -28,8 +28,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 23, 2013
.Dt VM_PAGE_GRAB 9
.Os
diff --git a/share/man/man9/vm_page_insert.9 b/share/man/man9/vm_page_insert.9
index ce2c6ae91966..7f872c47ec97 100644
--- a/share/man/man9/vm_page_insert.9
+++ b/share/man/man9/vm_page_insert.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 17, 2001
.Dt VM_PAGE_INSERT 9
.Os
diff --git a/share/man/man9/vm_page_lookup.9 b/share/man/man9/vm_page_lookup.9
index a268617e358b..74318fd60efd 100644
--- a/share/man/man9/vm_page_lookup.9
+++ b/share/man/man9/vm_page_lookup.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 13, 2001
.Dt VM_PAGE_LOOKUP 9
.Os
diff --git a/share/man/man9/vm_page_rename.9 b/share/man/man9/vm_page_rename.9
index 64f6409b186c..359d334125dc 100644
--- a/share/man/man9/vm_page_rename.9
+++ b/share/man/man9/vm_page_rename.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd July 17, 2001
.Dt VM_PAGE_RENAME 9
.Os
diff --git a/share/man/man9/vm_page_wire.9 b/share/man/man9/vm_page_wire.9
index 940cf9f6ceec..1f23bd5a263a 100644
--- a/share/man/man9/vm_page_wire.9
+++ b/share/man/man9/vm_page_wire.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd September 9, 2019
.Dt VM_PAGE_WIRE 9
.Os
diff --git a/share/man/man9/vm_set_page_size.9 b/share/man/man9/vm_set_page_size.9
index 09afaba8341b..e0fda4f5c40f 100644
--- a/share/man/man9/vm_set_page_size.9
+++ b/share/man/man9/vm_set_page_size.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 21, 2014
.Dt VM_SET_PAGE_SIZE 9
.Os
diff --git a/share/man/man9/vmem.9 b/share/man/man9/vmem.9
index f3a1c1d0b1d7..1dc74e951cb2 100644
--- a/share/man/man9/vmem.9
+++ b/share/man/man9/vmem.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.\" ------------------------------------------------------------
.Dd May 17, 2019
.Dt VMEM 9
diff --git a/share/man/man9/vn_deallocate.9 b/share/man/man9/vn_deallocate.9
index ce1515ddaaa1..6ce64dc67903 100644
--- a/share/man/man9/vn_deallocate.9
+++ b/share/man/man9/vn_deallocate.9
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 The FreeBSD Foundation
.\"
diff --git a/share/man/man9/vn_fullpath.9 b/share/man/man9/vn_fullpath.9
index 9f7287c287dd..116f519ec8aa 100644
--- a/share/man/man9/vn_fullpath.9
+++ b/share/man/man9/vn_fullpath.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 15, 2021
.Dt VN_FULLPATH 9
.Os
diff --git a/share/man/man9/vn_isdisk.9 b/share/man/man9/vn_isdisk.9
index 5de75e53e1e7..1c218b4a72b7 100644
--- a/share/man/man9/vn_isdisk.9
+++ b/share/man/man9/vn_isdisk.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd June 28, 2021
.Dt VN_ISDISK 9
.Os
diff --git a/share/man/man9/vnet.9 b/share/man/man9/vnet.9
index 7c254859c26c..28e28bfd3242 100644
--- a/share/man/man9/vnet.9
+++ b/share/man/man9/vnet.9
@@ -25,8 +25,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd December 10, 2020
.Dt VNET 9
.Os
diff --git a/share/man/man9/vnode.9 b/share/man/man9/vnode.9
index 8d8da46b93ea..3d34b48c2ee0 100644
--- a/share/man/man9/vnode.9
+++ b/share/man/man9/vnode.9
@@ -24,8 +24,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 12, 2014
.Dt VNODE 9
.Os
diff --git a/share/man/man9/vnode_pager_purge_range.9 b/share/man/man9/vnode_pager_purge_range.9
index ecd21a084a39..8bd54de9b204 100644
--- a/share/man/man9/vnode_pager_purge_range.9
+++ b/share/man/man9/vnode_pager_purge_range.9
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 The FreeBSD Foundation
.\"
diff --git a/share/man/man9/vnode_pager_setsize.9 b/share/man/man9/vnode_pager_setsize.9
index 0dc3b2057930..8de33541f8a1 100644
--- a/share/man/man9/vnode_pager_setsize.9
+++ b/share/man/man9/vnode_pager_setsize.9
@@ -1,5 +1,5 @@
.\"
-.\" SPDX-License-Identifier: BSD-2-Clause-FreeBSD
+.\" SPDX-License-Identifier: BSD-2-Clause
.\"
.\" Copyright (c) 2021 The FreeBSD Foundation
.\"
diff --git a/share/man/man9/vref.9 b/share/man/man9/vref.9
index 7b0c0f3fa4cd..56afe7a01140 100644
--- a/share/man/man9/vref.9
+++ b/share/man/man9/vref.9
@@ -26,8 +26,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd January 18, 2016
.Dt VREF 9
.Os
diff --git a/share/man/man9/vrefcnt.9 b/share/man/man9/vrefcnt.9
index de7af26fb9c0..d6f73f157c8c 100644
--- a/share/man/man9/vrefcnt.9
+++ b/share/man/man9/vrefcnt.9
@@ -24,8 +24,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
.\" DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 10, 2008
.Dt VREFCNT 9
.Os
diff --git a/share/man/man9/vrele.9 b/share/man/man9/vrele.9
index a0d6a1e3f0ac..01a6a8951474 100644
--- a/share/man/man9/vrele.9
+++ b/share/man/man9/vrele.9
@@ -27,8 +27,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 24, 2016
.Dt VRELE 9
.Os
diff --git a/share/man/man9/vslock.9 b/share/man/man9/vslock.9
index 1cf3e5d55df7..4522822d8c3e 100644
--- a/share/man/man9/vslock.9
+++ b/share/man/man9/vslock.9
@@ -27,8 +27,6 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd August 29, 2012
.Dt VSLOCK 9
.Os
diff --git a/share/man/man9/watchdog.9 b/share/man/man9/watchdog.9
index e43e739016fc..5a0cf55b65a3 100644
--- a/share/man/man9/watchdog.9
+++ b/share/man/man9/watchdog.9
@@ -22,8 +22,6 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd February 28, 2004
.Dt WATCHDOG 9
.Os
diff --git a/share/man/man9/zero_region.9 b/share/man/man9/zero_region.9
index 27b1b50be14d..1ad2166141fe 100644
--- a/share/man/man9/zero_region.9
+++ b/share/man/man9/zero_region.9
@@ -23,8 +23,6 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
.Dd March 2, 2021
.Dt ZERO_REGION 9
.Os
diff --git a/share/man/man9/zone.9 b/share/man/man9/zone.9
index e26b29976807..a6b8d2dfedbe 100644
--- a/share/man/man9/zone.9
+++ b/share/man/man9/zone.9
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 2001 Dag-Erling Coïdan Smørgrav
+.\" Copyright (c) 2001 Dag-Erling Smørgrav
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -23,9 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD$
-.\"
-.Dd February 15, 2022
+.Dd January 16, 2023
.Dt UMA 9
.Os
.Sh NAME
@@ -50,7 +48,7 @@ typedef void (*uma_free)(void *item, vm_size_t size, uint8_t pflag);
.Ed
.Ft uma_zone_t
.Fo uma_zcreate
-.Fa "char *name" "int size"
+.Fa "char *name" "size_t size"
.Fa "uma_ctor ctor" "uma_dtor dtor" "uma_init zinit" "uma_fini zfini"
.Fa "int align" "uint16_t flags"
.Fc
@@ -79,6 +77,8 @@ typedef void (*uma_free)(void *item, vm_size_t size, uint8_t pflag);
.Fn uma_zalloc_pcpu "uma_zone_t zone" "int flags"
.Ft "void *"
.Fn uma_zalloc_pcpu_arg "uma_zone_t zone" "void *arg" "int flags"
+.Ft "void *"
+.Fn uma_zalloc_smr "uma_zone_t zone" "int flags"
.Ft void
.Fn uma_zfree "uma_zone_t zone" "void *item"
.Ft void
@@ -88,6 +88,8 @@ typedef void (*uma_free)(void *item, vm_size_t size, uint8_t pflag);
.Ft void
.Fn uma_zfree_pcpu_arg "uma_zone_t zone" "void *item" "void *arg"
.Ft void
+.Fn uma_zfree_smr "uma_zone_t zone" "void *item"
+.Ft void
.Fn uma_prealloc "uma_zone_t zone" "int nitems"
.Ft void
.Fn uma_zone_reserve "uma_zone_t zone" "int nitems"
@@ -117,6 +119,10 @@ typedef void (*uma_free)(void *item, vm_size_t size, uint8_t pflag);
.Fn uma_zone_set_warning "uma_zone_t zone" "const char *warning"
.Ft void
.Fn uma_zone_set_maxaction "uma_zone_t zone" "void (*maxaction)(uma_zone_t)"
+.Ft smr_t
+.Fn uma_zone_get_smr "uma_zone_t zone"
+.Ft void
+.Fn uma_zone_set_smr "uma_zone_t zone" "smr_t smr"
.In sys/sysctl.h
.Fn SYSCTL_UMA_MAX parent nbr name access zone descr
.Fn SYSCTL_ADD_UMA_MAX ctx parent nbr name access zone descr
@@ -330,6 +336,14 @@ Cached items that have not been used for a long period may also be freed from
zone.
When this flag is set, the system will not reclaim memory from the zone's
caches.
+.It Dv UMA_ZONE_SMR
+Create a zone whose items will be synchronized using the
+.Xr smr 9
+mechanism.
+Upon creation the zone will have an associated
+.Dt smr_t
+structure which can be fetched using
+.Fn uma_zone_get_smr .
.El
.Pp
Zones can be destroyed using
@@ -390,6 +404,17 @@ then
does nothing.
.Pp
The
+.Fn uma_zalloc_smr
+and
+.Fn uma_zfree_smr
+functions allocate and free items from an SMR-enabled zone, that is,
+a zone created with
+.Dv UMA_ZONE_SMR
+or a zone that has had
+.Fn uma_zone_set_smr
+called.
+.Pp
+The
.Fn uma_zalloc_domain
function allows callers to specify a fixed
.Xr numa 4
@@ -535,6 +560,16 @@ Therefore,
this function should do very little work (similar to a signal handler).
.Pp
The
+.Fn uma_zone_set_smr
+function associates an existing
+.Xr smr 9
+structure with a UMA zone.
+The effect is similar to creating a zone with the
+.Dv UMA_ZONE_SMR
+flag, except that a new SMR structure is not created.
+This function must be called before any allocations from the zone are performed.
+.Pp
+The
.Fn SYSCTL_UMA_MAX parent nbr name access zone descr
macro declares a static
.Xr sysctl 9
@@ -577,7 +612,8 @@ non-executable memory.
.Sh SEE ALSO
.Xr numa 4 ,
.Xr vmstat 8 ,
-.Xr malloc 9
+.Xr malloc 9 ,
+.Xr smr 9
.Rs
.%A Jeff Bonwick
.%T "The Slab Allocator: An Object-Caching Kernel Memory Allocator"