ata: libata-eh: Use ata_ncq_enabled() in ata_eh_speed_down()
authorDamien Le Moal <dlemoal@kernel.org>
Sun, 4 Jun 2023 23:16:32 +0000 (08:16 +0900)
committerDamien Le Moal <dlemoal@kernel.org>
Mon, 5 Jun 2023 12:33:47 +0000 (21:33 +0900)
In ata_eh_speed_down(), instead of hard-coding the test on the device
flags to detect if NCQ is supported and enabled, use ata_ncq_enabled().

Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: John Garry <john.g.garry@oracle.com>
drivers/ata/libata-eh.c

index c7336a0..b80e680 100644 (file)
@@ -1817,9 +1817,7 @@ static unsigned int ata_eh_speed_down(struct ata_device *dev,
        verdict = ata_eh_speed_down_verdict(dev);
 
        /* turn off NCQ? */
-       if ((verdict & ATA_EH_SPDN_NCQ_OFF) &&
-           (dev->flags & (ATA_DFLAG_PIO | ATA_DFLAG_NCQ |
-                          ATA_DFLAG_NCQ_OFF)) == ATA_DFLAG_NCQ) {
+       if ((verdict & ATA_EH_SPDN_NCQ_OFF) && ata_ncq_enabled(dev)) {
                dev->flags |= ATA_DFLAG_NCQ_OFF;
                ata_dev_warn(dev, "NCQ disabled due to excessive errors\n");
                goto done;