Staging: hv: vmbus: Cleanup vmbus_remove()
authorK. Y. Srinivasan <kys@microsoft.com>
Tue, 13 Sep 2011 17:59:44 +0000 (10:59 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 16 Sep 2011 18:06:02 +0000 (20:06 +0200)
vmbus_remove() cannot fail; clean it up accordingly.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/hv/vmbus_drv.c

index 2fccb1f974c088b0b03ee321b21bbc82704e1303..466425a5ed3fc4dc5779bee540ed6f7a7f519583 100644 (file)
@@ -334,22 +334,14 @@ static int vmbus_probe(struct device *child_device)
  */
 static int vmbus_remove(struct device *child_device)
 {
-       int ret;
-       struct hv_driver *drv;
-
+       struct hv_driver *drv = drv_to_hv_drv(child_device->driver);
        struct hv_device *dev = device_to_hv_device(child_device);
 
-       if (child_device->driver) {
-               drv = drv_to_hv_drv(child_device->driver);
-
-               if (drv->remove) {
-                       ret = drv->remove(dev);
-               } else {
-                       pr_err("remove not set for driver %s\n",
-                               dev_name(child_device));
-                       ret = -ENODEV;
-               }
-       }
+       if (drv->remove)
+               drv->remove(dev);
+       else
+               pr_err("remove not set for driver %s\n",
+                       dev_name(child_device));
 
        return 0;
 }