Browse Source

[ROSE]: do proto_unregister() on exit paths

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Alexey Dobriyan 19 years ago
parent
commit
c3c4ed652e
1 changed files with 2 additions and 0 deletions
  1. 2 0
      net/rose/af_rose.c

+ 2 - 0
net/rose/af_rose.c

@@ -1481,12 +1481,14 @@ static int __init rose_proto_init(void)
 
 	if (rose_ndevs > 0x7FFFFFFF/sizeof(struct net_device *)) {
 		printk(KERN_ERR "ROSE: rose_proto_init - rose_ndevs parameter to large\n");
+		proto_unregister(&rose_proto);
 		return -1;
 	}
 
 	dev_rose = kmalloc(rose_ndevs * sizeof(struct net_device *), GFP_KERNEL);
 	if (dev_rose == NULL) {
 		printk(KERN_ERR "ROSE: rose_proto_init - unable to allocate device structure\n");
+		proto_unregister(&rose_proto);
 		return -1;
 	}