Re: [PATCH v3 2/3] ata: libata-eh: Simplify reset operation management

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 7/11/25 10:35, Damien Le Moal wrote:
Introduce struct ata_reset_operations do aggregate in a single structure
the definitions of the 4 reset methods (prereset, softreset, hardreset
and postreset) for a port. This new structure is used in struct ata_port
to define the reset methods for a regular port (reset field) and for a
port-multiplier port (pmp_reset field). A pointer to either of these
fields replaces the 4 reset method arguments passed to ata_eh_recover()
and ata_eh_reset().

ata_std_error_handler() is modified to use the ATA_LFLAG_NO_HRST link
flag to prevents the use of built-in hardreset methods for ports without
a valid scr. This flag is checked in ata_eh_reset() and if set, the
hardreset method is ignored.

The definition of the reset methods for all drivers is changed to use
the reset and pmp_reset fields in struct ata_port_operations.

A large number of files is modifed, but no functional changes are
introduced.

Signed-off-by: Damien Le Moal <dlemoal@xxxxxxxxxx>
---
  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                 | 49 ++++++++++++-------------
  drivers/ata/libata-pmp.c                | 26 +++++--------
  drivers/ata/libata-sata.c               |  2 +-
  drivers/ata/libata-sff.c                |  8 ++--
  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 |  3 +-
  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                  | 17 +++++----
  58 files changed, 143 insertions(+), 155 deletions(-)

You may want to run a spell-checker for the description.
Otherwise:

Reviewed-by: Hannes Reinecke <hare@xxxxxxx>

Cheers,

Hannes
--
Dr. Hannes Reinecke                  Kernel Storage Architect
hare@xxxxxxx                                +49 911 74053 688
SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg
HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich




[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux