[PATCH] decnet initialization race
From: Stephen Hemminger <hidden>
Date: 2004-01-15 00:40:45
Decnet exposes itself to proc and packets before it has finished initializing. This was always a race, but the notifier replay might expose it worse. diff -Nru a/net/decnet/af_decnet.c b/net/decnet/af_decnet.c
--- a/net/decnet/af_decnet.c Wed Jan 14 16:27:05 2004
+++ b/net/decnet/af_decnet.c Wed Jan 14 16:27:05 2004@@ -2363,17 +2363,16 @@ if (!dn_sk_cachep) return -ENOMEM; - sock_register(&dn_family_ops); - dev_add_pack(&dn_dix_packet_type); - register_netdevice_notifier(&dn_dev_notifier); - - proc_net_fops_create("decnet", S_IRUGO, &dn_socket_seq_fops); - dn_neigh_init(); dn_dev_init(); dn_route_init(); dn_fib_init(); + sock_register(&dn_family_ops); + dev_add_pack(&dn_dix_packet_type); + register_netdevice_notifier(&dn_dev_notifier); + + proc_net_fops_create("decnet", S_IRUGO, &dn_socket_seq_fops); dn_register_sysctl(); return 0;