On Mon, Oct 17, 2022 at 05:20:28PM +0800, John Garry wrote: > Similar to how AHCI handles NCQ errors in ahci_error_intr() -> > ata_port_abort() -> ata_do_link_abort(), add an NCQ error handler for LLDDs > to call to initiate a link abort. > > This will mark all outstanding QCs as failed and kick-off EH. > > Note: > A "force reset" argument is added for drivers which require the ATA error > handling to always reset the device. > > A driver may require this feature for when SATA device per-SCSI cmnd > resources are only released during reset for ATA EH. As such, we need an > option to force reset to be done, regardless of what any EH autopsy > decides. > > The SATA device FIS fields are set to indicate a device error from > ata_eh_analyze_tf(). > > Suggested-by: Damien Le Moal <damien.lemoal@xxxxxxxxxxxxxxxxxx> > Suggested-by: Tested-by: Niklas Cassel <niklas.cassel@xxxxxxx> Nit: is this perhaps a typo? (Since there is another Tested-by tag later in the list.) Checkpatch doesn't complain, so I guess no biggie, but might be worth fixing if you decide to roll a v7. Kind regards, Niklas > Signed-off-by: John Garry <john.garry@xxxxxxxxxx> > Tested-by: Damien Le Moal <damien.lemoal@xxxxxxxxxxxxxxxxxx> > Reviewed-by: Jason Yan <yanaijie@xxxxxxxxxx> > Tested-by: Niklas Cassel <niklas.cassel@xxxxxxx> # pm80xx