nvme/identify: print the command set identifier per namespace
For each active namespace, print the command set identifier. This will work on namespaces that do not support or report a namespace type, as spdk_nvme_ns_get_csi() will return SPDK_NVME_CSI_NVM for such cases. Signed-off-by: Niklas Cassel <niklas.cassel@wdc.com> Change-Id: I05fa7fd6bb3d9ea32dac236c98baef90347094ca Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/6905 Community-CI: Broadcom CI Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
This commit is contained in:
parent
09b0c84f1b
commit
38fa9d82c8
@ -896,6 +896,24 @@ print_zns_ns_data(const struct spdk_nvme_zns_ns_data *nsdata_zns)
|
|||||||
printf("\n");
|
printf("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static const char *
|
||||||
|
csi_name(enum spdk_nvme_csi csi)
|
||||||
|
{
|
||||||
|
switch (csi) {
|
||||||
|
case SPDK_NVME_CSI_NVM:
|
||||||
|
return "NVM";
|
||||||
|
case SPDK_NVME_CSI_KV:
|
||||||
|
return "KV";
|
||||||
|
case SPDK_NVME_CSI_ZNS:
|
||||||
|
return "ZNS";
|
||||||
|
default:
|
||||||
|
if (csi >= 0x30 && csi <= 0x3f) {
|
||||||
|
return "Vendor specific";
|
||||||
|
}
|
||||||
|
return "Unknown";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
print_namespace(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_ns *ns)
|
print_namespace(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_ns *ns)
|
||||||
{
|
{
|
||||||
@ -923,6 +941,8 @@ print_namespace(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_ns *ns)
|
|||||||
/* This function is only called for active namespaces. */
|
/* This function is only called for active namespaces. */
|
||||||
assert(spdk_nvme_ns_is_active(ns));
|
assert(spdk_nvme_ns_is_active(ns));
|
||||||
|
|
||||||
|
printf("Command Set Identifier: %s (%02Xh)\n",
|
||||||
|
csi_name(spdk_nvme_ns_get_csi(ns)), spdk_nvme_ns_get_csi(ns));
|
||||||
printf("Deallocate: %s\n",
|
printf("Deallocate: %s\n",
|
||||||
(flags & SPDK_NVME_NS_DEALLOCATE_SUPPORTED) ? "Supported" : "Not Supported");
|
(flags & SPDK_NVME_NS_DEALLOCATE_SUPPORTED) ? "Supported" : "Not Supported");
|
||||||
printf("Deallocated/Unwritten Error: %s\n",
|
printf("Deallocated/Unwritten Error: %s\n",
|
||||||
|
Loading…
Reference in New Issue
Block a user