mbox series

[GIT,PULL] Core block changes for 5.14-rc1

Message ID ab2255de-8bbc-8c6f-7309-25cbb506000f@kernel.dk (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] Core block changes for 5.14-rc1 | expand

Pull-request

git://git.kernel.dk/linux-block.git tags/for-5.14/block-2021-06-29

Message

Jens Axboe June 29, 2021, 7:39 p.m. UTC
Hi Linus,

Here are the core block changes for the 5.14-rc1 merge window. This pull
request contains:

- disk events cleanup (Christoph)

- gendisk and request queue allocation simplifications (Christoph)

- bdev_disk_changed cleanups (Christoph)

- IO priority improvements (Bart)

- Chained bio completion trace fix (Edward)

- blk-wbt fixes (Jan)

- blk-wbt enable/disable fix (Zhang)

- Scheduler dispatch improvements (Jan, Ming)

- Shared tagset scheduler improvements (John)

- BFQ updates (Paolo, Luca, Pietro)

- BFQ lock inversion fix (Jan)

- Documentation improvements (Kir)

- CLONE_IO block cgroup fix (Tejun)

- Remove of ancient and deprecated block dump feature (zhangyi)

- Discard merge fix (Ming)

- Misc fixes or followup fixes (Colin, Damien, Dan, Long, Max, Thomas,
  Yang)

Please pull!


The following changes since commit c4681547bcce777daf576925a966ffa824edd09d:

  Linux 5.13-rc3 (2021-05-23 11:42:48 -1000)

are available in the Git repository at:

  git://git.kernel.dk/linux-block.git tags/for-5.14/block-2021-06-29

for you to fetch changes up to 2705dfb2094777e405e065105e307074af8965c1:

  block: fix discard request merge (2021-06-29 07:41:08 -0600)

----------------------------------------------------------------
for-5.14/block-2021-06-29

----------------------------------------------------------------
Bart Van Assche (18):
      block: Update blk_update_request() documentation
      block/Kconfig: Make the BLK_WBT and BLK_WBT_MQ entries consecutive
      block/blk-cgroup: Swap the blk_throtl_init() and blk_iolatency_init() calls
      block/blk-rq-qos: Move a function from a header file into a C file
      block: Introduce the ioprio rq-qos policy
      block/mq-deadline: Add several comments
      block/mq-deadline: Add two lockdep_assert_held() statements
      block/mq-deadline: Remove two local variables
      block/mq-deadline: Rename dd_init_queue() and dd_exit_queue()
      block/mq-deadline: Improve compile-time argument checking
      block/mq-deadline: Improve the sysfs show and store macros
      block/mq-deadline: Reserve 25% of scheduler tags for synchronous requests
      block/mq-deadline: Micro-optimize the batching algorithm
      block/mq-deadline: Add I/O priority support
      block/mq-deadline: Track I/O statistics
      block/mq-deadline: Add cgroup support
      block/mq-deadline: Prioritize high-priority requests
      block/mq-deadline: Remove a WARN_ON_ONCE() call

Christoph Hellwig (70):
      block: refactor device number setup in __device_add_disk
      block: move the DISK_MAX_PARTS sanity check into __device_add_disk
      block: automatically enable GENHD_FL_EXT_DEVT
      block: add a flag to make put_disk on partially initalized disks safer
      block: add blk_alloc_disk and blk_cleanup_disk APIs
      brd: convert to blk_alloc_disk/blk_cleanup_disk
      drbd: convert to blk_alloc_disk/blk_cleanup_disk
      pktcdvd: convert to blk_alloc_disk/blk_cleanup_disk
      rsxx: convert to blk_alloc_disk/blk_cleanup_disk
      zram: convert to blk_alloc_disk/blk_cleanup_disk
      lightnvm: convert to blk_alloc_disk/blk_cleanup_disk
      bcache: convert to blk_alloc_disk/blk_cleanup_disk
      dm: convert to blk_alloc_disk/blk_cleanup_disk
      md: convert to blk_alloc_disk/blk_cleanup_disk
      nvdimm-blk: convert to blk_alloc_disk/blk_cleanup_disk
      nvdimm-btt: convert to blk_alloc_disk/blk_cleanup_disk
      nvdimm-pmem: convert to blk_alloc_disk/blk_cleanup_disk
      nvme-multipath: convert to blk_alloc_disk/blk_cleanup_disk
      nfblock: convert to blk_alloc_disk/blk_cleanup_disk
      simdisk: convert to blk_alloc_disk/blk_cleanup_disk
      n64cart: convert to blk_alloc_disk
      ps3vram: convert to blk_alloc_disk/blk_cleanup_disk
      dcssblk: convert to blk_alloc_disk/blk_cleanup_disk
      xpram: convert to blk_alloc_disk/blk_cleanup_disk
      null_blk: convert to blk_alloc_disk/blk_cleanup_disk
      block: unexport blk_alloc_queue
      block: split __blkdev_get
      block: move sync_blockdev from __blkdev_put to blkdev_put
      block: move bd_mutex to struct gendisk
      block: move adjusting bd_part_count out of __blkdev_get
      block: split __blkdev_put
      block: move bd_part_count to struct gendisk
      block: factor out a part_devt helper
      block: remove bdget_disk
      blk-mq: factor out a blk_mq_alloc_sq_tag_set helper
      blk-mq: improve the blk_mq_init_allocated_queue interface
      blk-mq: add the blk_mq_alloc_disk APIs
      virtio-blk: use blk_mq_alloc_disk
      pcd: use blk_mq_alloc_disk
      pf: use blk_mq_alloc_disk
      ms_block: use blk_mq_alloc_disk
      mspro: use blk_mq_alloc_disk
      mtd_blkdevs: use blk_mq_alloc_disk
      ps3disk: use blk_mq_alloc_disk
      swim3: use blk_mq_alloc_disk
      swim: use blk_mq_alloc_disk
      sunvdc: use blk_mq_alloc_disk
      gdrom: use blk_mq_alloc_disk
      blk-mq: remove blk_mq_init_sq_queue
      aoe: use blk_mq_alloc_disk and blk_cleanup_disk
      floppy: use blk_mq_alloc_disk and blk_cleanup_disk
      loop: use blk_mq_alloc_disk and blk_cleanup_disk
      nbd: use blk_mq_alloc_disk and blk_cleanup_disk
      nullb: use blk_mq_alloc_disk
      pd: use blk_mq_alloc_disk and blk_cleanup_disk
      rbd: use blk_mq_alloc_disk and blk_cleanup_disk
      rnbd: use blk_mq_alloc_disk and blk_cleanup_disk
      sx8: use blk_mq_alloc_disk and blk_cleanup_disk
      xen-blkfront: use blk_mq_alloc_disk and blk_cleanup_disk
      ubi: use blk_mq_alloc_disk and blk_cleanup_disk
      scm_blk: use blk_mq_alloc_disk and blk_cleanup_disk
      amiflop: use blk_mq_alloc_disk and blk_cleanup_disk
      ataflop: use blk_mq_alloc_disk and blk_cleanup_disk
      z2ram: use blk_mq_alloc_disk and blk_cleanup_disk
      mtd_blkdevs: initialze new->rq in add_mtd_blktrans_dev
      loop: fix order of cleaning up the queue and freeing the tagset
      block: move the disk events code to a separate file
      block: add the events* attributes to disk_attrs
      block: move bdev_disk_changed
      block: pass a gendisk to bdev_disk_changed

Colin Ian King (1):
      null_blk: Fix null pointer dereference on nullb->disk on blk_cleanup_disk call

Damien Le Moal (1):
      block: Remove unnecessary elevator operation checks

Dan Carpenter (1):
      blk-mq: fix an IS_ERR() vs NULL bug

Dan Williams (1):
      libnvdimm/pmem: Fix blk_cleanup_disk() usage

Edward Hsieh (1):
      block: fix trace completion for chained bio

Jan Kara (4):
      block: Do not pull requests from the scheduler when we cannot dispatch them
      rq-qos: fix missed wake-ups in rq_qos_throttle try two
      bfq: Remove merged request already in bfq_requests_merged()
      blk: Fix lock inversion between ioc lock and bfqd lock

John Garry (2):
      blk-mq: Some tag allocation code refactoring
      blk-mq: Use request queue-wide tags for tagset-wide sbitmap

Kir Kolyshkin (3):
      docs: block/bfq: describe per-device weight
      docs/cgroup-v1/blkio: stop abusing itemized list
      docs/cgroup-v1/blkio: update for 5.x kernels

Long Li (1):
      block: return the correct bvec when checking for gaps

Luca Mariotti (1):
      block, bfq: fix delayed stable merge check

Max Gurtovoy (1):
      block: remove unneeded parenthesis from blk-sysfs

Ming Lei (9):
      block: avoid double io accounting for flush request
      blk-mq: grab rq->refcount before calling ->fn in blk_mq_tagset_busy_iter
      blk-mq: clear stale request in tags->rq[] before freeing one request pool
      blk-mq: clearing flush request reference in tags->rqs[]
      block: fix race between adding/removing rq qos and normal IO
      block: mark queue init done at the end of blk_register_queue
      blk-mq: fix use-after-free in blk_mq_exit_sched
      blk-mq: update hctx->dispatch_busy in case of real scheduler
      block: fix discard request merge

Paolo Valente (5):
      block, bfq: let also stably merged queues enjoy weight raising
      block, bfq: consider also creation time in delayed stable merge
      block, bfq: avoid delayed merge of async queues
      block, bfq: check waker only for queues with no in-flight I/O
      block, bfq: reset waker pointer with shared queues

Pietro Pedroni (1):
      block, bfq: boost throughput by extending queue-merging times

Tejun Heo (1):
      blkcg: drop CLONE_IO check in blkcg_can_attach()

Thomas Bracht Laumann Jespersen (1):
      block/partitions/msdos: Fix typo inidicator -> indicator

Yang Yingliang (1):
      aoe: remove unnecessary mutex_init()

Zhang Yi (2):
      blk-wbt: introduce a new disable state to prevent false positive by rwb_enabled()
      blk-wbt: make sure throttle is enabled properly

lijiazi (1):
      blk-wbt: remove outdated comment

zhangyi (F) (3):
      block_dump: remove block_dump feature in mark_inode_dirty()
      block_dump: remove block_dump feature
      block_dump: remove comments in docs

 .../admin-guide/cgroup-v1/blkio-controller.rst     |  155 +--
 Documentation/admin-guide/cgroup-v2.rst            |   55 +
 Documentation/admin-guide/laptops/laptop-mode.rst  |   11 -
 Documentation/admin-guide/sysctl/vm.rst            |    8 -
 Documentation/block/bfq-iosched.rst                |   38 +-
 Documentation/filesystems/locking.rst              |    2 +-
 arch/m68k/emu/nfblock.c                            |   20 +-
 arch/xtensa/platforms/iss/simdisk.c                |   29 +-
 block/Kconfig                                      |   19 +-
 block/Kconfig.iosched                              |    6 +
 block/Makefile                                     |    6 +-
 block/bfq-iosched.c                                |  115 +-
 block/bio.c                                        |   13 +-
 block/blk-cgroup.c                                 |   41 +-
 block/blk-core.c                                   |   22 +-
 block/blk-flush.c                                  |    3 +-
 block/blk-ioprio.c                                 |  262 +++++
 block/blk-ioprio.h                                 |   19 +
 block/blk-merge.c                                  |   27 +-
 block/blk-mq-debugfs.c                             |   15 +
 block/blk-mq-sched.c                               |   99 +-
 block/blk-mq-sched.h                               |    5 +-
 block/blk-mq-tag.c                                 |  114 +-
 block/blk-mq-tag.h                                 |   15 +-
 block/blk-mq.c                                     |  206 ++--
 block/blk-mq.h                                     |   14 +
 block/blk-rq-qos.c                                 |    4 +-
 block/blk-rq-qos.h                                 |   38 +-
 block/blk-sysfs.c                                  |   45 +-
 block/blk-wbt.c                                    |   12 +-
 block/blk-wbt.h                                    |    1 +
 block/blk.h                                        |   17 +-
 block/disk-events.c                                |  469 ++++++++
 block/elevator.c                                   |   17 +-
 block/genhd.c                                      |  701 ++----------
 block/ioctl.c                                      |    2 +-
 block/mq-deadline-cgroup.c                         |  126 +++
 block/mq-deadline-cgroup.h                         |  114 ++
 block/mq-deadline-main.c                           | 1175 ++++++++++++++++++++
 block/mq-deadline.c                                |  815 --------------
 block/partitions/core.c                            |  129 ++-
 block/partitions/msdos.c                           |    2 +-
 drivers/block/amiflop.c                            |   16 +-
 drivers/block/aoe/aoeblk.c                         |   33 +-
 drivers/block/aoe/aoecmd.c                         |    2 -
 drivers/block/aoe/aoedev.c                         |    3 +-
 drivers/block/ataflop.c                            |   16 +-
 drivers/block/brd.c                                |   94 +-
 drivers/block/drbd/drbd_main.c                     |   23 +-
 drivers/block/floppy.c                             |   20 +-
 drivers/block/loop.c                               |   46 +-
 drivers/block/n64cart.c                            |    8 +-
 drivers/block/nbd.c                                |   53 +-
 drivers/block/null_blk/main.c                      |   37 +-
 drivers/block/paride/pcd.c                         |   19 +-
 drivers/block/paride/pd.c                          |   30 +-
 drivers/block/paride/pf.c                          |   18 +-
 drivers/block/pktcdvd.c                            |   11 +-
 drivers/block/ps3disk.c                            |   36 +-
 drivers/block/ps3vram.c                            |   31 +-
 drivers/block/rbd.c                                |   52 +-
 drivers/block/rnbd/rnbd-clt.c                      |   35 +-
 drivers/block/rsxx/dev.c                           |   39 +-
 drivers/block/rsxx/rsxx_priv.h                     |    1 -
 drivers/block/sunvdc.c                             |   47 +-
 drivers/block/swim.c                               |   34 +-
 drivers/block/swim3.c                              |   33 +-
 drivers/block/sx8.c                                |   23 +-
 drivers/block/virtio_blk.c                         |   26 +-
 drivers/block/xen-blkfront.c                       |  104 +-
 drivers/block/z2ram.c                              |   15 +-
 drivers/block/zram/zram_drv.c                      |   37 +-
 drivers/block/zram/zram_drv.h                      |    2 +-
 drivers/cdrom/gdrom.c                              |   45 +-
 drivers/lightnvm/core.c                            |   24 +-
 drivers/md/bcache/super.c                          |   15 +-
 drivers/md/dm-rq.c                                 |    9 +-
 drivers/md/dm.c                                    |   16 +-
 drivers/md/md.c                                    |   25 +-
 drivers/md/md.h                                    |    6 +-
 drivers/memstick/core/ms_block.c                   |   26 +-
 drivers/memstick/core/mspro_block.c                |   26 +-
 drivers/mtd/mtd_blkdevs.c                          |   49 +-
 drivers/mtd/ubi/block.c                            |   68 +-
 drivers/nvdimm/blk.c                               |   27 +-
 drivers/nvdimm/btt.c                               |   25 +-
 drivers/nvdimm/btt.h                               |    2 -
 drivers/nvdimm/pmem.c                              |   21 +-
 drivers/nvme/host/core.c                           |    1 -
 drivers/nvme/host/multipath.c                      |   46 +-
 drivers/s390/block/dasd_genhd.c                    |   12 +-
 drivers/s390/block/dcssblk.c                       |   26 +-
 drivers/s390/block/scm_blk.c                       |   21 +-
 drivers/s390/block/xpram.c                         |   26 +-
 drivers/scsi/sd.c                                  |    4 +-
 fs/block_dev.c                                     |  244 ++--
 fs/btrfs/volumes.c                                 |    2 +-
 fs/fs-writeback.c                                  |   25 -
 fs/super.c                                         |    8 +-
 include/linux/bio.h                                |   12 +-
 include/linux/blk-mq.h                             |   24 +-
 include/linux/blk_types.h                          |    4 -
 include/linux/blkdev.h                             |    5 +-
 include/linux/elevator.h                           |    4 +-
 include/linux/genhd.h                              |   32 +-
 include/linux/wait.h                               |    2 +-
 include/linux/writeback.h                          |    1 -
 init/do_mounts.c                                   |   10 +-
 kernel/sched/wait.c                                |    9 +-
 kernel/sysctl.c                                    |    8 -
 mm/page-writeback.c                                |    5 -
 111 files changed, 3776 insertions(+), 3069 deletions(-)
 create mode 100644 block/blk-ioprio.c
 create mode 100644 block/blk-ioprio.h
 create mode 100644 block/disk-events.c
 create mode 100644 block/mq-deadline-cgroup.c
 create mode 100644 block/mq-deadline-cgroup.h
 create mode 100644 block/mq-deadline-main.c
 delete mode 100644 block/mq-deadline.c

Comments

pr-tracker-bot@kernel.org June 30, 2021, 8:21 p.m. UTC | #1
The pull request you sent on Tue, 29 Jun 2021 13:39:34 -0600:

> git://git.kernel.dk/linux-block.git tags/for-5.14/block-2021-06-29

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/df668a5fe461bb9d7e899c538acc7197746038f4

Thank you!