[PATCH 5.10 049/221] nvme-core: check ctrl css before setting up zns

From: Greg Kroah-Hartman
Date: Mon Mar 29 2021 - 04:29:37 EST


From: Chaitanya Kulkarni <chaitanya.kulkarni@xxxxxxx>

[ Upstream commit 0ec84df4953bd42c6583a555773f1d4996a061eb ]

Ensure multiple Command Sets are supported before starting to setup a
ZNS namespace.

Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@xxxxxxx>
[hch: move the check around a bit]
Signed-off-by: Christoph Hellwig <hch@xxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
drivers/nvme/host/core.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index 30e834d84f36..140f19cbe73a 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -4019,6 +4019,12 @@ static void nvme_validate_or_alloc_ns(struct nvme_ctrl *ctrl, unsigned nsid)
nsid);
break;
}
+ if (!nvme_multi_css(ctrl)) {
+ dev_warn(ctrl->device,
+ "command set not reported for nsid: %d\n",
+ ns->head->ns_id);
+ break;
+ }
nvme_alloc_ns(ctrl, nsid, &ids);
break;
default:
--
2.30.1