]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
nvme: fixup scan failure for non-ANA multipath controllers
authorHannes Reinecke <hare@kernel.org>
Mon, 14 Apr 2025 12:05:09 +0000 (14:05 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 2 May 2025 06:02:15 +0000 (08:02 +0200)
commit 26d7fb4fd4ca1180e2fa96587dea544563b4962a upstream.

Commit 62baf70c3274 caused the ANA log page to be re-read, even on
controllers that do not support ANA.  While this should generally
harmless, some controllers hang on the unsupported log page and
never finish probing.

Fixes: 62baf70c3274 ("nvme: re-read ANA log page after ns scan completes")
Signed-off-by: Hannes Reinecke <hare@kernel.org>
Tested-by: Srikanth Aithal <sraithal@amd.com>
[hch: more detailed commit message]
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/nvme/host/core.c

index edee1ec3d4780d72d12b93ab41588b04134f6568..150de63b26b2cf3f0c014afa916173905e01ba42 100644 (file)
@@ -4297,7 +4297,7 @@ static void nvme_scan_work(struct work_struct *work)
        if (test_bit(NVME_AER_NOTICE_NS_CHANGED, &ctrl->events))
                nvme_queue_scan(ctrl);
 #ifdef CONFIG_NVME_MULTIPATH
-       else
+       else if (ctrl->ana_log_buf)
                /* Re-read the ANA log page to not miss updates */
                queue_work(nvme_wq, &ctrl->ana_work);
 #endif