sky2: revert shutdown changes
[safe/jmp/linux-2.6] / net / phonet / af_phonet.c
index c7c39d9..a662e62 100644 (file)
@@ -382,9 +382,8 @@ out:
        return NET_RX_DROP;
 }
 
-static struct packet_type phonet_packet_type = {
-       .type = __constant_htons(ETH_P_PHONET),
-       .dev = NULL,
+static struct packet_type phonet_packet_type __read_mostly = {
+       .type = cpu_to_be16(ETH_P_PHONET),
        .func = phonet_rcv,
 };
 
@@ -426,16 +425,18 @@ static int __init phonet_init(void)
 {
        int err;
 
+       err = phonet_device_init();
+       if (err)
+               return err;
+
        err = sock_register(&phonet_proto_family);
        if (err) {
                printk(KERN_ALERT
                        "phonet protocol family initialization failed\n");
-               return err;
+               goto err_sock;
        }
 
-       phonet_device_init();
        dev_add_pack(&phonet_packet_type);
-       phonet_netlink_register();
        phonet_sysctl_init();
 
        err = isi_register();
@@ -447,6 +448,7 @@ err:
        phonet_sysctl_exit();
        sock_unregister(PF_PHONET);
        dev_remove_pack(&phonet_packet_type);
+err_sock:
        phonet_device_exit();
        return err;
 }