diff options
author | K. Y. Srinivasan <kys@microsoft.com> | 2011-05-16 06:44:37 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-05-17 13:36:50 -0700 |
commit | 02bb4b9e4c31809e4c751d7f3808c448e7ad0244 (patch) | |
tree | bbb3fdd2236591bb50f56d740a595957610fb9de | |
parent | b9d8e35256251e6e6a27f5f190d4ec462be7f620 (diff) | |
download | linux-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.c | 17 | ||||
-rw-r--r-- | drivers/staging/hv/hyperv.h | 2 | ||||
-rw-r--r-- | drivers/staging/hv/vmbus_drv.c | 1 |
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; |