Browse Source

[SCSI] Ensure discard failure gets treated as a target problem

The error reported up the stack for a discard failure did not clearly
indicate that the command was processed and subsequently failed by the
target device.

Return -EREMOTEIO so multipathing does not classify this condition as a
path failure.

Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Acked-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Martin K. Petersen 13 years ago
parent
commit
66a651aa7a
1 changed files with 1 additions and 0 deletions
  1. 1 0
      drivers/scsi/scsi_lib.c

+ 1 - 0
drivers/scsi/scsi_lib.c

@@ -880,6 +880,7 @@ void scsi_io_completion(struct scsi_cmnd *cmd, unsigned int good_bytes)
 				    cmd->cmnd[0] == WRITE_SAME)) {
 				    cmd->cmnd[0] == WRITE_SAME)) {
 				description = "Discard failure";
 				description = "Discard failure";
 				action = ACTION_FAIL;
 				action = ACTION_FAIL;
+				error = -EREMOTEIO;
 			} else
 			} else
 				action = ACTION_FAIL;
 				action = ACTION_FAIL;
 			break;
 			break;