diff --git a/sys/dev/disk/nvme/nvme_admin.c b/sys/dev/disk/nvme/nvme_admin.c --- a/sys/dev/disk/nvme/nvme_admin.c +++ b/sys/dev/disk/nvme/nvme_admin.c @@ -672,7 +672,11 @@ j = NVME_FLBAS_SEL_GET(nsc->idns.flbas); lbafmt = &nsc->idns.lba_fmt[j]; - nsc->blksize = 1 << lbafmt->sect_size; + if (lbafmt->sect_size < 9 || lbafmt->sect_size > 16) { + nsc->blksize = 0; + } else { + nsc->blksize = 1U << lbafmt->sect_size; + } /* * Attach the namespace