[PATCH 6/6] nvme: enable logical block size > PAGE_SIZE
Hannes Reinecke
hare at kernel.org
Tue May 14 10:39:00 PDT 2024
From: Pankaj Raghav <p.raghav at samsung.com>
Don't set the capacity to zero for when logical block size > PAGE_SIZE
as the block device with iomap aops support allocating block cache with
a minimum folio order.
Signed-off-by: Pankaj Raghav <p.raghav at samsung.com>
Signed-off-by: Hannes Reinecke <hare at kernel.org>
---
drivers/nvme/host/core.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index 828c77fa13b7..111bf4197052 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -1963,11 +1963,11 @@ static bool nvme_update_disk_info(struct nvme_ns *ns, struct nvme_id_ns *id,
bool valid = true;
/*
- * The block layer can't support LBA sizes larger than the page size
- * or smaller than a sector size yet, so catch this early and don't
- * allow block I/O.
+ * The block layer can't support LBA sizes larger than
+ * MAX_PAGECACHE_ORDER or smaller than a sector size, so catch this
+ * early and don't allow block I/O.
*/
- if (head->lba_shift > PAGE_SHIFT || head->lba_shift < SECTOR_SHIFT) {
+ if (get_order(bs) > MAX_PAGECACHE_ORDER || head->lba_shift < SECTOR_SHIFT) {
bs = (1 << 9);
valid = false;
}
--
2.35.3
More information about the Linux-nvme
mailing list