svn commit: r255755 - head/sys/contrib/ipfilter/netinet
Cy Schubert
cy at FreeBSD.org
Sat Sep 21 04:05:39 UTC 2013
Author: cy
Date: Sat Sep 21 04:05:38 2013
New Revision: 255755
URL: http://svnweb.freebsd.org/changeset/base/255755
Log:
Convert ipfilter from timeout(9) to callout(9).
Submitted by: jhb
Approved by: glebius (mentor)
Approved by: re (blanket)
Modified:
head/sys/contrib/ipfilter/netinet/ip_fil.h
head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c
Modified: head/sys/contrib/ipfilter/netinet/ip_fil.h
==============================================================================
--- head/sys/contrib/ipfilter/netinet/ip_fil.h Sat Sep 21 03:57:56 2013 (r255754)
+++ head/sys/contrib/ipfilter/netinet/ip_fil.h Sat Sep 21 04:05:38 2013 (r255755)
@@ -1654,7 +1654,7 @@ typedef struct ipf_main_softc_s {
ipftoken_t **ipf_token_tail;
#if defined(__FreeBSD_version) && (__FreeBSD_version >= 300000) && \
defined(_KERNEL)
- struct callout_handle ipf_slow_ch;
+ struct callout ipf_slow_ch;
#endif
#if defined(linux) && defined(_KERNEL)
struct timer_list ipf_timer;
Modified: head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c
==============================================================================
--- head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c Sat Sep 21 03:57:56 2013 (r255754)
+++ head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c Sat Sep 21 04:05:38 2013 (r255755)
@@ -178,11 +178,13 @@ ipf_timer_func(arg)
ipf_slowtimer(softc);
if (softc->ipf_running == -1 || softc->ipf_running == 1) {
-#if FREEBSD_GE_REV(300000)
+#if 0
softc->ipf_slow_ch = timeout(ipf_timer_func, softc, hz/2);
-#else
- timeout(ipf_timer_func, softc, hz/2);
#endif
+ callout_init(&softc->ipf_slow_ch, CALLOUT_MPSAFE);
+ callout_reset(&softc->ipf_slow_ch,
+ (hz / IPF_HZ_DIVIDE) * IPF_HZ_MULT,
+ ipf_timer_func, softc);
}
RWLOCK_EXIT(&softc->ipf_global);
SPL_X(s);
@@ -223,8 +225,13 @@ ipfattach(softc)
ipid = 0;
SPL_X(s);
+#if 0
softc->ipf_slow_ch = timeout(ipf_timer_func, softc,
(hz / IPF_HZ_DIVIDE) * IPF_HZ_MULT);
+#endif
+ callout_init(&softc->ipf_slow_ch, CALLOUT_MPSAFE);
+ callout_reset(&softc->ipf_slow_ch, (hz / IPF_HZ_DIVIDE) * IPF_HZ_MULT,
+ ipf_timer_func, softc);
return 0;
}
@@ -246,9 +253,12 @@ ipfdetach(softc)
SPL_NET(s);
+#if 0
if (softc->ipf_slow_ch.callout != NULL)
untimeout(ipf_timer_func, softc, softc->ipf_slow_ch);
bzero(&softc->ipf_slow, sizeof(softc->ipf_slow));
+#endif
+ callout_drain(&softc->ipf_slow_ch);
#ifndef NETBSD_PF
if (ipf_checkp != NULL)
More information about the svn-src-head
mailing list