Report only the valid slots in the firmware log page.
Printing the entire log page is causing confusion over available slots. Report only those slots that are valid. In the case where the firmware download isn't supported, assume that only the first slot is valid (I have no hardware to test this assumption though) Sponsored by: Netflix
This commit is contained in:
parent
8ce85adf7d
commit
24e99dabf7
@ -234,14 +234,19 @@ print_log_health(const struct nvme_controller_data *cdata __unused, void *buf, u
|
||||
static void
|
||||
print_log_firmware(const struct nvme_controller_data *cdata __unused, void *buf, uint32_t size __unused)
|
||||
{
|
||||
int i;
|
||||
int i, slots;
|
||||
const char *status;
|
||||
struct nvme_firmware_page *fw = buf;
|
||||
|
||||
printf("Firmware Slot Log\n");
|
||||
printf("=================\n");
|
||||
|
||||
for (i = 0; i < MAX_FW_SLOTS; i++) {
|
||||
if (cdata->oacs.firmware == 0)
|
||||
slots = 1;
|
||||
else
|
||||
slots = MIN(cdata->frmw.num_slots, MAX_FW_SLOTS);
|
||||
|
||||
for (i = 0; i < slots; i++) {
|
||||
printf("Slot %d: ", i + 1);
|
||||
if (fw->afi.slot == i + 1)
|
||||
status = " Active";
|
||||
|
Loading…
x
Reference in New Issue
Block a user