--- a/net/netfilter/nf_nat_core.c
+++ b/net/netfilter/nf_nat_core.c
@@ -487,7 +487,7 @@ static int nf_nat_proto_clean(struct nf_conn *i, void *data)
 
        if (clean->hash) {
                spin_lock_bh(&nf_nat_lock);
-               hlist_del_rcu(&nat->bysource);
+               hlist_del_init_rcu(&nat->bysource);
                spin_unlock_bh(&nf_nat_lock);
        } else {

