[PATCH v5 0/3] libata-eh cleanups

Damien Le Moal
2025-07-16T02:05:34Z

3 patches to cleanup libata-eh code and its documentation.

Changes in patch 2 propagate to libsas.

No functional changes are introduced.

Changes from v4:
- Added reivew tags
- Fixedup patch 2 pata_parport modifications to keep the hardreset
operation initialization to NULL

Changes from v3:
- Move the use of the ATA_LFLAG_NO_HRST link flag in
ata_std_error_handler() from patch 2 to patch 1.
- Reduce number of changes in ata_eh_reset() in patch 2 using local
variables.
- Correct typos in patch 2 commit message and added suggested-by tag
- Added review tag in patch 3

Changes from v2:
- Removed former patch 1 "Make ata_eh_followup_srst_needed() return a
bool" (sent it as a standalone patch)
- Addressed Niklas'comment on patch 1
- Added patch 2
- Improved the description of reset methods in patch 3

Changes from v1:
- Correct compilation error when CONFIG_ATA_SFF is not enabled by
defining a stub for sata_sff_hardreset().

Damien Le Moal (3):
ata: libata-eh: Remove ata_do_eh()
ata: libata-eh: Simplify reset operation management
Documentation: driver-api: Update libata error handler information

Documentation/driver-api/libata.rst | 25 +++++----
drivers/ata/ahci.c | 6 +--
drivers/ata/ahci_da850.c | 6 +--
drivers/ata/ahci_dm816.c | 2 +-
drivers/ata/ahci_imx.c | 13 ++---
drivers/ata/ahci_qoriq.c | 4 +-
drivers/ata/ahci_xgene.c | 8 +--
drivers/ata/ata_piix.c | 4 +-
drivers/ata/libahci.c | 10 ++--
drivers/ata/libata-core.c | 4 +-
drivers/ata/libata-eh.c | 67 ++++++++-----------------
drivers/ata/libata-pmp.c | 26 ++++------
drivers/ata/libata-sata.c | 2 +-
drivers/ata/libata-sff.c | 18 ++-----
drivers/ata/libata.h | 8 ++-
drivers/ata/pata_acpi.c | 2 +-
drivers/ata/pata_ali.c | 10 ++--
drivers/ata/pata_amd.c | 4 +-
drivers/ata/pata_artop.c | 4 +-
drivers/ata/pata_atiixp.c | 2 +-
drivers/ata/pata_efar.c | 2 +-
drivers/ata/pata_ep93xx.c | 4 +-
drivers/ata/pata_hpt366.c | 2 +-
drivers/ata/pata_hpt37x.c | 4 +-
drivers/ata/pata_hpt3x2n.c | 2 +-
drivers/ata/pata_icside.c | 2 +-
drivers/ata/pata_it8213.c | 2 +-
drivers/ata/pata_jmicron.c | 2 +-
drivers/ata/pata_marvell.c | 2 +-
drivers/ata/pata_mpiix.c | 2 +-
drivers/ata/pata_ns87410.c | 2 +-
drivers/ata/pata_octeon_cf.c | 2 +-
drivers/ata/pata_oldpiix.c | 2 +-
drivers/ata/pata_opti.c | 2 +-
drivers/ata/pata_optidma.c | 2 +-
drivers/ata/pata_parport/pata_parport.c | 4 +-
drivers/ata/pata_pdc2027x.c | 2 +-
drivers/ata/pata_rdc.c | 2 +-
drivers/ata/pata_sis.c | 2 +-
drivers/ata/pata_sl82c105.c | 2 +-
drivers/ata/pata_triflex.c | 2 +-
drivers/ata/pata_via.c | 2 +-
drivers/ata/pdc_adma.c | 2 +-
drivers/ata/sata_dwc_460ex.c | 2 +-
drivers/ata/sata_fsl.c | 6 +--
drivers/ata/sata_highbank.c | 2 +-
drivers/ata/sata_inic162x.c | 2 +-
drivers/ata/sata_mv.c | 10 ++--
drivers/ata/sata_nv.c | 2 +-
drivers/ata/sata_promise.c | 4 +-
drivers/ata/sata_qstor.c | 4 +-
drivers/ata/sata_rcar.c | 2 +-
drivers/ata/sata_sil24.c | 8 +--
drivers/ata/sata_svw.c | 4 +-
drivers/ata/sata_sx4.c | 2 +-
drivers/ata/sata_uli.c | 2 +-
drivers/ata/sata_via.c | 4 +-
drivers/scsi/libsas/sas_ata.c | 4 +-
include/linux/libata.h | 26 ++++++----
59 files changed, 166 insertions(+), 195 deletions(-)

--
2.50.1