Print this page
8480 nvmeadm should ignore 0-sized namespaces by default
Reviewed by: Patrick Mooney <patrick.mooney@joyent.com>
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com>

*** 537,547 **** --- 537,556 ---- static int do_list_nsid(int fd, const nvme_process_arg_t *npa) { _NOTE(ARGUNUSED(fd)); + const uint_t format = npa->npa_idns->id_flbas.lba_format; + const uint_t bshift = npa->npa_idns->id_lbaf[format].lbaf_lbads; + /* + * Some devices have extra namespaces with illegal block sizes and + * zero blocks. Don't list them when verbose operation isn't requested. + */ + if ((bshift < 9 || npa->npa_idns->id_nsize == 0) && verbose == 0) + return (0); + (void) printf(" %s/%s (%s): ", npa->npa_name, di_minor_name(npa->npa_minor), npa->npa_dsk != NULL ? npa->npa_dsk : "unattached"); nvme_print_nsid_summary(npa->npa_idns);