On 4/15/25 4:30 PM, Niklas Cassel wrote: > 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@xxxxxxxxxx> > Reviewed-by: Igor Pylypiv <ipylypiv@xxxxxxxxxx> > Reviewed-by: Hannes Reinecke <hare@xxxxxxx> Applied to for-6.15-fixes. Thanks ! -- Damien Le Moal Western Digital Research