summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorK. Y. Srinivasan <kys@microsoft.com>2011-05-16 06:44:37 -0700
committerGreg Kroah-Hartman <gregkh@suse.de>2011-05-17 13:36:50 -0700
commit02bb4b9e4c31809e4c751d7f3808c448e7ad0244 (patch)
treebbb3fdd2236591bb50f56d740a595957610fb9de
parentb9d8e35256251e6e6a27f5f190d4ec462be7f620 (diff)
downloadlinux-3.10-02bb4b9e4c31809e4c751d7f3808c448e7ad0244.tar.gz
linux-3.10-02bb4b9e4c31809e4c751d7f3808c448e7ad0244.tar.bz2
linux-3.10-02bb4b9e4c31809e4c751d7f3808c448e7ad0244.zip
Staging: hv: vmbus_drv: Get rid of util synchronixation based on channel counting
Now that we have dealt with this issue differently, get rid of the old mechanism. Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com> Signed-off-by: Abhishek Kane <v-abkane@microsoft.com> Signed-off-by: Hank Janssen <hjanssen@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/staging/hv/channel_mgmt.c17
-rw-r--r--drivers/staging/hv/hyperv.h2
-rw-r--r--drivers/staging/hv/vmbus_drv.c1
3 files changed, 0 insertions, 20 deletions
diff --git a/drivers/staging/hv/channel_mgmt.c b/drivers/staging/hv/channel_mgmt.c
index b7343bc72b4..957d61ee4ce 100644
--- a/drivers/staging/hv/channel_mgmt.c
+++ b/drivers/staging/hv/channel_mgmt.c
@@ -327,22 +327,6 @@ void free_channel(struct vmbus_channel *channel)
}
-DECLARE_COMPLETION(hv_channel_ready);
-
-/*
- * Count initialized channels, and ensure all channels are ready when hv_vmbus
- * module loading completes.
- */
-static void count_hv_channel(void)
-{
- static int counter;
- unsigned long flags;
-
- spin_lock_irqsave(&vmbus_connection.channel_lock, flags);
- if (++counter == MAX_MSG_TYPES)
- complete(&hv_channel_ready);
- spin_unlock_irqrestore(&vmbus_connection.channel_lock, flags);
-}
/*
* vmbus_process_rescind_offer -
@@ -449,7 +433,6 @@ static void vmbus_process_offer(struct work_struct *work)
pr_info("%s\n", hv_cb_utils[cnt].log_msg);
- count_hv_channel();
}
}
}
diff --git a/drivers/staging/hv/hyperv.h b/drivers/staging/hv/hyperv.h
index 8b826a11544..3310e9bdf56 100644
--- a/drivers/staging/hv/hyperv.h
+++ b/drivers/staging/hv/hyperv.h
@@ -844,8 +844,6 @@ static inline struct hv_driver *drv_to_hv_drv(struct device_driver *d)
int vmbus_child_driver_register(struct device_driver *drv);
void vmbus_child_driver_unregister(struct device_driver *drv);
-extern struct completion hv_channel_ready;
-
/*
* Common header for Hyper-V ICs
*/
diff --git a/drivers/staging/hv/vmbus_drv.c b/drivers/staging/hv/vmbus_drv.c
index e553fc97749..ec1d38cd481 100644
--- a/drivers/staging/hv/vmbus_drv.c
+++ b/drivers/staging/hv/vmbus_drv.c
@@ -582,7 +582,6 @@ static int vmbus_bus_init(struct pci_dev *pdev)
vmbus_request_offers();
- wait_for_completion(&hv_channel_ready);
cleanup:
return ret;