aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block
diff options
context:
space:
mode:
authorJan Beulich <JBeulich@suse.com>2012-04-05 11:04:52 -0400
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2012-05-11 16:11:54 -0400
commit8605067fb9b8e34aecf44ec258657c9cc009fc5a (patch)
tree5c646866a1ef241674600764158c9eb340a5d543 /drivers/block
parente77c78c02290c27925f67cd35b497e99ee0d6fe1 (diff)
xen-blkfront: module exit handling adjustments
The blkdev major must be released upon exit, or else the module can't attach to devices using the same majors upon being loaded again. Also avoid leaking the minor tracking bitmap. Signed-off-by: Jan Beulich <jbeulich@suse.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'drivers/block')
-rw-r--r--drivers/block/xen-blkfront.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/block/xen-blkfront.c b/drivers/block/xen-blkfront.c
index 4f2b46052976..60eed4bdd2e4 100644
--- a/drivers/block/xen-blkfront.c
+++ b/drivers/block/xen-blkfront.c
@@ -1500,7 +1500,9 @@ module_init(xlblk_init);
1500 1500
1501static void __exit xlblk_exit(void) 1501static void __exit xlblk_exit(void)
1502{ 1502{
1503 return xenbus_unregister_driver(&blkfront_driver); 1503 xenbus_unregister_driver(&blkfront_driver);
1504 unregister_blkdev(XENVBD_MAJOR, DEV_NAME);
1505 kfree(minors);
1504} 1506}
1505module_exit(xlblk_exit); 1507module_exit(xlblk_exit);
1506 1508