Merge tag 'for-5.5/drivers-20191121' of git://git.kernel.dk/linux-block
authorLinus Torvalds <torvalds@linux-foundation.org>
Mon, 25 Nov 2019 19:15:41 +0000 (11:15 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 25 Nov 2019 19:15:41 +0000 (11:15 -0800)
Pull block driver updates from Jens Axboe:
 "Here are the main block driver updates for 5.5. Nothing major in here,
  mostly just fixes. This contains:

   - a set of bcache changes via Coly

   - MD changes from Song

   - loop unmap write-zeroes fix (Darrick)

   - spelling fixes (Geert)

   - zoned additions cleanups to null_blk/dm (Ajay)

   - allow null_blk online submit queue changes (Bart)

   - NVMe changes via Keith, nothing major here either"

* tag 'for-5.5/drivers-20191121' of git://git.kernel.dk/linux-block: (56 commits)
  Revert "bcache: fix fifo index swapping condition in journal_pin_cmp()"
  drivers/md/raid5-ppl.c: use the new spelling of RWH_WRITE_LIFE_NOT_SET
  drivers/md/raid5.c: use the new spelling of RWH_WRITE_LIFE_NOT_SET
  bcache: don't export symbols
  bcache: remove the extra cflags for request.o
  bcache: at least try to shrink 1 node in bch_mca_scan()
  bcache: add idle_max_writeback_rate sysfs interface
  bcache: add code comments in bch_btree_leaf_dirty()
  bcache: fix deadlock in bcache_allocator
  bcache: add code comment bch_keylist_pop() and bch_keylist_pop_front()
  bcache: deleted code comments for dead code in bch_data_insert_keys()
  bcache: add more accurate error messages in read_super()
  bcache: fix static checker warning in bcache_device_free()
  bcache: fix a lost wake-up problem caused by mca_cannibalize_lock
  bcache: fix fifo index swapping condition in journal_pin_cmp()
  md/raid10: prevent access of uninitialized resync_pages offset
  md: avoid invalid memory access for array sb->dev_roles
  md/raid1: avoid soft lockup under high load
  null_blk: add zone open, close, and finish support
  dm: add zone open, close and finish support
  ...

1  2 
drivers/block/null_blk_zoned.c
drivers/md/raid0.c
drivers/nvme/host/core.c
drivers/nvme/host/multipath.c
drivers/nvme/host/nvme.h
drivers/nvme/host/pci.c
drivers/nvme/host/rdma.c
drivers/nvme/host/tcp.c
drivers/nvme/target/loop.c

@@@ -141,8 -159,32 +159,31 @@@ static blk_status_t null_zone_mgmt(stru
                zone->cond = BLK_ZONE_COND_EMPTY;
                zone->wp = zone->start;
                break;
+       case REQ_OP_ZONE_OPEN:
+               if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL)
+                       return BLK_STS_IOERR;
+               if (zone->cond == BLK_ZONE_COND_FULL)
+                       return BLK_STS_IOERR;
+               zone->cond = BLK_ZONE_COND_EXP_OPEN;
+               break;
+       case REQ_OP_ZONE_CLOSE:
+               if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL)
+                       return BLK_STS_IOERR;
+               if (zone->cond == BLK_ZONE_COND_FULL)
+                       return BLK_STS_IOERR;
+               zone->cond = BLK_ZONE_COND_CLOSED;
+               break;
+       case REQ_OP_ZONE_FINISH:
+               if (zone->type == BLK_ZONE_TYPE_CONVENTIONAL)
+                       return BLK_STS_IOERR;
+               zone->cond = BLK_ZONE_COND_FULL;
+               zone->wp = zone->start + zone->len;
+               break;
        default:
 -              cmd->error = BLK_STS_NOTSUPP;
 -              break;
 +              return BLK_STS_NOTSUPP;
        }
        return BLK_STS_OK;
  }
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -2982,10 -2961,11 +2980,10 @@@ static int nvme_suspend(struct device *
  
                /*
                 * Clearing npss forces a controller reset on resume. The
-                * correct value will be resdicovered then.
+                * correct value will be rediscovered then.
                 */
 -              nvme_dev_disable(ndev, true);
 +              ret = nvme_disable_prepare_reset(ndev, true);
                ctrl->npss = 0;
 -              ret = 0;
        }
  unfreeze:
        nvme_unfreeze(ctrl);
Simple merge
Simple merge
Simple merge