dccp: Limit feature negotiation to connection setup phase
[linux-2.6] / net / ipv6 / ip6mr.c
index 182f8a1..b17377d 100644 (file)
@@ -297,9 +297,8 @@ static int ipmr_mfc_seq_show(struct seq_file *seq, void *v)
                const struct mfc6_cache *mfc = v;
                const struct ipmr_mfc_iter *it = seq->private;
 
-               seq_printf(seq,
-                          NIP6_FMT " " NIP6_FMT " %-3d %8ld %8ld %8ld",
-                          NIP6(mfc->mf6c_mcastgrp), NIP6(mfc->mf6c_origin),
+               seq_printf(seq, "%pI6 %pI6 %-3d %8ld %8ld %8ld",
+                          &mfc->mf6c_mcastgrp, &mfc->mf6c_origin,
                           mfc->mf6c_parent,
                           mfc->mfc_un.res.pkt,
                           mfc->mfc_un.res.bytes,
@@ -981,14 +980,15 @@ int __init ip6_mr_init(void)
                goto proc_cache_fail;
 #endif
        return 0;
-reg_notif_fail:
-       kmem_cache_destroy(mrt_cachep);
 #ifdef CONFIG_PROC_FS
-proc_vif_fail:
-       unregister_netdevice_notifier(&ip6_mr_notifier);
 proc_cache_fail:
        proc_net_remove(&init_net, "ip6_mr_vif");
+proc_vif_fail:
+       unregister_netdevice_notifier(&ip6_mr_notifier);
 #endif
+reg_notif_fail:
+       del_timer(&ipmr_expire_timer);
+       kmem_cache_destroy(mrt_cachep);
        return err;
 }