From: Damien Le Moal <dlemoal@kernel.org>
To: Niklas Cassel <nks@flawful.org>
Cc: Li Nan <linan122@huawei.com>, Li Nan <linan666@huaweicloud.com>,
linux-ide@vger.kernel.org, Niklas Cassel <niklas.cassel@wdc.com>
Subject: Re: [PATCH 2/2] ata: libata-eh: do not thaw the port twice in ata_eh_reset()
Date: Thu, 14 Sep 2023 08:51:06 +0900 [thread overview]
Message-ID: <1da815e4-1335-83dd-f625-7fdcbec348eb@kernel.org> (raw)
In-Reply-To: <20230913221917.1217856-2-nks@flawful.org>
On 9/14/23 07:19, Niklas Cassel wrote:
> From: Niklas Cassel <niklas.cassel@wdc.com>
>
> commit 1e641060c4b5 ("libata: clear eh_info on reset completion") added
> a workaround that broke the retry mechanism in ATA EH.
>
> Tejun himself suggested to remove this workaround when it was identified
> to cause additional problems:
> https://lore.kernel.org/linux-ide/20110426135027.GI878@htj.dyndns.org/
>
> He and even said:
> "Hmm... it seems I wasn't thinking straight when I added that work around."
> https://lore.kernel.org/linux-ide/20110426155229.GM878@htj.dyndns.org/
>
> While removing the workaround solved the issue, however, the workaround was
> kept to avoid "spurious hotplug events during reset", and instead another
> workaround was added on top of the existing workaround in commit
> 8c56cacc724c ("libata: fix unexpectedly frozen port after ata_eh_reset()").
>
> Because these IRQs happened when the port was frozen, we know that they
> were actually a side effect of PxIS and IS.IPS(x) not being cleared before
> the COMRESET. This is now done in commit 94152042eaa9 ("ata: libahci: clear
> pending interrupt status"), so these workarounds can now be removed.
>
> Since commit 1e641060c4b5 ("libata: clear eh_info on reset completion") has
> now been reverted, the ATA EH retry mechanism is functional again, so there
> is once again no need to thaw the port more than once in ata_eh_reset().
>
> This reverts "the workaround on top of the workaround" introduced in commit
> 8c56cacc724c ("libata: fix unexpectedly frozen port after ata_eh_reset()").
>
> Signed-off-by: Niklas Cassel <niklas.cassel@wdc.com>
We need a fixes tag. Same for patch 1.
> ---
> drivers/ata/libata-eh.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c
> index 5c493b6316eb..4cf4f57e57b8 100644
> --- a/drivers/ata/libata-eh.c
> +++ b/drivers/ata/libata-eh.c
> @@ -2803,9 +2803,6 @@ int ata_eh_reset(struct ata_link *link, int classify,
> slave->eh_info.serror = 0;
> spin_unlock_irqrestore(link->ap->lock, flags);
>
> - if (ata_port_is_frozen(ap))
> - ata_eh_thaw_port(ap);
> -
> /*
> * Make sure onlineness and classification result correspond.
> * Hotplug could have happened during reset and some
--
Damien Le Moal
Western Digital Research
next prev parent reply other threads:[~2023-09-13 23:51 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-13 22:19 [PATCH 1/2] ata: libata-eh: do not clear ATA_PFLAG_EH_PENDING in ata_eh_reset() Niklas Cassel
2023-09-13 22:19 ` [PATCH 2/2] ata: libata-eh: do not thaw the port twice " Niklas Cassel
2023-09-13 23:51 ` Damien Le Moal [this message]
2023-09-14 9:06 ` Niklas Cassel
2023-09-14 10:02 ` Damien Le Moal
2023-09-14 10:11 ` Niklas Cassel
2023-09-14 10:38 ` Damien Le Moal
2023-09-15 6:30 ` Damien Le Moal
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1da815e4-1335-83dd-f625-7fdcbec348eb@kernel.org \
--to=dlemoal@kernel.org \
--cc=linan122@huawei.com \
--cc=linan666@huaweicloud.com \
--cc=linux-ide@vger.kernel.org \
--cc=niklas.cassel@wdc.com \
--cc=nks@flawful.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox