aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/staging/hv/vmbus_drv.c17
1 files changed, 3 insertions, 14 deletions
diff --git a/drivers/staging/hv/vmbus_drv.c b/drivers/staging/hv/vmbus_drv.c
index 8e8a408d6877..11c69c576e3e 100644
--- a/drivers/staging/hv/vmbus_drv.c
+++ b/drivers/staging/hv/vmbus_drv.c
@@ -172,18 +172,6 @@ static int vmbus_dev_add(struct hv_device *dev, void *info)
172 return ret; 172 return ret;
173} 173}
174 174
175/*
176 * vmbus_dev_rm - Callback when the root bus device is removed
177 */
178static int vmbus_dev_rm(struct hv_device *dev)
179{
180 int ret = 0;
181
182 vmbus_release_unattached_channels();
183 vmbus_disconnect();
184 on_each_cpu(hv_synic_cleanup, NULL, 1);
185 return ret;
186}
187 175
188/* 176/*
189 * vmbus_cleanup - Perform any cleanup when the driver is removed 177 * vmbus_cleanup - Perform any cleanup when the driver is removed
@@ -568,8 +556,9 @@ static void vmbus_bus_exit(void)
568 556
569 struct hv_device *dev_ctx = &vmbus_drv.device_ctx; 557 struct hv_device *dev_ctx = &vmbus_drv.device_ctx;
570 558
571 /* Remove the root device */ 559 vmbus_release_unattached_channels();
572 vmbus_dev_rm(dev_ctx); 560 vmbus_disconnect();
561 on_each_cpu(hv_synic_cleanup, NULL, 1);
573 562
574 vmbus_cleanup(); 563 vmbus_cleanup();
575 564