From: K. Y. Srinivasan Date: Sat, 27 Aug 2011 18:31:06 +0000 (-0700) Subject: Staging: hv: storvsc: Prevent outgoing traffic when stor dev is being destroyed X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=582f445fde4886959deacf93b6dea6817f41ba88;p=deliverable%2Flinux.git Staging: hv: storvsc: Prevent outgoing traffic when stor dev is being destroyed Prevent outgoing traffic when stor dev is destroyed. Signed-off-by: K. Y. Srinivasan Signed-off-by: Haiyang Zhang Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/hv/hyperv_storage.h b/drivers/staging/hv/hyperv_storage.h index d93bf93eb243..1a59ca090fca 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;