From: Bjorn Helgaas <helgaas@kernel.org>
To: Alexander Gruhlke <gruhlke@mailbox.org>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
Lukas Wunner <lukas@wunner.de>,
Alex Williamson <alex@shazbot.org>,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
regressions@lists.linux.dev
Subject: Re: [PATCH] PCI: Ignore Immediate Readiness on Samsung 990 EVO Plus NVMe
Date: Fri, 16 Oct 2026 12:15:56 -0500 [thread overview]
Message-ID: <20261016171556.GA1880496@bhelgaas> (raw)
In-Reply-To: <20261016102042.641801-1-gruhlke@mailbox.org>
On Fri, Oct 16, 2026 at 12:20:42PM +0200, Alexander Gruhlke wrote:
> Like the 990 PRO, the Samsung 990 EVO Plus [144d:a80d] advertises
> Immediate Readiness, and VFIO passthrough of it fails since commit
> 10baa9b4df40 ("PCI: Drop unnecessary retries when restoring BARs").
> Using a bus reset instead of FLR works around it, and the latest
> firmware, 2B2QKXG7, is still affected.
>
> Ignore Immediate Readiness on this device, too.
>
> Fixes: 10baa9b4df40 ("PCI: Drop unnecessary retries when restoring BARs")
> Link: https://bbs.archlinux.org/viewtopic.php?pid=2312085#p2312085
> Assisted-by: Claude:claude-opus-5-5
> Signed-off-by: Alexander Gruhlke <gruhlke@mailbox.org>
Squashed in, thanks!
> ---
> This adds the 990 EVO Plus to e6111fbf0c ("PCI: Ignore Immediate
> Readiness on Samsung 990 PRO NVMe") in pci/for-linus, and could also
> be folded into it. I couldn't test it on this drive; the reporter
> confirmed Status 0x0011 and that reset_method=bus fixes it.
>
> drivers/pci/quirks.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
> index 15f083b6b1..0d8c47a46c 100644
> --- a/drivers/pci/quirks.c
> +++ b/drivers/pci/quirks.c
> @@ -5623,7 +5623,7 @@ static void quirk_no_flr_snet(struct pci_dev *dev)
> }
> DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_SOLIDRUN, 0x1000, quirk_no_flr_snet);
>
> -/* Samsung 990 PRO advertises Immediate Readiness, but isn't ready after FLR */
> +/* Some Samsung SSDs advertise Immediate Readiness but aren't ready after FLR */
> static void quirk_no_imm_ready(struct pci_dev *dev)
> {
> if (!dev->imm_ready)
> @@ -5633,6 +5633,7 @@ static void quirk_no_imm_ready(struct pci_dev *dev)
> dev->imm_ready = 0;
> }
> DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SAMSUNG, 0xa80c, quirk_no_imm_ready);
> +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SAMSUNG, 0xa80d, quirk_no_imm_ready);
>
> static void quirk_no_ext_tags(struct pci_dev *pdev)
> {
> --
> 2.56.0
>
prev parent reply other threads:[~2026-10-16 17:15 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-16 10:20 [PATCH] PCI: Ignore Immediate Readiness on Samsung 990 EVO Plus NVMe Alexander Gruhlke
2026-10-16 10:25 ` sashiko-bot
2026-10-16 17:15 ` Bjorn Helgaas [this message]
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=20261016171556.GA1880496@bhelgaas \
--to=helgaas@kernel.org \
--cc=alex@shazbot.org \
--cc=bhelgaas@google.com \
--cc=gruhlke@mailbox.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=regressions@lists.linux.dev \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.