RE: [PATCH] scsi: storvsc: fix SRB_STATUS_ABORTED handling

From: KY Srinivasan
Date: Mon Mar 07 2016 - 20:16:21 EST




> -----Original Message-----
> From: Vitaly Kuznetsov [mailto:vkuznets@xxxxxxxxxx]
> Sent: Monday, March 7, 2016 3:00 AM
> To: linux-scsi@xxxxxxxxxxxxxxx
> Cc: linux-kernel@xxxxxxxxxxxxxxx; devel@xxxxxxxxxxxxxxxxxxxxxx; KY
> Srinivasan <kys@xxxxxxxxxxxxx>; Haiyang Zhang
> <haiyangz@xxxxxxxxxxxxx>; Cathy Avery <cavery@xxxxxxxxxx>; James E.J.
> Bottomley <JBottomley@xxxxxxxx>; Martin K. Petersen"
> <martin.petersen@xxxxxxxxxx>
> Subject: [PATCH] scsi: storvsc: fix SRB_STATUS_ABORTED handling
>
> Commit 3209f9d780d1 ("scsi: storvsc: Fix a bug in the handling of SRB
> status flags") filtered SRB_STATUS_AUTOSENSE_VALID out effectively
> making
> the (SRB_STATUS_ABORTED | SRB_STATUS_AUTOSENSE_VALID) case a dead
> code. The
> logic from this branch (e.g. storvsc_device_scan() call) is still required,
> fix the check.
>
> Fixes: 3209f9d780d1 ("scsi: storvsc: Fix a bug in the handling of SRB status
> flags")
> Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>

Thanks Vitaly.

Acked-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
> ---
> drivers/scsi/storvsc_drv.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c
> index 292c04e..3ddcabb 100644
> --- a/drivers/scsi/storvsc_drv.c
> +++ b/drivers/scsi/storvsc_drv.c
> @@ -914,8 +914,9 @@ static void storvsc_handle_error(struct
> vmscsi_request *vm_srb,
> do_work = true;
> process_err_fn = storvsc_remove_lun;
> break;
> - case (SRB_STATUS_ABORTED | SRB_STATUS_AUTOSENSE_VALID):
> - if ((asc == 0x2a) && (ascq == 0x9)) {
> + case SRB_STATUS_ABORTED:
> + if (vm_srb->srb_status & SRB_STATUS_AUTOSENSE_VALID
> &&
> + (asc == 0x2a) && (ascq == 0x9)) {
> do_work = true;
> process_err_fn = storvsc_device_scan;
> /*
> --
> 2.5.0