netfilter: nf_conntrack: fix crash when unloading helpers
authorPatrick McHardy <kaber@trash.net>
Wed, 15 Apr 2009 10:45:08 +0000 (12:45 +0200)
committerPatrick McHardy <kaber@trash.net>
Wed, 15 Apr 2009 10:45:08 +0000 (12:45 +0200)
Commit ea781f197d (netfilter: nf_conntrack: use SLAB_DESTROY_BY_RCU and)
get rid of call_rcu() was missing one conversion to the hlist_nulls
functions, causing a crash when unloading conntrack helper modules.

Reported-and-tested-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Patrick McHardy <kaber@trash.net>
net/netfilter/nf_conntrack_helper.c

index 30b8e9009f99a2ea3d7c366c9f7fc6a551d03776..0fa5a422959fc63c13c75abb86747a77fc4c185c 100644 (file)
@@ -176,7 +176,7 @@ static void __nf_conntrack_helper_unregister(struct nf_conntrack_helper *me,
        }
 
        /* Get rid of expecteds, set helpers to NULL. */
-       hlist_for_each_entry(h, nn, &net->ct.unconfirmed, hnnode)
+       hlist_nulls_for_each_entry(h, nn, &net->ct.unconfirmed, hnnode)
                unhelp(h, me);
        for (i = 0; i < nf_conntrack_htable_size; i++) {
                hlist_nulls_for_each_entry(h, nn, &net->ct.hash[i], hnnode)