Re: [PATCH] ibmvscsis: Fix srp_transfer_data fail return code

From: Bart Van Assche
Date: Tue Jan 10 2017 - 12:36:25 EST


On Mon, 2017-01-09 at 10:21 -0600, Bryant G. Ly wrote:
> From: "Bryant G. Ly" <bgly@xxxxxxxxxx>
>
> If srp_transfer_data fails within ibmvscsis_write_pending, then
> the most likely scenario is that the client timed out the op and
> removed the TCE mapping. Thus it will loop forever retrying the
> op that is pretty much guaranteed to fail forever. A better return
> code would be EIO instead of EAGAIN.
>
> Cc: stable@xxxxxxxxxxxxxxx
> Reported-by: Steven Royer <seroyer@xxxxxxxxxxxxxxxxxx>
> Tested-by: Steven Royer <seroyer@xxxxxxxxxxxxxxxxxx>
> Signed-off-by: Bryant G. Ly <bgly@xxxxxxxxxx>
> ---
>  drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c b/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c
> index 3d3768a..8fb5c54 100644
> --- a/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c
> +++ b/drivers/scsi/ibmvscsi_tgt/ibmvscsi_tgt.c
> @@ -3585,7 +3585,7 @@ static int ibmvscsis_write_pending(struct se_cmd *se_cmd)
>          1, 1);
>   if (rc) {
>   pr_err("srp_transfer_data() failed: %d\n", rc);
> - return -EAGAIN;
> + return -EIO;
>   }
>   /*
>    * We now tell TCM to add this WRITE CDB directly into the TCM storage

Using the "Cc: stable@xxxxxxxxxxxxxxx" tag is fine but please do not
add stable@xxxxxxxxxxxxxxx to the CC-list of the e-mail header. Anyway,
thanks for the patch. It has been applied on my for-v4.10 branch.

Bart.