[PATCH] ata: libata-eh: drop redundant ata_tag_valid() check in ata_eh_maybe_retry_flush()

From: shao.mingyin

Date: Tue Oct 20 2026 - 04:05:00 EST


From: Shao Mingyin <shao.mingyin@xxxxxxxxxx>

ata_eh_maybe_retry_flush() validates link->active_tag with ata_tag_valid()
before calling __ata_qc_from_tag(), which itself evaluates ata_tag_valid()
on the same tag and returns NULL when the tag is invalid.

Since the NULL return value of __ata_qc_from_tag() is the single source of
truth for tag validity, drop the redundant explicit ata_tag_valid() check
and simply return early when qc is NULL. This mirrors the style already
used in ata_eh_get_non_ncq_success_sense().

No functional change.

Signed-off-by: Shao Mingyin <shao.mingyin@xxxxxxxxxx>
Signed-off-by: Yang Tao <yang.tao172@xxxxxxxxxx>
---
drivers/ata/libata-eh.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c
index c93c24b22d9c..bf3313175a97 100644
--- a/drivers/ata/libata-eh.c
+++ b/drivers/ata/libata-eh.c
@@ -3571,11 +3571,9 @@ static int ata_eh_maybe_retry_flush(struct ata_device *dev)
unsigned int err_mask;
int rc = 0;

- /* did flush fail for this device? */
- if (!ata_tag_valid(link->active_tag))
- return 0;
-
qc = __ata_qc_from_tag(ap, link->active_tag);
+ if (!qc)
+ return 0;
if (qc->dev != dev || (qc->tf.command != ATA_CMD_FLUSH_EXT &&
qc->tf.command != ATA_CMD_FLUSH))
return 0;
--
2.27.0