[GIT PULL] Block changes for 5.19-rc

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

 



Hi Linus,

Here are the core block changes for 5.19. This pull request contains:

- blk-throttle accounting fix (Laibin)

- Series removing redundant assignments (Michal)

- Expose bio cache via the bio_set, so that DM can use it (Mike)

- Series finishing off the bio allocation interface cleanups by dealing
  with the weirdest member of the family. bio_kmalloc combines a
  kmalloc for the bio and bio_vecs with a hidden bio_init call and magic
  cleanup semantics (Christoph)

- Series cleaning up the block layer API so that APIs consumed by file
  systems are (almost) only struct block_device based, so that file
  systems don't have to poke into block layer internals like the
  request_queue (Christoph)

- Series cleaning up the blk_execute_rq* API (Christoph)

- Series cleaning up various lose end in the blk-cgroup code to make it
  easier to follow in preparation of reworking the blkcg assignment for
  bios (Christoph)

- BFQ series fixing use-after-free issues in BFQ when processes with   
  merged queues get moved to different cgroups (Jan)

- BFQ fies (Jan)

- Various fixes and cleanups (Bart, Chengming, Fanjun, Julia, Ming,
  Wolfgang, me)

Please pull!


The following changes since commit b2d229d4ddb17db541098b83524d901257e93845:

  Linux 5.18-rc3 (2022-04-17 13:57:31 -0700)

are available in the Git repository at:

  git://git.kernel.dk/linux-block.git tags/for-5.19/block-2022-05-22

for you to fetch changes up to 2aaf516084184e4e6f80da01b2b3ed882fd20a79:

  blk-mq: fix typo in comment (2022-05-21 06:32:16 -0600)

----------------------------------------------------------------
for-5.19/block-2022-05-22

----------------------------------------------------------------
Bart Van Assche (1):
      block: Fix the bio.bi_opf comment

Chengming Zhou (1):
      blk-iocost: combine local_stat and desc_stat to stat

Christoph Hellwig (52):
      btrfs: simplify ->flush_bio handling
      squashfs: always use bio_kmalloc in squashfs_bio_read
      target/pscsi: remove pscsi_get_bio
      block: turn bio_kmalloc into a simple kmalloc wrapper
      pktcdvd: stop using bio_reset
      target: remove an incorrect unmap zeroes data deduction
      target: pass a block_device to target_configure_unmap_from_queue
      target: fix discard alignment on partitions
      drbd: remove assign_p_sizes_qlim
      drbd: use bdev based limit helpers in drbd_send_sizes
      drbd: use bdev_alignment_offset instead of queue_alignment_offset
      drbd: cleanup decide_on_discard_support
      btrfs: use bdev_max_active_zones instead of open coding it
      ntfs3: use bdev_logical_block_size instead of open coding it
      mm: use bdev_is_zoned in claim_swapfile
      block: add a bdev_nonrot helper
      block: add a bdev_write_cache helper
      block: add a bdev_fua helper
      block: add a bdev_stable_writes helper
      block: add a bdev_max_zone_append_sectors helper
      block: use bdev_alignment_offset in part_alignment_offset_show
      block: use bdev_alignment_offset in disk_alignment_offset_show
      block: move bdev_alignment_offset and queue_limit_alignment_offset out of line
      block: remove queue_discard_alignment
      block: use bdev_discard_alignment in part_discard_alignment_show
      block: move {bdev,queue_limit}_discard_alignment out of line
      block: refactor discard bio size limiting
      block: add a bdev_max_discard_sectors helper
      block: remove QUEUE_FLAG_DISCARD
      block: add a bdev_discard_granularity helper
      block: decouple REQ_OP_SECURE_ERASE from REQ_OP_DISCARD
      direct-io: remove random prefetches
      blk-cgroup: remove __bio_blkcg
      nvme-fc: don't support the appid attribute without CONFIG_BLK_CGROUP_FC_APPID
      nvme-fc: fold t fc_update_appid into fc_appid_store
      blk-cgroup: move blkcg_{get,set}_fc_appid out of line
      blk-cgroup: move blk_cgroup_congested out line
      blk-cgroup: move blkcg_{pin,unpin}_online out of line
      blk-cgroup: move struct blkcg to block/blk-cgroup.h
      blktrace: cleanup the __trace_note_message interface
      blk-cgroup: replace bio_blkcg with bio_blkcg_css
      blk-cgroup: remove pointless CONFIG_BLOCK ifdefs
      blk-cgroup: remove unneeded includes from <linux/blk-cgroup.h>
      blk-cgroup: move blkcg_css to blk-cgroup.c
      blk-cgroup: cleanup blk_cgroup_congested
      blk-cgroup: cleanup blkcg_maybe_throttle_current
      kthread: unexport kthread_blkcg
      block: remove superfluous calls to blkcg_bio_issue_init
      block: allow passing a NULL bdev to bio_alloc_clone/bio_init_clone
      block: improve the error message from bio_check_eod
      block: reorder the REQ_ flags
      block: cleanup the VM accounting in submit_bio

Fanjun Kong (1):
      blk-cgroup: Remove unnecessary rcu_read_lock/unlock()

Jan Kara (13):
      bfq: Avoid false marking of bic as stably merged
      bfq: Avoid merging queues with different parents
      bfq: Split shared queues on move between cgroups
      bfq: Update cgroup information before merging bio
      bfq: Drop pointless unlock-lock pair
      bfq: Remove pointless bfq_init_rq() calls
      bfq: Track whether bfq_group is still online
      bfq: Get rid of __bio_blkcg() usage
      bfq: Make sure bfqg for which we are queueing requests is online
      bfq: Relax waker detection for shared queues
      bfq: Allow current waker to defend against a tentative one
      bfq: Remove superfluous conversion from RQ_BIC()
      bfq: Remove bfq_requeue_request_body()

Jens Axboe (1):
      blk-cgroup: delete rcu_read_lock_held() WARN_ON_ONCE()

Julia Lawall (1):
      blk-mq: fix typo in comment

Laibin Qiu (1):
      blk-throttle: Set BIO_THROTTLED when bio has been throttled

Michal Orzel (5):
      block/badblocks: Remove redundant assignments
      block/blk-map: Remove redundant assignment
      block/partitions/acorn: Remove redundant assignments
      block/partitions/atari: Remove redundant assignment
      block/partitions/ldm: Remove redundant assignments

Mike Snitzer (2):
      block: allow using the per-cpu bio cache from bio_alloc_bioset
      block: allow use of per-cpu bio alloc cache by block drivers

Ming Lei (2):
      block: change exported IO accounting interface from gendisk to bdev
      block: ignore RWF_HIPRI hint for sync dio

Wolfgang Bumiller (1):
      blk-cgroup: always terminate io.stat lines

Yu Kuai (2):
      block, bfq: protect 'bfqd->queued' by 'bfqd->lock'
      block, bfq: make bfq_has_work() more accurate

 arch/um/drivers/ubd_kern.c           |   2 -
 block/Makefile                       |   1 +
 block/badblocks.c                    |   2 -
 block/bfq-cgroup.c                   | 111 +++++++++------
 block/bfq-iosched.c                  |  95 +++++++------
 block/bfq-iosched.h                  |  11 +-
 block/bio.c                          | 146 +++++++++-----------
 block/blk-cgroup-fc-appid.c          |  57 ++++++++
 block/blk-cgroup.c                   | 168 +++++++++++++++++------
 block/blk-cgroup.h                   | 140 ++++++++++++-------
 block/blk-core.c                     |  81 ++++-------
 block/blk-crypto-fallback.c          |  15 +-
 block/blk-iocost.c                   |  76 +++++------
 block/blk-iolatency.c                |   8 +-
 block/blk-lib.c                      | 124 ++++++++++-------
 block/blk-map.c                      |  47 ++++---
 block/blk-mq-debugfs.c               |   2 -
 block/blk-mq.c                       |   2 +-
 block/blk-settings.c                 |  74 +++++++++-
 block/blk-throttle.c                 |   5 +-
 block/blk.h                          |  21 ---
 block/bounce.c                       |   1 -
 block/fops.c                         |  35 ++---
 block/genhd.c                        |   4 +-
 block/ioctl.c                        |  48 +++++--
 block/partitions/acorn.c             |   4 +-
 block/partitions/atari.c             |   1 -
 block/partitions/core.c              |  12 +-
 block/partitions/ldm.c               |  15 +-
 drivers/block/drbd/drbd_main.c       |  51 ++++---
 drivers/block/drbd/drbd_nl.c         |  94 ++++++-------
 drivers/block/drbd/drbd_receiver.c   |  13 +-
 drivers/block/loop.c                 |  27 ++--
 drivers/block/nbd.c                  |   5 +-
 drivers/block/null_blk/main.c        |   1 -
 drivers/block/pktcdvd.c              |  34 ++---
 drivers/block/rbd.c                  |   1 -
 drivers/block/rnbd/rnbd-clt.c        |   6 +-
 drivers/block/rnbd/rnbd-srv-dev.h    |   8 +-
 drivers/block/rnbd/rnbd-srv.c        |   5 +-
 drivers/block/virtio_blk.c           |   2 -
 drivers/block/xen-blkback/blkback.c  |  15 +-
 drivers/block/xen-blkback/xenbus.c   |   9 +-
 drivers/block/xen-blkfront.c         |   8 +-
 drivers/block/zram/zram_drv.c        |   6 +-
 drivers/md/bcache/alloc.c            |   2 +-
 drivers/md/bcache/debug.c            |  10 +-
 drivers/md/bcache/request.c          |   4 +-
 drivers/md/bcache/super.c            |   3 +-
 drivers/md/bcache/sysfs.c            |   2 +-
 drivers/md/dm-bufio.c                |   9 +-
 drivers/md/dm-cache-target.c         |   9 +-
 drivers/md/dm-clone-target.c         |   9 +-
 drivers/md/dm-io.c                   |   2 +-
 drivers/md/dm-log-writes.c           |   3 +-
 drivers/md/dm-raid.c                 |   9 +-
 drivers/md/dm-table.c                |  25 +---
 drivers/md/dm-thin.c                 |  15 +-
 drivers/md/dm.c                      |   3 +-
 drivers/md/md-linear.c               |  11 +-
 drivers/md/md.c                      |   5 +-
 drivers/md/raid0.c                   |   7 -
 drivers/md/raid1.c                   |  30 ++--
 drivers/md/raid10.c                  |  41 +++---
 drivers/md/raid5-cache.c             |   8 +-
 drivers/md/raid5.c                   |  14 +-
 drivers/mmc/core/queue.c             |   3 +-
 drivers/mtd/mtd_blkdevs.c            |   1 -
 drivers/nvme/host/core.c             |   4 +-
 drivers/nvme/host/fc.c               |  26 ++--
 drivers/nvme/target/io-cmd-bdev.c    |   2 +-
 drivers/nvme/target/zns.c            |   3 +-
 drivers/s390/block/dasd_fba.c        |   1 -
 drivers/scsi/lpfc/lpfc_scsi.c        |   4 +-
 drivers/scsi/sd.c                    |   2 -
 drivers/target/target_core_device.c  |  20 ++-
 drivers/target/target_core_file.c    |  10 +-
 drivers/target/target_core_iblock.c  |  17 +--
 drivers/target/target_core_pscsi.c   |  36 +----
 fs/btrfs/disk-io.c                   |  11 +-
 fs/btrfs/extent-tree.c               |   8 +-
 fs/btrfs/ioctl.c                     |  12 +-
 fs/btrfs/volumes.c                   |  15 +-
 fs/btrfs/volumes.h                   |   4 +-
 fs/btrfs/zoned.c                     |   3 +-
 fs/direct-io.c                       |  32 +----
 fs/exfat/file.c                      |   5 +-
 fs/exfat/super.c                     |  10 +-
 fs/ext4/ioctl.c                      |  10 +-
 fs/ext4/mballoc.c                    |  10 +-
 fs/ext4/super.c                      |  10 +-
 fs/f2fs/f2fs.h                       |   3 +-
 fs/f2fs/file.c                       |  19 ++-
 fs/f2fs/segment.c                    |   8 +-
 fs/fat/file.c                        |   5 +-
 fs/fat/inode.c                       |  10 +-
 fs/gfs2/rgrp.c                       |   7 +-
 fs/iomap/direct-io.c                 |  10 +-
 fs/jbd2/journal.c                    |   9 +-
 fs/jfs/ioctl.c                       |   5 +-
 fs/jfs/super.c                       |   8 +-
 fs/nilfs2/ioctl.c                    |   6 +-
 fs/nilfs2/sufile.c                   |   4 +-
 fs/nilfs2/the_nilfs.c                |   4 +-
 fs/ntfs3/file.c                      |   6 +-
 fs/ntfs3/super.c                     |  10 +-
 fs/ocfs2/ioctl.c                     |   5 +-
 fs/squashfs/block.c                  |  20 ++-
 fs/super.c                           |   2 +-
 fs/xfs/xfs_discard.c                 |   8 +-
 fs/xfs/xfs_log_cil.c                 |   2 +-
 fs/xfs/xfs_super.c                   |  12 +-
 fs/zonefs/super.c                    |   3 +-
 include/linux/backing-dev.h          |   6 +-
 include/linux/bio.h                  |  10 +-
 include/linux/blk-cgroup.h           | 258 +++--------------------------------
 include/linux/blk_types.h            |  21 +--
 include/linux/blkdev.h               | 119 +++++++---------
 include/linux/blktrace_api.h         |  10 +-
 include/linux/kthread.h              |   4 -
 include/target/target_core_backend.h |   4 +-
 kernel/kthread.c                     |   1 -
 kernel/trace/blktrace.c              |  26 ++--
 mm/backing-dev.c                     |  19 ++-
 mm/page_io.c                         |   4 +-
 mm/readahead.c                       |   1 +
 mm/swapfile.c                        |  32 ++---
 127 files changed, 1248 insertions(+), 1506 deletions(-)
 create mode 100644 block/blk-cgroup-fc-appid.c

-- 
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