[PATCH 07/46] Staging: hv: storvsc: Prevent outgoing traffic when stor dev is being destroyed

K. Y. Srinivasan
2011-08-27T18:11:50Z

Prevent outgoing traffic when stor dev is destroyed.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
---
drivers/staging/hv/hyperv_storage.h | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/drivers/staging/hv/hyperv_storage.h b/drivers/staging/hv/hyperv_storage.h
index d93bf93..1a59ca0 100644
--- a/drivers/staging/hv/hyperv_storage.h
+++ b/drivers/staging/hv/hyperv_storage.h
@@ -294,7 +294,8 @@ static inline struct storvsc_device *get_out_stor_device(
struct storvsc_device *stor_device;

stor_device = (struct storvsc_device *)device->ext;
- if (stor_device && atomic_read(&stor_device->ref_count) > 1)
+ if (stor_device && (atomic_read(&stor_device->ref_count) > 1) &&
+ !stor_device->destroy)
atomic_inc(&stor_device->ref_count);
else
stor_device = NULL;
--
1.7.4.1