[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <05875e07-b908-425a-ba6f-5e060e03241e@gmail.com>
Date: Tue, 10 Feb 2026 14:09:27 -0800
From: James Smart <jsmart833426@...il.com>
To: Mohamed Khalfella <mkhalfella@...estorage.com>,
Justin Tee <justin.tee@...adcom.com>,
Naresh Gottumukkala <nareshgottumukkala83@...il.com>,
Paul Ely <paul.ely@...adcom.com>, Chaitanya Kulkarni <kch@...dia.com>,
Christoph Hellwig <hch@....de>, Jens Axboe <axboe@...nel.dk>,
Keith Busch <kbusch@...nel.org>, Sagi Grimberg <sagi@...mberg.me>
Cc: Aaron Dailey <adailey@...estorage.com>,
Randy Jennings <randyj@...estorage.com>,
Dhaval Giani <dgiani@...estorage.com>, Hannes Reinecke <hare@...e.de>,
linux-nvme@...ts.infradead.org, linux-kernel@...r.kernel.org,
jsmart833426@...il.com
Subject: Re: [PATCH v2 08/14] nvme: Implement cross-controller reset recovery
On 1/30/2026 2:34 PM, Mohamed Khalfella wrote:
...
> +unsigned long nvme_fence_ctrl(struct nvme_ctrl *ictrl)
> +{
> + unsigned long deadline, now, timeout;
> + struct nvme_ctrl *sctrl;
> + u32 min_cntlid = 0;
> + int ret;
> +
> + timeout = nvme_fence_timeout_ms(ictrl);
> + dev_info(ictrl->device, "attempting CCR, timeout %lums\n", timeout);
> +
> + now = jiffies;
> + deadline = now + msecs_to_jiffies(timeout);
> + while (time_before(now, deadline)) {
Q: don't we have something to identify the controller's subsystem
supports CCR before we starting selecting controllers and sending CCR ?
I would think on older devices that don't support it we should be
skipping this loop. The loop could delay the Time-Based delay without
any CCR.
-- james
Powered by blists - more mailing lists