Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fd1b494d authored by Luben Tuikov's avatar Luben Tuikov Committed by James Bottomley
Browse files

[SCSI] Fix sense key MEDIUM ERROR processing and retry



1) If the device reports an uncorrectable MEDIUM ERROR, such
as SK MEDIUM ERROR, ASC UNRECOVERED READ ERR, AMNF DATA
FIELD or RECORD NOT FOUND, then: In scsi_check_sense()
return SUCCESS so as to not retry -- the error is
uncorrectable -- this speeds up total processing time.

Signed-off-by: default avatarLuben Tuikov <ltuikov@yahoo.com>

Extracted the MEDIUM ERROR piece and
Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
parent 7b3b9211
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -359,6 +359,11 @@ static int scsi_check_sense(struct scsi_cmnd *scmd)
		return SUCCESS;

	case MEDIUM_ERROR:
		if (sshdr.asc == 0x11 || /* UNRECOVERED READ ERR */
		    sshdr.asc == 0x13 || /* AMNF DATA FIELD */
		    sshdr.asc == 0x14) { /* RECORD NOT FOUND */
			return SUCCESS;
		}
		return NEEDS_RETRY;

	case HARDWARE_ERROR: