diff mbox

scsi: return BLK_STS_OK for DID_OK in __scsi_error_from_host_byte()

Message ID 20180226073959.63160-1-hare@suse.de (mailing list archive)
State Accepted
Headers show

Commit Message

Hannes Reinecke Feb. 26, 2018, 7:39 a.m. UTC
When converting __scsi_error_from_host_byte() to BLK_STS error codes
the case DID_OK was forgotten, resulting in it always returning
an error.

Fixes: 2a842acab109 ("block: introduce new block status code type")
Cc: Doug Gilbert <dgilbert@interlog.com>
Signed-off-by: Hannes Reinecke <hare@suse.com>
---
 drivers/scsi/scsi_lib.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Douglas Gilbert Feb. 26, 2018, 3:39 p.m. UTC | #1
On 2018-02-26 02:39 AM, Hannes Reinecke wrote:
> When converting __scsi_error_from_host_byte() to BLK_STS error codes
> the case DID_OK was forgotten, resulting in it always returning
> an error.
> 
> Fixes: 2a842acab109 ("block: introduce new block status code type")
> Cc: Doug Gilbert <dgilbert@interlog.com>
> Signed-off-by: Hannes Reinecke <hare@suse.com>

Reviewed-by: Douglas Gilbert <dgilbert@interlog.com>

> ---
>   drivers/scsi/scsi_lib.c | 2 ++
>   1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
> index aea5a1ae318b..11d63136f0bd 100644
> --- a/drivers/scsi/scsi_lib.c
> +++ b/drivers/scsi/scsi_lib.c
> @@ -720,6 +720,8 @@ static blk_status_t __scsi_error_from_host_byte(struct scsi_cmnd *cmd,
>   		int result)
>   {
>   	switch (host_byte(result)) {
> +	case DID_OK:
> +		return BLK_STS_OK;
>   	case DID_TRANSPORT_FAILFAST:
>   		return BLK_STS_TRANSPORT;
>   	case DID_TARGET_FAILURE:
>
Martin K. Petersen Feb. 28, 2018, 2:17 a.m. UTC | #2
Hannes,

> When converting __scsi_error_from_host_byte() to BLK_STS error codes
> the case DID_OK was forgotten, resulting in it always returning
> an error.

Applied to 4.17/scsi-queue. Thank you!
diff mbox

Patch

diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index aea5a1ae318b..11d63136f0bd 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -720,6 +720,8 @@  static blk_status_t __scsi_error_from_host_byte(struct scsi_cmnd *cmd,
 		int result)
 {
 	switch (host_byte(result)) {
+	case DID_OK:
+		return BLK_STS_OK;
 	case DID_TRANSPORT_FAILFAST:
 		return BLK_STS_TRANSPORT;
 	case DID_TARGET_FAILURE: