]> www.infradead.org Git - nvme.git/commitdiff
Merge remote-tracking branch 'nvme/nvme-6.8' into nvme-6.8-merge-v3 nvme-6.8-merge
authorKeith Busch <kbusch@kernel.org>
Thu, 21 Dec 2023 21:36:04 +0000 (13:36 -0800)
committerKeith Busch <kbusch@kernel.org>
Thu, 21 Dec 2023 21:36:04 +0000 (13:36 -0800)
1  2 
drivers/nvme/host/core.c
drivers/nvme/host/fc.c
drivers/nvme/host/ioctl.c
drivers/nvme/host/nvme.h
drivers/nvme/host/rdma.c
drivers/nvme/host/zns.c
drivers/nvme/target/configfs.c

index 8ebdfd623e0f7855155008325945b18f66efc373,d144d1acb09a05ae3fdb824730af4e9819db5c5d..b5e9a9a798eb2b7123ac1342c0a79d7d701a90d2
@@@ -1903,10 -1899,9 +1912,10 @@@ static void nvme_update_disk_info(struc
  
        /*
         * The block layer can't support LBA sizes larger than the page size
 -       * yet, so catch this early and don't allow block I/O.
 +       * or smaller than a sector size yet, so catch this early and don't
 +       * allow block I/O.
         */
-       if (ns->lba_shift > PAGE_SHIFT || ns->lba_shift < SECTOR_SHIFT) {
 -      if (head->lba_shift > PAGE_SHIFT) {
++      if (head->lba_shift > PAGE_SHIFT || head->lba_shift < SECTOR_SHIFT) {
                capacity = 0;
                bs = (1 << 9);
        }
@@@ -2043,19 -2038,13 +2052,20 @@@ static int nvme_update_ns_info_block(st
        if (ret)
                return ret;
  
 +      if (id->ncap == 0) {
 +              /* namespace not allocated or attached */
 +              info->is_removed = true;
 +              ret = -ENODEV;
 +              goto error;
 +      }
 +
        blk_mq_freeze_queue(ns->disk->queue);
        lbaf = nvme_lbaf_index(id->flbas);
-       ns->lba_shift = id->lbaf[lbaf].ds;
+       ns->head->lba_shift = id->lbaf[lbaf].ds;
+       ns->head->nuse = le64_to_cpu(id->nuse);
        nvme_set_queue_limits(ns->ctrl, ns->queue);
  
-       ret = nvme_configure_metadata(ns, id);
+       ret = nvme_configure_metadata(ns->ctrl, ns->head, id);
        if (ret < 0) {
                blk_mq_unfreeze_queue(ns->disk->queue);
                goto out;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge