summaryrefslogtreecommitdiffstats
path: root/net/netfilter/nf_tables_api.c
diff options
context:
space:
mode:
authorPablo Neira Ayuso2014-10-01 13:53:20 +0200
committerPablo Neira Ayuso2014-10-02 18:30:54 +0200
commit1b1bc49c0fc0501bf0d1366a2a5e5c1f8dcf9cb1 (patch)
treeaa9308f86af127e4f7daf0311d5bbe8cf7466f55 /net/netfilter/nf_tables_api.c
parentnetfilter: use IS_ENABLED(CONFIG_BRIDGE_NETFILTER) (diff)
downloadkernel-qcow2-linux-1b1bc49c0fc0501bf0d1366a2a5e5c1f8dcf9cb1.tar.gz
kernel-qcow2-linux-1b1bc49c0fc0501bf0d1366a2a5e5c1f8dcf9cb1.tar.xz
kernel-qcow2-linux-1b1bc49c0fc0501bf0d1366a2a5e5c1f8dcf9cb1.zip
netfilter: nf_tables: wait for call_rcu completion on module removal
Make sure the objects have been released before the nf_tables modules is removed. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net/netfilter/nf_tables_api.c')
-rw-r--r--net/netfilter/nf_tables_api.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.c
index 19e79f0d9ad2..556a0dfa4abc 100644
--- a/net/netfilter/nf_tables_api.c
+++ b/net/netfilter/nf_tables_api.c
@@ -4163,6 +4163,7 @@ static void __exit nf_tables_module_exit(void)
{
unregister_pernet_subsys(&nf_tables_net_ops);
nfnetlink_subsys_unregister(&nf_tables_subsys);
+ rcu_barrier();
nf_tables_core_module_exit();
kfree(info);
}