]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - net/ipv6/ip6mr.c
ipmr: dont corrupt lists
[net-next-2.6.git] / net / ipv6 / ip6mr.c
index 89c0b077c7aa7e2beb0b075bbacf8bc75e8dd03f..66078dad7fe8c353bd4de83115dc4eee73ba978f 100644 (file)
@@ -254,8 +254,10 @@ static void __net_exit ip6mr_rules_exit(struct net *net)
 {
        struct mr6_table *mrt, *next;
 
-       list_for_each_entry_safe(mrt, next, &net->ipv6.mr6_tables, list)
+       list_for_each_entry_safe(mrt, next, &net->ipv6.mr6_tables, list) {
+               list_del(&mrt->list);
                ip6mr_free_table(mrt);
+       }
        fib_rules_unregister(net->ipv6.mr6_rules_ops);
 }
 #else