summaryrefslogtreecommitdiffstats
path: root/sys/contrib
diff options
context:
space:
mode:
authorcy <cy@FreeBSD.org>2014-06-03 19:06:47 +0000
committercy <cy@FreeBSD.org>2014-06-03 19:06:47 +0000
commit9def490ad1703fb10c00235aa158e73a926df4af (patch)
tree52e5b48c7979cc6501bd86c949ef85624ba0d848 /sys/contrib
parente1c5226357884bdb9ab36da7295381b01fc14f79 (diff)
downloadFreeBSD-src-9def490ad1703fb10c00235aa158e73a926df4af.zip
FreeBSD-src-9def490ad1703fb10c00235aa158e73a926df4af.tar.gz
MFC r266605.
Move mutex creation from ipf_log_soft_init() to ipf_log_soft_create() to be consistent with mutex destruction in ipf_log_soft_destroy(). As a result mutex destruction in ipf_log_soft_fini() is redundant. Approved by: glebius (mentor)
Diffstat (limited to 'sys/contrib')
-rw-r--r--sys/contrib/ipfilter/netinet/ip_log.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/sys/contrib/ipfilter/netinet/ip_log.c b/sys/contrib/ipfilter/netinet/ip_log.c
index 1349522..d898d96 100644
--- a/sys/contrib/ipfilter/netinet/ip_log.c
+++ b/sys/contrib/ipfilter/netinet/ip_log.c
@@ -214,6 +214,7 @@ ipf_log_soft_create(softc)
ipf_main_softc_t *softc;
{
ipf_log_softc_t *softl;
+ int i;
KMALLOC(softl, ipf_log_softc_t *);
if (softl == NULL)
@@ -234,6 +235,10 @@ ipf_log_soft_create(softc)
return NULL;
}
+ for (i = IPL_LOGMAX; i >= 0; i--) {
+ MUTEX_INIT(&softl->ipl_mutex[i], "ipf log mutex");
+ }
+
softl->ipl_suppress = 1;
softl->ipl_logall = 0;
softl->ipl_log_init = 0;
@@ -267,13 +272,6 @@ ipf_log_soft_init(softc, arg)
softl->iplog_ss[i].read_waiter = 0;
softl->iplog_ss[i].state = 0;
# endif
-# if defined(linux) && defined(_KERNEL)
- init_waitqueue_head(softl->iplh_linux + i);
-# endif
-# if SOLARIS && defined(_KERNEL)
- cv_init(&softl->ipl_wait[i], NULL, CV_DRIVER, NULL);
-# endif
- MUTEX_INIT(&softl->ipl_mutex[i], "ipf log mutex");
}
@@ -324,7 +322,7 @@ ipf_log_soft_fini(softc, arg)
# endif
MUTEX_ENTER(&softl->ipl_mutex[i]);
}
- MUTEX_DESTROY(&softl->ipl_mutex[i]);
+ MUTEX_EXIT(&softl->ipl_mutex[i]);
}
return 0;
OpenPOWER on IntegriCloud