]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
netfilter: nf_tables_offload: Check for the NETDEV_UNREGISTER event
authorwenxu <wenxu@ucloud.cn>
Wed, 13 Nov 2019 04:21:07 +0000 (12:21 +0800)
committerPablo Neira Ayuso <pablo@netfilter.org>
Mon, 2 Dec 2019 09:27:25 +0000 (10:27 +0100)
Check for the NETDEV_UNREGISTER event from the nft_offload_netdev_event
function, which is the event that actually triggers the clean up.

Fixes: 06d392cbe3db ("netfilter: nf_tables_offload: remove rules when the device unregisters")
Signed-off-by: wenxu <wenxu@ucloud.cn>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/nf_tables_offload.c

index 68f17a6921d825f014d0a32b29495e90185c9d4b..d7a35da008ef72eb8121e2e2c069c80245f74b72 100644 (file)
@@ -577,6 +577,9 @@ static int nft_offload_netdev_event(struct notifier_block *this,
        struct net *net = dev_net(dev);
        struct nft_chain *chain;
 
+       if (event != NETDEV_UNREGISTER)
+               return NOTIFY_DONE;
+
        mutex_lock(&net->nft.commit_mutex);
        chain = __nft_offload_get_chain(dev);
        if (chain)