mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-04 18:49:41 +00:00
nvmet: implement id ns for nvm command set
We don't report anything here, but it's a mandatory identification for nvme 2.1. Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com> Reviewed-by: Matias Bjørling <matias.bjorling@wdc.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Keith Busch <kbusch@kernel.org>
This commit is contained in:
parent
5a47c2080a
commit
64a51080ea
@ -701,6 +701,20 @@ static void nvmet_execute_identify_ctrl_nvm(struct nvmet_req *req)
|
|||||||
nvmet_zero_sgl(req, 0, sizeof(struct nvme_id_ctrl_nvm)));
|
nvmet_zero_sgl(req, 0, sizeof(struct nvme_id_ctrl_nvm)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void nvme_execute_identify_ns_nvm(struct nvmet_req *req)
|
||||||
|
{
|
||||||
|
u16 status;
|
||||||
|
|
||||||
|
status = nvmet_req_find_ns(req);
|
||||||
|
if (status)
|
||||||
|
goto out;
|
||||||
|
|
||||||
|
status = nvmet_copy_to_sgl(req, 0, ZERO_PAGE(0),
|
||||||
|
NVME_IDENTIFY_DATA_SIZE);
|
||||||
|
out:
|
||||||
|
nvmet_req_complete(req, status);
|
||||||
|
}
|
||||||
|
|
||||||
static void nvmet_execute_identify(struct nvmet_req *req)
|
static void nvmet_execute_identify(struct nvmet_req *req)
|
||||||
{
|
{
|
||||||
if (!nvmet_check_transfer_len(req, NVME_IDENTIFY_DATA_SIZE))
|
if (!nvmet_check_transfer_len(req, NVME_IDENTIFY_DATA_SIZE))
|
||||||
@ -722,8 +736,8 @@ static void nvmet_execute_identify(struct nvmet_req *req)
|
|||||||
case NVME_ID_CNS_CS_NS:
|
case NVME_ID_CNS_CS_NS:
|
||||||
switch (req->cmd->identify.csi) {
|
switch (req->cmd->identify.csi) {
|
||||||
case NVME_CSI_NVM:
|
case NVME_CSI_NVM:
|
||||||
/* Not supported */
|
nvme_execute_identify_ns_nvm(req);
|
||||||
break;
|
return;
|
||||||
case NVME_CSI_ZNS:
|
case NVME_CSI_ZNS:
|
||||||
if (IS_ENABLED(CONFIG_BLK_DEV_ZONED)) {
|
if (IS_ENABLED(CONFIG_BLK_DEV_ZONED)) {
|
||||||
nvmet_execute_identify_ns_zns(req);
|
nvmet_execute_identify_ns_zns(req);
|
||||||
|
Loading…
Reference in New Issue
Block a user