freebsd-skq/sys
zec fb1931d971 Introduce a div_destroy() function which takes over per-vnet cleanup tasks
from the existing modevent / MOD_UNLOAD handler, and register div_destroy()
in protosw as per-vnet .pr_destroy() handler for options VIMAGE builds.  In
nooptions VIMAGE builds, div_destroy() will be invoked from the modevent
handler, resulting in effectively identical operation as it was prior this
change.  div_destroy() also tears down hashtables used by ipdivert, which
were previously left behind on ipdivert kldunloads.

For options VIMAGE builds only, temporarily disable kldunloading of ipdivert,
because without introducing additional locking logic it is impossible to
atomically check whether all ipdivert instances in all vnets are idle, and
proceed with cleanup without opening a race window for a vnet to open an
ipdivert socket while ipdivert tear-down is in progress.

While here, staticize div_init(), because it is not used outside of
ip_divert.c.

In cooperation with:	julian
Approved by:	re (rwatson), julian (mentor)
MFC after:	3 days
2009-08-24 10:06:02 +00:00
..
amd64 Check whether the SMBIOS reports reasonable amount of memory. If it is 2009-08-20 22:58:05 +00:00
arm KDB needs <machine/db_machdep.h>, so move it under #ifdef KDB. 2009-08-23 23:37:53 +00:00
boot Fix parse() so that the partition to boot (load /boot/loader) from can 2009-08-17 15:19:03 +00:00
bsm Import OpenBSM 1.1p1 from vendor branch to 8-CURRENT, populating 2009-07-17 14:02:20 +00:00
cam Fix copy/paste bug, that requests data read during ATA device probe sequence 2009-08-18 09:27:17 +00:00
cddl - Hide ZFS kernel threads under zfskern process. 2009-08-23 11:33:46 +00:00
compat Rework global locks for interface list and index management, correcting 2009-08-23 20:40:19 +00:00
conf Allow pty(4) to be loaded as a kld. 2009-08-23 20:26:09 +00:00
contrib Rework global locks for interface list and index management, correcting 2009-08-23 20:40:19 +00:00
crypto Changed to M_NOWAIT when reallocing psc_buf in padlock_sha_update(), 2009-05-27 09:52:12 +00:00
ddb Merge the remainder of kern_vimage.c and vimage.h into vnet.c and 2009-08-01 19:26:27 +00:00
dev Cleanups to the Xen console driver: 2009-08-24 08:27:42 +00:00
fs Apply the same patch as r196205 for nfs_upgrade_lock() and 2009-08-17 16:12:28 +00:00
gdb
geom The start of the EFI GPT partition in the PMBR can always be represented 2009-08-17 16:16:46 +00:00
gnu Fix the build by using proper format. 2009-06-25 16:48:13 +00:00
i386 Check whether the SMBIOS reports reasonable amount of memory. If it is 2009-08-20 22:58:05 +00:00
ia64 Decouple ACPI CPU Ids from FreeBSD's cpuid. The ACPI Ids can be 2009-08-16 01:43:08 +00:00
isa Rename statclock_disable variable to atrtcclock_disable that it actually is, 2009-05-03 17:47:21 +00:00
kern When registering a protocol to an existing protocol domain via 2009-08-24 10:03:41 +00:00
kgssapi When the KOBJMETHOD() macro was updated, it resulted in the 2009-06-14 17:33:46 +00:00
libkern done method is supposed to return int. 2009-06-22 22:09:18 +00:00
mips * Completely Remove the option STOP_NMI from the kernel. This option 2009-08-13 17:09:45 +00:00
modules Allow pty(4) to be loaded as a kld. 2009-08-23 20:26:09 +00:00
net Rather than using IFNET_RLOCK() when iterating over (and modifying) the 2009-08-23 21:00:21 +00:00
net80211 Fix a typo in ifdef mesh support. This would make mesh unworkable if 2009-08-17 12:57:57 +00:00
netatalk Reverse misordered unlock and lock in at_control for netatalk phase I 2009-08-12 10:44:13 +00:00
netgraph Rework global locks for interface list and index management, correcting 2009-08-23 20:40:19 +00:00
netinet Introduce a div_destroy() function which takes over per-vnet cleanup tasks 2009-08-24 10:06:02 +00:00
netinet6 Rework global locks for interface list and index management, correcting 2009-08-23 20:40:19 +00:00
netipsec Rework global locks for interface list and index management, correcting 2009-08-23 20:40:19 +00:00
netipx Use queue(9) instead of hand-crafted link lists for the global IPX 2009-06-24 20:57:50 +00:00
netnatm Reimplement the netisr framework in order to support parallel netisr 2009-06-01 10:41:38 +00:00
netncp
netsmb Rework socket upcalls to close some races with setup/teardown of upcalls. 2009-06-01 21:17:03 +00:00
nfs Revert rev 192323 (nfs_common.c only): 2009-07-12 03:53:52 +00:00
nfsclient Rework global locks for interface list and index management, correcting 2009-08-23 20:40:19 +00:00
nfsserver Remove the old kernel RPC implementation and the NFS_LEGACYRPC option. 2009-06-30 19:03:27 +00:00
nlm Since svc_[dg|vc|tli|tp]_create() did not hold a reference count on the 2009-06-17 22:50:26 +00:00
opencrypto Fix cryptodev UIO creation. 2009-05-23 13:23:46 +00:00
pc98 Temporarily revert the new-bus locking for 8.0 release. It will be 2009-08-20 19:17:53 +00:00
pci Adding hardware ID for RTL810x PCIe found on HP Pavilion DV2-1022AX. 2009-07-14 04:35:13 +00:00
powerpc * Completely Remove the option STOP_NMI from the kernel. This option 2009-08-13 17:09:45 +00:00
rpc Use PBDRY flag for msleep(9) in NFS and NLM when sleeping thread owns 2009-07-14 22:54:29 +00:00
security Correctly audit real gids following changes to the audit record argument 2009-08-12 10:45:45 +00:00
sparc64 * Completely Remove the option STOP_NMI from the kernel. This option 2009-08-13 17:09:45 +00:00
sun4v * Completely Remove the option STOP_NMI from the kernel. This option 2009-08-13 17:09:45 +00:00
sys Add ttydisc_rint_simple(). 2009-08-23 08:04:40 +00:00
tools - Increase dynamic range of filter coefficients from 28bit to 30bit. 2009-07-05 18:15:06 +00:00
ufs When a UFS node is truncated to the zero length, e.g. by explicit 2009-08-14 11:00:38 +00:00
vm Remove debugging that crept in with previous commit. 2009-07-24 15:06:49 +00:00
xdr Add a check for a NULL mbuf ptr at the beginning of xdrmbuf_inline() 2009-08-12 16:27:51 +00:00
xen Temporarily revert the new-bus locking for 8.0 release. It will be 2009-08-20 19:17:53 +00:00
Makefile Remove the unmaintained University of Michigan NFSv4 client from 8.x 2009-05-22 12:35:12 +00:00