summaryrefslogtreecommitdiffstats
path: root/net/netfilter/nfnetlink_cttimeout.c
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2022-04-11 13:01:23 +0200
committerPablo Neira Ayuso <pablo@netfilter.org>2022-05-13 18:52:17 +0200
commitace53fdc262fa6751acd3d61f3236f84ae3340f1 (patch)
tree8455a8b1512d2703f09e5dac3cc7ac19535a2e12 /net/netfilter/nfnetlink_cttimeout.c
parent42df4fb9b1bed6a6d2c1f79b974a9ed14de27ea1 (diff)
downloadlinux-ace53fdc262fa6751acd3d61f3236f84ae3340f1.tar.bz2
netfilter: conntrack: remove __nf_ct_unconfirmed_destroy
Its not needed anymore: A. If entry is totally new, then the rcu-protected resource must already have been removed from global visibility before call to nf_ct_iterate_destroy. B. If entry was allocated before, but is not yet in the hash table (uncofirmed case), genid gets incremented and synchronize_rcu() call makes sure access has completed. C. Next attempt to peek at extension area will fail for unconfirmed conntracks, because ext->genid != genid. D. Conntracks in the hash are iterated as before. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net/netfilter/nfnetlink_cttimeout.c')
-rw-r--r--net/netfilter/nfnetlink_cttimeout.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/net/netfilter/nfnetlink_cttimeout.c b/net/netfilter/nfnetlink_cttimeout.c
index 9bc4ebe65faa..f069c24c6146 100644
--- a/net/netfilter/nfnetlink_cttimeout.c
+++ b/net/netfilter/nfnetlink_cttimeout.c
@@ -674,7 +674,6 @@ static void __exit cttimeout_exit(void)
RCU_INIT_POINTER(nf_ct_timeout_hook, NULL);
nf_ct_iterate_destroy(untimeout, NULL);
- synchronize_rcu();
}
module_init(cttimeout_init);