Loading drivers/scsi/scsi_error.c +3 −0 Original line number Diff line number Diff line Loading @@ -344,6 +344,9 @@ static int scsi_check_sense(struct scsi_cmnd *scmd) return /* soft_error */ SUCCESS; case ABORTED_COMMAND: if (sshdr.asc == 0x10) /* DIF */ return SUCCESS; return NEEDS_RETRY; case NOT_READY: case UNIT_ATTENTION: Loading drivers/scsi/scsi_lib.c +7 −2 Original line number Diff line number Diff line Loading @@ -950,10 +950,15 @@ void scsi_io_completion(struct scsi_cmnd *cmd, unsigned int good_bytes) * 6-byte command. */ scsi_requeue_command(q, cmd); return; } else { } else if (sshdr.asc == 0x10) /* DIX */ scsi_end_request(cmd, -EIO, this_count, 0); else scsi_end_request(cmd, -EIO, this_count, 1); return; case ABORTED_COMMAND: if (sshdr.asc == 0x10) { /* DIF */ scsi_end_request(cmd, -EIO, this_count, 0); return; } break; case NOT_READY: Loading Loading
drivers/scsi/scsi_error.c +3 −0 Original line number Diff line number Diff line Loading @@ -344,6 +344,9 @@ static int scsi_check_sense(struct scsi_cmnd *scmd) return /* soft_error */ SUCCESS; case ABORTED_COMMAND: if (sshdr.asc == 0x10) /* DIF */ return SUCCESS; return NEEDS_RETRY; case NOT_READY: case UNIT_ATTENTION: Loading
drivers/scsi/scsi_lib.c +7 −2 Original line number Diff line number Diff line Loading @@ -950,10 +950,15 @@ void scsi_io_completion(struct scsi_cmnd *cmd, unsigned int good_bytes) * 6-byte command. */ scsi_requeue_command(q, cmd); return; } else { } else if (sshdr.asc == 0x10) /* DIX */ scsi_end_request(cmd, -EIO, this_count, 0); else scsi_end_request(cmd, -EIO, this_count, 1); return; case ABORTED_COMMAND: if (sshdr.asc == 0x10) { /* DIF */ scsi_end_request(cmd, -EIO, this_count, 0); return; } break; case NOT_READY: Loading