diff options
author | remi.denis-courmont@nokia <remi.denis-courmont@nokia> | 2009-01-23 04:00:27 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-01-27 06:03:34 +0100 |
commit | 76e02cf6945e6faa9f6b546dc0513512197c5966 (patch) | |
tree | e296f93f6ba6571443704871bf2d399a3bc5b98e /net/phonet/af_phonet.c | |
parent | Phonet: check destination before delivering packets locally (diff) | |
download | linux-76e02cf6945e6faa9f6b546dc0513512197c5966.tar.xz linux-76e02cf6945e6faa9f6b546dc0513512197c5966.zip |
Phonet: allow phonet_device_init() to fail, put it to __init section
Signed-off-by: RĂ©mi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/phonet/af_phonet.c')
-rw-r--r-- | net/phonet/af_phonet.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/net/phonet/af_phonet.c b/net/phonet/af_phonet.c index c7c39d92ee5e..95bc49ddb8bf 100644 --- a/net/phonet/af_phonet.c +++ b/net/phonet/af_phonet.c @@ -426,16 +426,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 +449,7 @@ err: phonet_sysctl_exit(); sock_unregister(PF_PHONET); dev_remove_pack(&phonet_packet_type); +err_sock: phonet_device_exit(); return err; } |