From: sashiko-bot@kernel.org
To: "Haowen Bai" <calvin.bai@ugreen.com>
Cc: linux-pci@vger.kernel.org
Subject: Re: [PATCH] nvme-pci: skip FLR after a failed controller reset
Date: Mon, 21 Sep 2026 14:19:53 +0000 [thread overview]
Message-ID: <20260921141953.ADD2D1F000FF@smtp.kernel.org> (raw)
In-Reply-To: <20260921140732.2942207-1-calvin.bai@ugreen.com>
> nvme_disable_ctrl() already waits up to CAP.TO for CSTS.RDY to clear.
> If that times out, nvme_pci_configure_admin_queue() currently issues a
> PCIe Function Level Reset and retries.
>
> FLR is performed with PCI config cycles. Those cycles take
> pci_config_lock, a raw spinlock, and wait for the endpoint to complete
> the transaction. A wedged NVMe function can stall that completion.
> Other CPUs then spin in pci_conf1_read() -- including ACPI PCI config
> from an unrelated device -- and the NMI watchdog reports a hard lockup.
>
> This was observed on an x86_64 UGREEN DXP4800 (kernel 6.18.15) with two
> ZHITAI Ti600 NVMe devices used as bcache. Each disk independently:
>
> nvme: I/O timeout, reset controller
> nvme: Device not ready; aborting reset, CSTS=0x1
> [ ... ]
> Cc: Keith Busch <kbusch@kernel.org>
> Cc: Jens Axboe <axboe@kernel.dk>
> Cc: Christoph Hellwig <hch@lst.de>
> Cc: Sagi Grimberg <sagi@grimberg.me>
> Signed-off-by: Haowen Bai <calvin.bai@ugreen.com>
Sashiko has reviewed this patch and found no issues. It looks great!
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260921140732.2942207-1-calvin.bai@ugreen.com?part=1
next prev parent reply other threads:[~2026-09-21 14:19 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-21 14:07 [PATCH] nvme-pci: skip FLR after a failed controller reset Haowen Bai
2026-09-21 14:19 ` sashiko-bot [this message]
2026-09-21 14:29 ` Keith Busch
2026-09-21 14:52 ` Haowen Bai
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=20260921141953.ADD2D1F000FF@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=calvin.bai@ugreen.com \
--cc=linux-pci@vger.kernel.org \
--cc=sashiko-reviews@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.