diff mbox

[v3,1/3] Revert "scsi: core: return BLK_STS_OK for DID_OK in __scsi_error_from_host_byte()"

Message ID 20180405173301.13186-2-bart.vanassche@wdc.com (mailing list archive)
State Accepted
Headers show

Commit Message

Bart Van Assche April 5, 2018, 5:32 p.m. UTC
The description of commit e39a97353e53 is wrong: it mentions that
commit 2a842acab109 introduced a bug in __scsi_error_from_host_byte()
although that commit did not change the behavior of that function.
Additionally, commit e39a97353e53 introduced a bug: it causes commands
that fail with hostbyte=DID_OK and driverbyte=DRIVER_SENSE to be
completed with BLK_STS_OK. Hence revert that commit.

Fixes: e39a97353e53 ("scsi: core: return BLK_STS_OK for DID_OK in __scsi_error_from_host_byte()")
Reported-by: Damien Le Moal <damien.lemoal@wdc.com>
Signed-off-by: Bart Van Assche <bart.vanassche@wdc.com>
Cc: Hannes Reinecke <hare@suse.com>
Cc: Douglas Gilbert <dgilbert@interlog.com>
Cc: Damien Le Moal <damien.lemoal@wdc.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Lee Duncan <lduncan@suse.com>
Cc: stable@vger.kernel.org
---
 drivers/scsi/scsi_lib.c | 2 --
 1 file changed, 2 deletions(-)

Comments

Christoph Hellwig April 5, 2018, 5:34 p.m. UTC | #1
Looks good:

Reviewed-by: Christoph Hellwig <hch@lst.de>
Hannes Reinecke April 6, 2018, 6:30 a.m. UTC | #2
On Thu,  5 Apr 2018 10:32:59 -0700
Bart Van Assche <bart.vanassche@wdc.com> wrote:

> The description of commit e39a97353e53 is wrong: it mentions that
> commit 2a842acab109 introduced a bug in __scsi_error_from_host_byte()
> although that commit did not change the behavior of that function.
> Additionally, commit e39a97353e53 introduced a bug: it causes commands
> that fail with hostbyte=DID_OK and driverbyte=DRIVER_SENSE to be
> completed with BLK_STS_OK. Hence revert that commit.
> 
> Fixes: e39a97353e53 ("scsi: core: return BLK_STS_OK for DID_OK in
> __scsi_error_from_host_byte()") Reported-by: Damien Le Moal
> <damien.lemoal@wdc.com> Signed-off-by: Bart Van Assche
> <bart.vanassche@wdc.com> Cc: Hannes Reinecke <hare@suse.com>
> Cc: Douglas Gilbert <dgilbert@interlog.com>
> Cc: Damien Le Moal <damien.lemoal@wdc.com>
> Cc: Christoph Hellwig <hch@lst.de>
> Cc: Lee Duncan <lduncan@suse.com>
> Cc: stable@vger.kernel.org
> ---
>  drivers/scsi/scsi_lib.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
> index 1d83f29aee74..c0e4ae733cce 100644
> --- a/drivers/scsi/scsi_lib.c
> +++ b/drivers/scsi/scsi_lib.c
> @@ -733,8 +733,6 @@ 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:

Reviewed-by: Hannes Reinecke <hare@suse.com>

Cheers,

Hannes
Sasha Levin April 10, 2018, 1:49 p.m. UTC | #3
Hi,

[This is an automated email]

This commit has been processed because it contains a "Fixes:" tag,
fixing commit: e39a97353e53 scsi: core: return BLK_STS_OK for DID_OK in __scsi_error_from_host_byte().

The bot has also determined it's probably a bug fixing patch. (score: 94.6757)

The bot has tested the following trees: v4.16.1.

v4.16.1: Build OK!

--
Thanks,
Sasha
Bart Van Assche April 10, 2018, 2:49 p.m. UTC | #4
On 04/10/18 07:49, Sasha Levin wrote:
> [This is an automated email]
> 
> This commit has been processed because it contains a "Fixes:" tag,
> fixing commit: e39a97353e53 scsi: core: return BLK_STS_OK for DID_OK in __scsi_error_from_host_byte().
> 
> The bot has also determined it's probably a bug fixing patch. (score: 94.6757)
> 
> The bot has tested the following trees: v4.16.1.
> 
> v4.16.1: Build OK!

Hello Sasha,

Please fix your bot. Your bot replied to a patch that has a "Cc: stable" 
tag.

Bart.
diff mbox

Patch

diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c
index 1d83f29aee74..c0e4ae733cce 100644
--- a/drivers/scsi/scsi_lib.c
+++ b/drivers/scsi/scsi_lib.c
@@ -733,8 +733,6 @@  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: