Page MenuHomeFreeBSD

D10025.id26308.diff
No OneTemporary

D10025.id26308.diff

Index: sys/netpfil/pf/pf_ioctl.c
===================================================================
--- sys/netpfil/pf/pf_ioctl.c
+++ sys/netpfil/pf/pf_ioctl.c
@@ -3788,6 +3788,9 @@
{
int error = 0;
+ /* Unload the root VNET */
+ pf_unload_vnet();
+
pf_end_threads = 1;
while (pf_end_threads < 2) {
wakeup_one(pf_purge_thread);
@@ -3818,6 +3821,12 @@
vnet_pf_uninit(const void *unused __unused)
{
+ /* If we're uninit-ing the default vnet we're actually unloading the pf
+ * module, and we've already cleaned up this, as well as our locks.
+ * Don't do anything. */
+ if (IS_DEFAULT_VNET(curvnet))
+ return;
+
pf_unload_vnet();
}
VNET_SYSUNINIT(vnet_pf_uninit, SI_SUB_PROTO_FIREWALL, SI_ORDER_THIRD,

File Metadata

Mime Type
text/plain
Expires
Sun, May 17, 11:46 PM (20 h, 5 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
33219617
Default Alt Text
D10025.id26308.diff (725 B)

Event Timeline