nvme-core: check ctrl css before setting up zns
authorChaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Tue, 9 Mar 2021 04:58:21 +0000 (20:58 -0800)
committerChristoph Hellwig <hch@lst.de>
Thu, 11 Mar 2021 10:48:35 +0000 (11:48 +0100)
Ensure multiple Command Sets are supported before starting to setup a
ZNS namespace.

Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
[hch: move the check around a bit]
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/host/core.c

index 63bb1da..82ad5ee 100644 (file)
@@ -4096,6 +4096,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: