summaryrefslogtreecommitdiffstats
path: root/drivers/ata/libata-eh.c
diff options
context:
space:
mode:
authorHannes Reinecke2016-04-04 11:43:59 +0200
committerTejun Heo2016-04-04 18:07:41 +0200
commit492bf62107347aca764070dbc9d412da6bda73d1 (patch)
tree6e91e0241f495f04789766492cd254b6f804afb7 /drivers/ata/libata-eh.c
parentlibata-scsi: use scsi_set_sense_information() (diff)
downloadkernel-qcow2-linux-492bf62107347aca764070dbc9d412da6bda73d1.tar.gz
kernel-qcow2-linux-492bf62107347aca764070dbc9d412da6bda73d1.tar.xz
kernel-qcow2-linux-492bf62107347aca764070dbc9d412da6bda73d1.zip
libata-eh: Set 'information' field for autosense
If NCQ autosense or the sense data reporting feature is enabled the LBA of the offending command should be stored in the sense data 'information' field. tj: s/(u64)-1/U64_MAX/ Signed-off-by: Hannes Reinecke <hare@suse.de> Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'drivers/ata/libata-eh.c')
-rw-r--r--drivers/ata/libata-eh.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c
index 170e891e79af..e4e0e2e80c20 100644
--- a/drivers/ata/libata-eh.c
+++ b/drivers/ata/libata-eh.c
@@ -1856,6 +1856,8 @@ void ata_eh_analyze_ncq_error(struct ata_link *link)
asc = (qc->result_tf.auxiliary >> 8) & 0xff;
ascq = qc->result_tf.auxiliary & 0xff;
ata_scsi_set_sense(qc->scsicmd, sense_key, asc, ascq);
+ ata_scsi_set_sense_information(dev, qc->scsicmd,
+ &qc->result_tf);
qc->flags |= ATA_QCFLAG_SENSE_VALID;
}