Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
[sfrench/cifs-2.6.git] / net / ipv4 / netfilter / ipt_hashlimit.c
index dc1521c5aa810bf8016f7ff5732bc6a282d022a0..7c6836c4646e12e772c952d42e0372b5b5c23d34 100644 (file)
@@ -40,6 +40,7 @@
 
 /* FIXME: this is just for IP_NF_ASSERRT */
 #include <linux/netfilter_ipv4/ip_conntrack.h>
+#include <linux/mutex.h>
 
 MODULE_LICENSE("GPL");
 MODULE_AUTHOR("Harald Welte <laforge@netfilter.org>");
@@ -92,7 +93,7 @@ struct ipt_hashlimit_htable {
 };
 
 static DEFINE_SPINLOCK(hashlimit_lock);        /* protects htables list */
-static DECLARE_MUTEX(hlimit_mutex);    /* additional checkentry protection */
+static DEFINE_MUTEX(hlimit_mutex);     /* additional checkentry protection */
 static HLIST_HEAD(hashlimit_htables);
 static kmem_cache_t *hashlimit_cachep __read_mostly;
 
@@ -542,13 +543,13 @@ hashlimit_checkentry(const char *tablename,
         * call vmalloc, and that can sleep.  And we cannot just re-search
         * the list of htable's in htable_create(), since then we would
         * create duplicate proc files. -HW */
-       down(&hlimit_mutex);
+       mutex_lock(&hlimit_mutex);
        r->hinfo = htable_find_get(r->name);
        if (!r->hinfo && (htable_create(r) != 0)) {
-               up(&hlimit_mutex);
+               mutex_unlock(&hlimit_mutex);
                return 0;
        }
-       up(&hlimit_mutex);
+       mutex_unlock(&hlimit_mutex);
 
        /* Ugly hack: For SMP, we only want to use one set */
        r->u.master = r;
@@ -718,15 +719,15 @@ cleanup_nothing:
        
 }
 
-static int __init init(void)
+static int __init ipt_hashlimit_init(void)
 {
        return init_or_fini(0);
 }
 
-static void __exit fini(void)
+static void __exit ipt_hashlimit_fini(void)
 {
        init_or_fini(1);
 }
 
-module_init(init);
-module_exit(fini);
+module_init(ipt_hashlimit_init);
+module_exit(ipt_hashlimit_fini);