diff options
author | Niklas Cassel <cassel@kernel.org> | 2025-04-15 09:30:15 +0200 |
---|---|---|
committer | Damien Le Moal <dlemoal@kernel.org> | 2025-04-16 17:33:17 +0900 |
commit | 399eab7f92fb73ffe621294a2d6bec8fc9f3b36b (patch) | |
tree | 87fdd7b9d9ab1961134c602f3424b8bc6120a912 /tools/lib/traceevent/plugins/plugin_function.c | |
parent | 8d46a27085039158eb5e253ab8a35a0e33b5e864 (diff) | |
download | linux-399eab7f92fb73ffe621294a2d6bec8fc9f3b36b.tar.gz linux-399eab7f92fb73ffe621294a2d6bec8fc9f3b36b.tar.bz2 linux-399eab7f92fb73ffe621294a2d6bec8fc9f3b36b.zip |
ata: libata-sata: Save all fields from sense data descriptor
When filling the taskfile result for a successful NCQ command, we use
the SDB FIS from the FIS Receive Area, see e.g. ahci_qc_ncq_fill_rtf().
However, the SDB FIS only has fields STATUS and ERROR.
For a successful NCQ command that has sense data, we will have a
successful sense data descriptor, in the Sense Data for Successful NCQ
Commands log.
Since we have access to additional taskfile result fields, fill in these
additional fields in qc->result_tf.
This matches how for failing/aborted NCQ commands, we will use e.g.
ahci_qc_fill_rtf() to fill in some fields, but then for the command that
actually caused the NCQ error, we will use ata_eh_read_log_10h(), which
provides additional fields, saving additional fields/overriding the
qc->result_tf that was fetched using ahci_qc_fill_rtf().
Fixes: 18bd7718b5c4 ("scsi: ata: libata: Handle completion of CDL commands using policy 0xD")
Signed-off-by: Niklas Cassel <cassel@kernel.org>
Reviewed-by: Igor Pylypiv <ipylypiv@google.com>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Diffstat (limited to 'tools/lib/traceevent/plugins/plugin_function.c')
0 files changed, 0 insertions, 0 deletions