printf("\tThreshold Type Select (THSEL): %u - %s\n", field, nvme_feature_temp_type_to_string(field));
field = (result & 0x000f0000) >> 16;
printf("\tThreshold Temperature Select (TMPSEL): %u - %s\n", field, nvme_feature_temp_sel_to_string(field));
- printf("\tTemperature Threshold (TMPTH): %u C\n", (result & 0x0000ffff) - 273);
+ printf("\tTemperature Threshold (TMPTH): %d C\n", (result & 0x0000ffff) - 273);
break;
case NVME_FEAT_ERR_RECOVERY:
printf("\tDeallocated or Unwritten Logical Block Error Enable (DULBE): %s\n", ((result & 0x00010000) >> 16) ? "Enabled":"Disabled");
printf("get-feature:%#02x (%s), %s value:%#08x\n", cfg.feature_id,
nvme_feature_to_string(cfg.feature_id),
nvme_select_to_string(cfg.sel), result);
- if (cfg.human_readable && buf)
- nvme_feature_show_fields(cfg.feature_id, result, buf);
- else if (buf)
+ if (cfg.human_readable)
+ nvme_feature_show_fields(cfg.feature_id, (cfg.cdw11 & 0x3f0000) | result, buf);
+ if (buf)
d(buf, cfg.data_len, 16, 1);
} else if (buf)
d_raw(buf, cfg.data_len);