Skip to content

Commit

Permalink
nvme-print: print Host Behavior Support feature fields
Browse files Browse the repository at this point in the history
Print the fields of Host Behavior Support feature (FID - 16h).
NVM Express Base Specification 2.1

Signed-off-by: Francis Pravin <[email protected]>
  • Loading branch information
francispravin5 committed Feb 24, 2025
1 parent 3e512dd commit 7dbc1a3
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 3 deletions.
19 changes: 18 additions & 1 deletion nvme-print-json.c
Original file line number Diff line number Diff line change
Expand Up @@ -3504,8 +3504,25 @@ static void json_feature_show_fields_lba_sts_interval(struct json_object *r, uns

static void json_feature_show_fields_host_behavior(struct json_object *r, unsigned char *buf)
{
if (buf)
if (buf) {
struct nvme_feat_host_behavior *host = (struct nvme_feat_host_behavior *)buf;

obj_add_str(r, "Host Behavior Support", buf[0] & 0x1 ? "True" : "False");
obj_add_str(r, "Advanced Command Retry Enable (ACRE)", host->acre ?
"True" : "False");
obj_add_str(r, "Extended Telemetry Data Area 4 Supported (ETDAS)", host->etdas ?
"True" : "False");
obj_add_str(r, "LBA Format Extension Enable (LBAFEE)", host->lbafee ?
"True" : "False");
obj_add_str(r, "Host Dispersed Namespace Support (HDISNS)", host->hdisns ?
"Enabled" : "Disabled");
obj_add_str(r, "Copy Descriptor Format 2h Enable (CDF2E)", host->cdfe & (1 << 2) ?
"True" : "False");
obj_add_str(r, "Copy Descriptor Format 3h Enable (CDF3E)", host->cdfe & (1 << 3) ?
"True" : "False");
obj_add_str(r, "Copy Descriptor Format 4h Enable (CDF4E)", host->cdfe & (1 << 4) ?
"True" : "False");
}
}

static void json_feature_show_fields_sanitize(struct json_object *r, unsigned int result)
Expand Down
8 changes: 6 additions & 2 deletions nvme-print-stdout.c
Original file line number Diff line number Diff line change
Expand Up @@ -5020,10 +5020,14 @@ static void stdout_feature_show_fields(enum nvme_features_id fid,
host_behavior->etdas ? "True" : "False");
printf("\tLBA Format Extension Enable (LBAFEE): %s\n",
host_behavior->lbafee ? "True" : "False");
printf("\tCopy Descriptor Format 2h Enabled (CDFE): %s\n",
printf("\tHost Dispersed Namespace Support (HDISNS) : %s\n",
host_behavior->hdisns ? "Enabled" : "Disabled");
printf("\tCopy Descriptor Format 2h Enabled (CDF2E) : %s\n",
host_behavior->cdfe & (1 << 2) ? "True" : "False");
printf("\tCopy Descriptor Format 3h Enabled (CDFE): %s\n",
printf("\tCopy Descriptor Format 3h Enabled (CDF3E) : %s\n",
host_behavior->cdfe & (1 << 3) ? "True" : "False");
printf("\tCopy Descriptor Format 4h Enabled (CDF4E) : %s\n",
host_behavior->cdfe & (1 << 4) ? "True" : "False");
}
break;
case NVME_FEAT_FID_SANITIZE:
Expand Down

0 comments on commit 7dbc1a3

Please sign in to comment.