|
@@ -532,8 +532,8 @@ int ata_cmd_ioctl(struct scsi_device *scsidev, void __user *arg)
|
|
|
struct scsi_sense_hdr sshdr;
|
|
|
scsi_normalize_sense(sensebuf, SCSI_SENSE_BUFFERSIZE,
|
|
|
&sshdr);
|
|
|
- if (sshdr.sense_key == 0 &&
|
|
|
- sshdr.asc == 0 && sshdr.ascq == 0)
|
|
|
+ if (sshdr.sense_key == RECOVERED_ERROR &&
|
|
|
+ sshdr.asc == 0 && sshdr.ascq == 0x1d)
|
|
|
cmd_result &= ~SAM_STAT_CHECK_CONDITION;
|
|
|
}
|
|
|
|
|
@@ -618,8 +618,8 @@ int ata_task_ioctl(struct scsi_device *scsidev, void __user *arg)
|
|
|
struct scsi_sense_hdr sshdr;
|
|
|
scsi_normalize_sense(sensebuf, SCSI_SENSE_BUFFERSIZE,
|
|
|
&sshdr);
|
|
|
- if (sshdr.sense_key == 0 &&
|
|
|
- sshdr.asc == 0 && sshdr.ascq == 0)
|
|
|
+ if (sshdr.sense_key == RECOVERED_ERROR &&
|
|
|
+ sshdr.asc == 0 && sshdr.ascq == 0x1d)
|
|
|
cmd_result &= ~SAM_STAT_CHECK_CONDITION;
|
|
|
}
|
|
|
|