include/nvme_spec.h:update nsdata fields for NVM and ZNS command set

Updated the examples file as per the code changes.

Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com>
Change-Id: I63bd1aa94dbc2bec0a9ce837aa5efb48daa1fc1e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/16514
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
Ankit Kumar 2023-01-26 03:52:29 +05:30 committed by Jim Harris
parent af9411b0af
commit df45f11427
2 changed files with 83 additions and 5 deletions

View File

@ -888,15 +888,51 @@ print_zns_ns_data(const struct spdk_nvme_zns_ns_data *nsdata_zns)
if (nsdata_zns->rrl == 0) { if (nsdata_zns->rrl == 0) {
printf("Reset Recommended Limit: Not Reported\n"); printf("Reset Recommended Limit: Not Reported\n");
} else { } else {
printf("Reset Recommended Limit: %"PRIu32"\n", printf("Reset Recommended Limit: %"PRIu32" seconds\n",
nsdata_zns->rrl); nsdata_zns->rrl);
} }
if (nsdata_zns->rrl1 == 0) {
printf("Reset Recommended Limit 1: Not Reported\n");
} else {
printf("Reset Recommended Limit 1: %"PRIu32" seconds\n",
nsdata_zns->rrl1);
}
if (nsdata_zns->rrl2 == 0) {
printf("Reset Recommended Limit 2: Not Reported\n");
} else {
printf("Reset Recommended Limit 2: %"PRIu32" seconds\n",
nsdata_zns->rrl2);
}
if (nsdata_zns->rrl3 == 0) {
printf("Reset Recommended Limit 3: Not Reported\n");
} else {
printf("Reset Recommended Limit 3: %"PRIu32" seconds\n",
nsdata_zns->rrl3);
}
if (nsdata_zns->frl == 0) { if (nsdata_zns->frl == 0) {
printf("Finish Recommended Limit: Not Reported\n"); printf("Finish Recommended Limit: Not Reported\n");
} else { } else {
printf("Finish Recommended Limit: %"PRIu32"\n", printf("Finish Recommended Limit: %"PRIu32" seconds\n",
nsdata_zns->frl); nsdata_zns->frl);
} }
if (nsdata_zns->frl1 == 0) {
printf("Finish Recommended Limit 1: Not Reported\n");
} else {
printf("Finish Recommended Limit 1: %"PRIu32" seconds\n",
nsdata_zns->frl1);
}
if (nsdata_zns->frl2 == 0) {
printf("Finish Recommended Limit 2: Not Reported\n");
} else {
printf("Finish Recommended Limit 2: %"PRIu32" seconds\n",
nsdata_zns->frl2);
}
if (nsdata_zns->frl3 == 0) {
printf("Finish Recommended Limit 3: Not Reported\n");
} else {
printf("Finish Recommended Limit 3: %"PRIu32" seconds\n",
nsdata_zns->frl3);
}
printf("\n"); printf("\n");
} }
@ -1054,6 +1090,17 @@ print_namespace(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_ns *ns)
printf("ANA group ID: %u\n", nsdata->anagrpid); printf("ANA group ID: %u\n", nsdata->anagrpid);
} }
printf("Namespace Write Protected: %s\n",
nsdata->nsattr.write_protected ? "Yes" : "No");
if (cdata->ctratt.nvm_sets) {
printf("NVM set ID: %u\n", nsdata->nvmsetid);
}
if (cdata->ctratt.endurance_groups) {
printf("Endurance group ID: %u\n", nsdata->endgid);
}
printf("Number of LBA Formats: %d\n", nsdata->nlbaf + 1); printf("Number of LBA Formats: %d\n", nsdata->nlbaf + 1);
printf("Current LBA Format: LBA Format #%02d\n", printf("Current LBA Format: LBA Format #%02d\n",
nsdata->flbas.format); nsdata->flbas.format);

View File

@ -2734,12 +2734,25 @@ struct spdk_nvme_ns_data {
/** Maximum Source Range Count */ /** Maximum Source Range Count */
uint8_t msrc; uint8_t msrc;
uint8_t reserved64[11]; uint8_t reserved81[11];
/** ANA group identifier */ /** ANA group identifier */
uint32_t anagrpid; uint32_t anagrpid;
uint8_t reserved96[8]; uint8_t reserved96[3];
/** namespace attributes */
struct {
/** Namespace write protected */
uint8_t write_protected : 1;
uint8_t reserved : 7;
} nsattr;
/** NVM Set Identifier */
uint16_t nvmsetid;
/** Endurance group identifier */
uint16_t endgid;
/** namespace globally unique identifier */ /** namespace globally unique identifier */
uint8_t nguid[16]; uint8_t nguid[16];
@ -2793,7 +2806,25 @@ struct spdk_nvme_zns_ns_data {
/** finish recommended limit */ /** finish recommended limit */
uint32_t frl; uint32_t frl;
uint8_t reserved20[2796]; /** reset recommended limit 1 */
uint32_t rrl1;
/** reset recommended limit 2 */
uint32_t rrl2;
/** reset recommended limit 3 */
uint32_t rrl3;
/** finish recommended limit 1 */
uint32_t frl1;
/** finish recommended limit 2 */
uint32_t frl2;
/** finish recommended limit 3 */
uint32_t frl3;
uint8_t reserved44[2772];
/** zns lba format extension support */ /** zns lba format extension support */
struct { struct {