RE: [PATCH net-next] netfilter: nf_conntrack: remove the unneed check for *bucket
From: David Laight <hidden>
Date: 2016-02-01 16:43:18
Also in:
lkml, netfilter-devel
From: David Laight <hidden>
Date: 2016-02-01 16:43:18
Also in:
lkml, netfilter-devel
From: Florian Westphal
Sent: 30 January 2016 21:30 Weidong Wang [off-list ref] wrote:quoted
In the 'for(...) {}', the *bucket alwasy < net->ct.htable_size, so remove the check@@ -1383,14 +1383,12 @@ get_next_corpse(struct net *net, int (*iter)(struct nf_conn *i, void *data), lockp = &nf_conntrack_locks[*bucket % CONNTRACK_LOCKS]; local_bh_disable(); spin_lock(lockp); - if (*bucket < net->ct.htable_size) {AFAIU net->ct.htable_size can shrink between for-test and aquiring the bucket lockp, so this additional if-test is needed.
If the table can shrink, can it not also grow - in which case the references bucket will be incorrect? David