diff options
-rw-r--r-- | drivers/scsi/scsi_lib.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c index c6642423cc67..56977097de9f 100644 --- a/drivers/scsi/scsi_lib.c +++ b/drivers/scsi/scsi_lib.c | |||
@@ -773,8 +773,14 @@ void scsi_io_completion(struct scsi_cmnd *cmd, unsigned int good_bytes) | |||
773 | * we already took a copy of the original into rq->errors which | 773 | * we already took a copy of the original into rq->errors which |
774 | * is what gets returned to the user | 774 | * is what gets returned to the user |
775 | */ | 775 | */ |
776 | if (sense_valid && sshdr.sense_key == RECOVERED_ERROR) { | 776 | if (sense_valid && (sshdr.sense_key == RECOVERED_ERROR)) { |
777 | if (!(req->cmd_flags & REQ_QUIET)) | 777 | /* if ATA PASS-THROUGH INFORMATION AVAILABLE skip |
778 | * print since caller wants ATA registers. Only occurs on | ||
779 | * SCSI ATA PASS_THROUGH commands when CK_COND=1 | ||
780 | */ | ||
781 | if ((sshdr.asc == 0x0) && (sshdr.ascq == 0x1d)) | ||
782 | ; | ||
783 | else if (!(req->cmd_flags & REQ_QUIET)) | ||
778 | scsi_print_sense("", cmd); | 784 | scsi_print_sense("", cmd); |
779 | result = 0; | 785 | result = 0; |
780 | /* BLOCK_PC may have set error */ | 786 | /* BLOCK_PC may have set error */ |