summaryrefslogtreecommitdiffstats
path: root/kernel/net
diff options
context:
space:
mode:
authorJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2012-11-27 14:19:07 +0100
committerJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2012-11-27 14:19:07 +0100
commita9ff31b7aa8dbb12c04fdf2b0add6a9966a5cb67 (patch)
treee874a870d522a0cf3246ee14086472f7e3822ed3 /kernel/net
parent24c09bcd70c6e96b407db6d2266b5f2fa99f73d5 (diff)
Backport RCU handling up to 2.6.32.x
__rcu and rcu_dereference_protected is missing from older kernel releases.
Diffstat (limited to 'kernel/net')
-rw-r--r--kernel/net/netfilter/ipset/ip_set_core.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/kernel/net/netfilter/ipset/ip_set_core.c b/kernel/net/netfilter/ipset/ip_set_core.c
index b58f343..b32912f 100644
--- a/kernel/net/netfilter/ipset/ip_set_core.c
+++ b/kernel/net/netfilter/ipset/ip_set_core.c
@@ -31,7 +31,11 @@ static LIST_HEAD(ip_set_type_list); /* all registered set types */
static DEFINE_MUTEX(ip_set_type_mutex); /* protects ip_set_type_list */
static DEFINE_RWLOCK(ip_set_ref_lock); /* protects the set refs */
+#ifdef __rcu
static struct ip_set * __rcu *ip_set_list; /* all individual sets */
+#else
+static struct ip_set **ip_set_list; /* all individual sets */
+#endif
static ip_set_id_t ip_set_max = CONFIG_IP_SET_MAX; /* max number of sets */
#define IP_SET_INC 64
@@ -46,6 +50,10 @@ MODULE_AUTHOR("Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>");
MODULE_DESCRIPTION("core IP set support");
MODULE_ALIAS_NFNL_SUBSYS(NFNL_SUBSYS_IPSET);
+#ifndef rcu_dereference_protected
+#define rcu_dereference_protected(p, c) rcu_dereference(p)
+#endif
+
/* When the nfnl mutex is held: */
#define nfnl_dereference(p) \
rcu_dereference_protected(p, 1)