Drivers:hv: Fix a bug in vmbus_driver_unregister()
authorK. Y. Srinivasan <kys@microsoft.com>
Tue, 27 Dec 2011 21:49:37 +0000 (13:49 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 12 Jan 2012 19:29:33 +0000 (11:29 -0800)
commit 8f257a142fc3868d69de3f996b95d7bdbc509560 upstream.

The function vmbus_exists() was introduced recently to deal with cases where
the vmbus driver failed to initialize and yet other Hyper-V drivers attempted
to register with the vmbus bus driver. This patch introduced a bug where
vmbus_driver_unregister() would fail to unregister the driver. This patch
fixes the problem.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Fuzhou Chen <fuzhouch@microsoft.com>
Cc: Sasha Levin <levinsasha928@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/hv/vmbus_drv.c

index d3b0b4f..d2d0a2a 100644 (file)
@@ -627,10 +627,7 @@ void vmbus_driver_unregister(struct hv_driver *hv_driver)
        pr_info("unregistering driver %s\n", hv_driver->name);
 
        if (!vmbus_exists())
-               return;
-
-       driver_unregister(&hv_driver->driver);
-
+               driver_unregister(&hv_driver->driver);
 }
 EXPORT_SYMBOL_GPL(vmbus_driver_unregister);