[NETNS]: Consolidate kernel netlink socket destruction.
Create a specific helper for netlink kernel socket disposal. This just let the code look better and provides a ground for proper disposal inside a namespace. Signed-off-by: Denis V. Lunev <den@openvz.org> Tested-by: Alexey Dobriyan <adobriyan@openvz.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
4f84d82f7a
commit
b7c6ba6eb1
@ -420,8 +420,7 @@ static int __devinit cn_init(void)
|
||||
|
||||
dev->cbdev = cn_queue_alloc_dev("cqueue", dev->nls);
|
||||
if (!dev->cbdev) {
|
||||
if (dev->nls->sk_socket)
|
||||
sock_release(dev->nls->sk_socket);
|
||||
netlink_kernel_release(dev->nls);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@ -431,8 +430,7 @@ static int __devinit cn_init(void)
|
||||
if (err) {
|
||||
cn_already_initialized = 0;
|
||||
cn_queue_free_dev(dev->cbdev);
|
||||
if (dev->nls->sk_socket)
|
||||
sock_release(dev->nls->sk_socket);
|
||||
netlink_kernel_release(dev->nls);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@ -447,8 +445,7 @@ static void __devexit cn_fini(void)
|
||||
|
||||
cn_del_callback(&dev->id);
|
||||
cn_queue_free_dev(dev->cbdev);
|
||||
if (dev->nls->sk_socket)
|
||||
sock_release(dev->nls->sk_socket);
|
||||
netlink_kernel_release(dev->nls);
|
||||
}
|
||||
|
||||
subsys_initcall(cn_init);
|
||||
|
Reference in New Issue
Block a user