aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/netfilter/nf_conntrack_core.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c
index 5f72b94b4918..5276a2dd56fe 100644
--- a/net/netfilter/nf_conntrack_core.c
+++ b/net/netfilter/nf_conntrack_core.c
@@ -1267,13 +1267,19 @@ err_cache:
1267 return ret; 1267 return ret;
1268} 1268}
1269 1269
1270/*
1271 * We need to use special "null" values, not used in hash table
1272 */
1273#define UNCONFIRMED_NULLS_VAL ((1<<30)+0)
1274#define DYING_NULLS_VAL ((1<<30)+1)
1275
1270static int nf_conntrack_init_net(struct net *net) 1276static int nf_conntrack_init_net(struct net *net)
1271{ 1277{
1272 int ret; 1278 int ret;
1273 1279
1274 atomic_set(&net->ct.count, 0); 1280 atomic_set(&net->ct.count, 0);
1275 INIT_HLIST_NULLS_HEAD(&net->ct.unconfirmed, 0); 1281 INIT_HLIST_NULLS_HEAD(&net->ct.unconfirmed, UNCONFIRMED_NULLS_VAL);
1276 INIT_HLIST_NULLS_HEAD(&net->ct.dying, 0); 1282 INIT_HLIST_NULLS_HEAD(&net->ct.dying, DYING_NULLS_VAL);
1277 net->ct.stat = alloc_percpu(struct ip_conntrack_stat); 1283 net->ct.stat = alloc_percpu(struct ip_conntrack_stat);
1278 if (!net->ct.stat) { 1284 if (!net->ct.stat) {
1279 ret = -ENOMEM; 1285 ret = -ENOMEM;