summaryrefslogtreecommitdiffstats
path: root/drivers/hv/connection.c
diff options
context:
space:
mode:
authorK. Y. Srinivasan2015-04-23 06:31:32 +0200
committerGreg Kroah-Hartman2015-05-24 21:18:24 +0200
commit2db84eff127e3f4b3635edc589cd6a56db8755a3 (patch)
tree2890e6494ebeb52bfdbaa182a9e58d3f2734d57e /drivers/hv/connection.c
parentdrivers: hv: vmbus: Get rid of some unused definitions (diff)
downloadkernel-qcow2-linux-2db84eff127e3f4b3635edc589cd6a56db8755a3.tar.gz
kernel-qcow2-linux-2db84eff127e3f4b3635edc589cd6a56db8755a3.tar.xz
kernel-qcow2-linux-2db84eff127e3f4b3635edc589cd6a56db8755a3.zip
Drivers: hv: vmbus: Implement the protocol for tearing down vmbus state
Implement the protocol for tearing down the monitor state established with the host. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Tested-by: Vitaly Kuznetsov <vkuznets@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/hv/connection.c')
-rw-r--r--drivers/hv/connection.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/hv/connection.c b/drivers/hv/connection.c
index b27220a425f4..acd50e9d666a 100644
--- a/drivers/hv/connection.c
+++ b/drivers/hv/connection.c
@@ -227,6 +227,11 @@ cleanup:
void vmbus_disconnect(void)
{
+ /*
+ * First send the unload request to the host.
+ */
+ vmbus_initiate_unload();
+
if (vmbus_connection.work_queue) {
drain_workqueue(vmbus_connection.work_queue);
destroy_workqueue(vmbus_connection.work_queue);