From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Hannes Reinecke <hare@kernel.org>,
Keith Busch <kbusch@kernel.org>, Christoph Hellwig <hch@lst.de>,
Sasha Levin <sashal@kernel.org>,
sagi@grimberg.me, linux-nvme@lists.infradead.org
Subject: [PATCH AUTOSEL 6.6 07/24] nvme: requeue namespace scan on missed AENs
Date: Mon, 14 Apr 2025 09:29:40 -0400 [thread overview]
Message-ID: <20250414132957.680250-7-sashal@kernel.org> (raw)
In-Reply-To: <20250414132957.680250-1-sashal@kernel.org>
From: Hannes Reinecke <hare@kernel.org>
[ Upstream commit 9546ad1a9bda7362492114f5866b95b0ac4a100e ]
Scanning for namespaces can take some time, so if the target is
reconfigured while the scan is running we may miss a Attached Namespace
Attribute Changed AEN.
Check if the NVME_AER_NOTICE_NS_CHANGED bit is set once the scan has
finished, and requeue scanning to pick up any missed change.
Signed-off-by: Hannes Reinecke <hare@kernel.org>
Reviewed-by: Keith Busch <kbusch@kernel.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/nvme/host/core.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index f00665ad0c11a..e36c6fcab1eed 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -3972,6 +3972,10 @@ static void nvme_scan_work(struct work_struct *work)
nvme_scan_ns_sequential(ctrl);
}
mutex_unlock(&ctrl->scan_lock);
+
+ /* Requeue if we have missed AENs */
+ if (test_bit(NVME_AER_NOTICE_NS_CHANGED, &ctrl->events))
+ nvme_queue_scan(ctrl);
}
/*
--
2.39.5
next prev parent reply other threads:[~2025-04-14 13:30 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-14 13:29 [PATCH AUTOSEL 6.6 01/24] KVM: s390: Don't use %pK through tracepoints Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 02/24] KVM: s390: Don't use %pK through debug printing Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 03/24] udmabuf: fix a buf size overflow issue during udmabuf creation Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 04/24] selftests: ublk: fix test_stripe_04 Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 05/24] perf/core: Fix WARN_ON(!ctx) in __free_event() for partial init Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 06/24] xen: Change xen-acpi-processor dom0 dependency Sasha Levin
2025-04-14 13:29 ` Sasha Levin [this message]
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 08/24] ACPI: EC: Set ec_no_wakeup for Lenovo Go S Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 09/24] ACPI PPTT: Fix coding mistakes in a couple of sizeof() calls Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 10/24] nvme: re-read ANA log page after ns scan completes Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 11/24] nvme: multipath: fix return value of nvme_available_path Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 12/24] objtool: Stop UNRET validation on UD2 Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 13/24] gpiolib: of: Move Atmel HSMCI quirk up out of the regulator comment Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 14/24] selftests/mincore: Allow read-ahead pages to reach the end of the file Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 15/24] x86/bugs: Use SBPB in write_ibpb() if applicable Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 16/24] x86/bugs: Don't fill RSB on VMEXIT with eIBRS+retpoline Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 17/24] x86/bugs: Don't fill RSB on context switch with eIBRS Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 18/24] nvmet-fc: take tgtport reference only once Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 19/24] nvmet-fc: put ref when assoc->del_work is already scheduled Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 20/24] net_sched: sch_sfq: use a temporary work area for validating configuration Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 21/24] cifs: Fix encoding of SMB1 Session Setup Kerberos Request in non-UNICODE mode Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 22/24] timekeeping: Add a lockdep override in tick_freeze() Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 23/24] cifs: Fix querying of WSL CHR and BLK reparse points over SMB1 Sasha Levin
2025-04-14 13:29 ` [PATCH AUTOSEL 6.6 24/24] ext4: make block validity check resistent to sb bh corruption Sasha Levin
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=20250414132957.680250-7-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=hare@kernel.org \
--cc=hch@lst.de \
--cc=kbusch@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=sagi@grimberg.me \
--cc=stable@vger.kernel.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