Re: [PATCH] nvmet: use U32_MAX value to report NN
From: Chaitanya Kulkarni <hidden>
Date: 2021-06-14 21:23:26
On 6/14/21 14:19, Keith Busch wrote:
On Mon, Jun 14, 2021 at 12:47:12PM -0700, Chaitanya Kulkarni wrote:quoted
@@ -393,7 +393,7 @@ static void nvmet_execute_identify_ctrl(struct nvmet_req *req) /* no enforcement soft-limit for maxcmd - pick arbitrary high value */ id->maxcmd = cpu_to_le16(NVMET_MAX_CMD); - id->nn = cpu_to_le32(ctrl->subsys->max_nsid); + id->nn = cpu_to_le32(U32_MAX);The NN field has to have the highest valid NSID, and FFFFFFFFh is not valid. That's reserved for the broadcast.
In that case we have to keep the dynamic id setting for the MNAN and may have to keep the original proposed fix :- drivers/nvme/target/admin-cmd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/nvme/target/admin-cmd.cb/drivers/nvme/target/admin-cmd.c index cd60a8184d04..a8ec377bb68d 100644
--- a/drivers/nvme/target/admin-cmd.c
+++ b/drivers/nvme/target/admin-cmd.c@@ -394,7 +394,7 @@ static void nvmet_execute_identify_ctrl(structnvmet_req *req)
id->maxcmd = cpu_to_le16(NVMET_MAX_CMD);
id->nn = cpu_to_le32(ctrl->subsys->max_nsid);
- id->mnan = cpu_to_le32(NVMET_MAX_NAMESPACES);
+ id->mnan = cpu_to_le32(ctrl->subsys->max_nsid);
id->oncs = cpu_to_le16(NVME_CTRL_ONCS_DSM |
NVME_CTRL_ONCS_WRITE_ZEROES);
--
2.22.1
_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme