Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

scsi: storvsc: Drop DID_TARGET_FAILURE use

DID_TARGET_FAILURE is internal to the SCSI layer. Drivers must not use it
because:

1. It's not propagated upwards, so SG IO/passthrough users will not see an
error and think a command was successful.

2. There is no handling for it in scsi_decide_disposition() so it results
in the SCSI error handling running.

It looks like the driver wanted a hard failure so swap it with
DID_BAD_TARGET.

Link: https://lore.kernel.org/r/20220812010027.8251-3-michael.christie@oracle.com
Signed-off-by: Mike Christie <michael.christie@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

authored by

Mike Christie and committed by
Martin K. Petersen
a6cb5462 00903af9

+1 -1
+1 -1
drivers/scsi/storvsc_drv.c
··· 1029 1029 */ 1030 1030 wrk = kmalloc(sizeof(struct storvsc_scan_work), GFP_ATOMIC); 1031 1031 if (!wrk) { 1032 - set_host_byte(scmnd, DID_TARGET_FAILURE); 1032 + set_host_byte(scmnd, DID_BAD_TARGET); 1033 1033 return; 1034 1034 } 1035 1035