[GIT PULL] Block changes for 5.1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Linus,

This is the main block pull request for 5.1. Not a huge amount of
changes in this round, the biggest one is that we finally have Mings
multi-page bvec support merged. Apart from that, this pull request
contains:

- Small series that avoids quiescing the queue for sysfs changes that
  match what we currently have (Aleksei)

- Series of bcache fixes (via Coly)

- Series of lightnvm fixes (via Mathias)

- NVMe pull request from Christoph. Nothing major, just SPDX/license
  cleanups, RR mp policy (Hannes), and little fixes (Bart, Chaitanya).

- BFQ series (Paolo)

- Save blk-mq cpu -> hw queue mapping, removing a pointer indirection
  for the fast path (Jianchao)

- fops->iopoll() added for async IO polling, this is a feature that the
  upcoming io_uring interface will use (Christoph, me)

- Partition scan loop fixes (Dongli)

- mtip32xx conversion from managed resource API (Christoph)

- cdrom registration race fix (Guenter)

- MD pull from Song, two minor fixes.

- Various documentation fixes (Marcos)

- Multi-page bvec feature. This brings a lot of nice improvements with
  it, like more efficient splitting, larger IOs can be supported without
  growing the bvec table size, and so on. (Ming)

- Various little fixes to core and drivers.


Note that this will throw a merge conflict, due to the late revert of
the gfs2 commit ""gfs2: read journal in large chunks to locate the
head". The resolution is trivial, since it's just deleting the code.

Please pull!


  git://git.kernel.dk/linux-block.git tags/for-5.1/block-20190302


----------------------------------------------------------------
Aleksei Zakharov (3):
      block: avoid setting nr_requests to current value
      block: avoid setting wbt_lat_usec to current value
      block: avoid setting none scheduler if it's already none

Andy Shevchenko (2):
      lightnvm: Use u64 instead of __le64 for CPU visible side
      lightnvm: pblk: Switch to use new generic UUID API

Bart Van Assche (6):
      nvmet: fix indentation
      nvme-fabrics: document the poll function argument
      nvme-pci: check kstrtoint() return value in queue_count_set()
      nvme: unexport nvme_delete_ctrl_sync()
      nvme: introduce a helper function for controller deletion
      nvme: avoid that deleting a controller triggers a circular locking complaint

Carlos Maiolino (1):
      fs: fix guard_bio_eod to check for real EOD errors

Chaitanya Kulkarni (2):
      nvme: add support for the Write Zeroes command
      nvme-rdma: use nr_phys_segments when map rq to sgl

Christoph Hellwig (19):
      mtip32xx: ѕtop abusing the managed resource APIs
      btrfs: look at bi_size for repair decisions
      nvme_ioctl.h: remove duplicate GPL boilerplate
      nvme-tcp.h: fix SPDX header
      nvme-fabrics: convert to SPDX identifiers
      nvme-fc: convert to SPDX identifiers
      nvme-rdma: convert to SPDX identifiers
      nvme-lightnvm: convert to SPDX identifiers
      nvme-pci: convert to SPDX identifiers
      nvme: convert to SPDX identifiers
      nvmet-fc: convert to SPDX identifiers
      nvmet-fcloop: convert to SPDX identifiers
      nvme-loop: convert to SPDX identifiers
      nvmet-rdma: convert to SPDX identifiers
      nvmet: convert to SPDX identifiers
      fs: add an iopoll method to struct file_operations
      block: wire up block device iopoll method
      iomap: wire up the iopoll method
      block: optimize bvec iteration in bvec_iter_advance

Colin Ian King (1):
      bcache: fix indentation issue, remove tabs on a hunk of code

Coly Li (16):
      bcache: not use hard coded memset size in bch_cache_accounting_clear()
      bcache: export backing_dev_name via sysfs
      bcache: export backing_dev_uuid via sysfs
      bcache: improve sysfs_strtoul_clamp()
      bcache: fix input integer overflow of congested threshold
      bcache: fix input overflow to sequential_cutoff
      bcache: add sysfs_strtoul_bool() for setting bit-field variables
      bcache: use sysfs_strtoul_bool() to set bit-field variables
      bcache: fix input overflow to writeback_delay
      bcache: fix potential div-zero error of writeback_rate_i_term_inverse
      bcache: fix potential div-zero error of writeback_rate_p_term_inverse
      bcache: fix input overflow to writeback_rate_minimum
      bcache: fix input overflow to journal_delay_ms
      bcache: fix input overflow to cache set io_error_limit
      bcache: fix input overflow to cache set sysfs file io_error_halflife
      bcache: use (REQ_META|REQ_PRIO) to indicate bio for metadata

Daniel Axtens (1):
      bcache: never writeback a discard operation

Dongli Zhang (3):
      loop: do not print warn message if partition scan is successful
      loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part()
      blk-mq: use HCTX_TYPE_DEFAULT but not 0 to index blk_mq_tag_set->map

Guenter Roeck (1):
      cdrom: Fix race condition in cdrom_sysctl_register

Gustavo A. R. Silva (1):
      md-linear: use struct_size() in kzalloc()

Hannes Reinecke (2):
      nvme-multipath: round-robin I/O policy
      nvme: return error from nvme_alloc_ns()

Hans Holmberg (3):
      lightnvm: pblk: stop taking the free lock in in pblk_lines_free
      lightnvm: pblk: use vfree to free metadata on error path
      lightnvm: pblk: extend line wp balance check

Heiner Litz (1):
      lightnvm: pblk: fix race condition on GC

Heinz Mauelshagen (1):
      null_blk: fix checking for REQ_FUA

Javier González (1):
      lightnvm: pblk: prevent stall due to wb threshold

Jens Axboe (7):
      Merge branch 'nvme-5.1' of git://git.infradead.org/nvme into for-5.1/block
      Merge branch 'md-next' of https://github.com/liu-song-6/linux into for-5.1/block
      block: kill QUEUE_FLAG_FLUSH_NQ
      block: queue flag cleanup
      Merge tag 'v5.0-rc6' into for-5.1/block
      Merge branch 'nvme-5.1' of git://git.infradead.org/nvme into for-5.1/block
      block: add bio_set_polled() helper

Jianchao Wang (2):
      blk-mq: save queue mapping result into ctx directly
      blk-mq: save default hctx into ctx->hctxs for not-supported type

Keyur Patel (1):
      block: Replace function name in string with __func__

Li RongQing (1):
      nbd: propagate genlmsg_reply return code

Marcos Paulo de Souza (2):
      blk-cgroup: Fix doc related to blkcg_exit_queue
      blk-sysfs: Rework documention of __blk_release_queue

Masahiro Yamada (1):
      lightnvm: pblk: fix TRACE_INCLUDE_PATH

Ming Lei (24):
      block: don't use bio->bi_vcnt to figure out segment number
      block: remove bvec_iter_rewind()
      block: introduce multi-page bvec helpers
      block: introduce bio_for_each_bvec() and rq_for_each_bvec()
      block: use bio_for_each_bvec() to compute multi-page bvec count
      block: use bio_for_each_bvec() to map sg
      block: introduce mp_bvec_last_segment()
      fs/buffer.c: use bvec iterator to truncate the bio
      btrfs: use mp_bvec_last_segment to get bio's last page
      block: loop: pass multi-page bvec to iov_iter
      bcache: avoid to use bio_for_each_segment_all() in bch_bio_alloc_pages()
      block: allow bio_for_each_segment_all() to iterate over multi-page bvec
      block: enable multipage bvecs
      block: always define BIO_MAX_PAGES as 256
      block: document usage of bio iterator helpers
      block: kill QUEUE_FLAG_NO_SG_MERGE
      block: kill BLK_MQ_F_SG_MERGE
      block: avoid to READ fields of null bio
      block: bounce: make sure that bvec table is updated
      block: introduce bvec_nth_page()
      block: optimize __blk_segment_map_sg() for single-page bvec
      block: optimize blk_bio_segment_split for single-page bvec
      block: introduce mp_bvec_for_each_page() for iterating over page
      block: fix updating bio's front segment size

Paolo Valente (14):
      block, bfq: do not consider interactive queues in srt filtering
      block, bfq: avoid selecting a queue w/o budget
      block, bfq: make sure queue budgets are not below service received
      block, bfq: remove case of redirected bic from insert_request
      block, bfq: consider also ioprio classes in symmetry detection
      block, bfq: split function bfq_better_to_idle
      block, bfq: do not plug I/O of in-service queue when harmful
      block, bfq: unconditionally plug I/O in asymmetric scenarios
      block, bfq: fix sequential rq detection in rate estimation
      block, bfq: fix queue removal from weights tree
      block, bfq: reduce threshold for detecting command queueing
      block, bfq: port commit "cfq-iosched: improve hw_tag detection"
      block, bfq: do not overcharge writes in asymmetric scenarios
      block, bfq: fix in-service-queue check for queue merging

Sagi Grimberg (1):
      nvme: remove the .stop_ctrl callout

Tang Junhui (1):
      bcache: treat stale && dirty keys as bad keys

YueHaibing (1):
      floppy: remove set but not used variable 'q'

Yufen Yu (1):
      raid1: simplify raid1_error function

zhengbin (1):
      block: fix NULL pointer dereference in register_disk

 Documentation/block/biovecs.txt   |  25 ++
 Documentation/filesystems/vfs.txt |   3 +
 block/bfq-iosched.c               | 705 ++++++++++++++++++++------------------
 block/bfq-iosched.h               |  11 +-
 block/bfq-wf2q.c                  |  18 +-
 block/bio.c                       |  49 ++-
 block/blk-cgroup.c                |   2 +-
 block/blk-merge.c                 | 231 +++++++++----
 block/blk-mq-debugfs.c            |   3 -
 block/blk-mq-sched.c              |   2 +-
 block/blk-mq-tag.c                |   2 +-
 block/blk-mq.c                    |  33 +-
 block/blk-mq.h                    |  20 +-
 block/blk-settings.c              |   9 -
 block/blk-sysfs.c                 |  22 +-
 block/blk.h                       |   2 +-
 block/bounce.c                    |  10 +-
 block/elevator.c                  |   5 +-
 block/genhd.c                     |  18 +-
 drivers/ata/libata-scsi.c         |   2 -
 drivers/block/floppy.c            |   3 -
 drivers/block/loop.c              |  48 ++-
 drivers/block/mtip32xx/mtip32xx.c |  37 +-
 drivers/block/nbd.c               |   5 +-
 drivers/block/null_blk_main.c     |   3 +-
 drivers/block/rbd.c               |   2 +-
 drivers/block/skd_main.c          |   1 -
 drivers/block/xen-blkfront.c      |   2 +-
 drivers/cdrom/cdrom.c             |   7 +-
 drivers/lightnvm/pblk-core.c      |   8 +-
 drivers/lightnvm/pblk-gc.c        |  20 +-
 drivers/lightnvm/pblk-init.c      |   4 +-
 drivers/lightnvm/pblk-map.c       |   1 +
 drivers/lightnvm/pblk-rb.c        |  26 +-
 drivers/lightnvm/pblk-recovery.c  |  64 ++--
 drivers/lightnvm/pblk-rl.c        |   5 +-
 drivers/lightnvm/pblk-trace.h     |   2 +-
 drivers/lightnvm/pblk-write.c     |   1 +
 drivers/lightnvm/pblk.h           |  17 +-
 drivers/md/bcache/btree.c         |   3 +-
 drivers/md/bcache/extents.c       |  13 +-
 drivers/md/bcache/request.c       |   7 +-
 drivers/md/bcache/stats.c         |   2 +-
 drivers/md/bcache/super.c         |  30 +-
 drivers/md/bcache/sysfs.c         |  81 +++--
 drivers/md/bcache/sysfs.h         |  23 +-
 drivers/md/bcache/util.c          |   6 +-
 drivers/md/bcache/writeback.h     |   3 +
 drivers/md/dm-crypt.c             |   3 +-
 drivers/md/dm-rq.c                |   2 +-
 drivers/md/dm-table.c             |  13 -
 drivers/md/md-linear.c            |   3 +-
 drivers/md/raid1.c                |   9 +-
 drivers/mmc/core/queue.c          |   3 +-
 drivers/nvme/host/core.c          | 122 +++++--
 drivers/nvme/host/fabrics.c       |  11 +-
 drivers/nvme/host/fabrics.h       |  10 +-
 drivers/nvme/host/fault_inject.c  |   2 +-
 drivers/nvme/host/fc.c            |  14 +-
 drivers/nvme/host/lightnvm.c      |  16 +-
 drivers/nvme/host/multipath.c     |  96 +++++-
 drivers/nvme/host/nvme.h          |  21 +-
 drivers/nvme/host/pci.c           |  12 +-
 drivers/nvme/host/rdma.c          |  26 +-
 drivers/nvme/host/tcp.c           |  10 +-
 drivers/nvme/host/trace.c         |  10 +-
 drivers/nvme/host/trace.h         |  10 +-
 drivers/nvme/target/admin-cmd.c   |  10 +-
 drivers/nvme/target/configfs.c    |  10 +-
 drivers/nvme/target/core.c        |  10 +-
 drivers/nvme/target/discovery.c   |  12 +-
 drivers/nvme/target/fabrics-cmd.c |  10 +-
 drivers/nvme/target/fc.c          |  14 +-
 drivers/nvme/target/fcloop.c      |  13 +-
 drivers/nvme/target/io-cmd-bdev.c |  10 +-
 drivers/nvme/target/loop.c        |  10 +-
 drivers/nvme/target/nvmet.h       |  10 +-
 drivers/nvme/target/rdma.c        |  10 +-
 drivers/scsi/scsi_lib.c           |   2 +-
 drivers/staging/erofs/data.c      |   3 +-
 drivers/staging/erofs/unzip_vle.c |   3 +-
 fs/block_dev.c                    |  28 +-
 fs/btrfs/compression.c            |   3 +-
 fs/btrfs/disk-io.c                |   3 +-
 fs/btrfs/extent_io.c              |  16 +-
 fs/btrfs/inode.c                  |   6 +-
 fs/btrfs/raid56.c                 |   3 +-
 fs/buffer.c                       |  12 +-
 fs/crypto/bio.c                   |   3 +-
 fs/direct-io.c                    |   4 +-
 fs/exofs/ore.c                    |   3 +-
 fs/exofs/ore_raid.c               |   3 +-
 fs/ext4/page-io.c                 |   3 +-
 fs/ext4/readpage.c                |   3 +-
 fs/f2fs/data.c                    |   9 +-
 fs/gfs2/file.c                    |   2 +
 fs/gfs2/lops.c                    |   9 +-
 fs/gfs2/meta_io.c                 |   3 +-
 fs/iomap.c                        |  53 ++-
 fs/mpage.c                        |   3 +-
 fs/xfs/xfs_aops.c                 |   9 +-
 fs/xfs/xfs_file.c                 |   1 +
 include/linux/bio.h               |  51 ++-
 include/linux/blk-mq.h            |   1 -
 include/linux/blkdev.h            |  68 ++--
 include/linux/bvec.h              | 123 +++++--
 include/linux/fs.h                |   2 +
 include/linux/iomap.h             |   1 +
 include/linux/nvme-fc-driver.h    |  10 +-
 include/linux/nvme-fc.h           |  14 +-
 include/linux/nvme-rdma.h         |  10 +-
 include/linux/nvme-tcp.h          |   2 +-
 include/linux/nvme.h              |  10 +-
 include/uapi/linux/nvme_ioctl.h   |   9 -
 114 files changed, 1472 insertions(+), 1124 deletions(-)

-- 
Jens Axboe




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux