From: Jens Axboe <axboe@kernel.dk>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: "linux-block@vger.kernel.org" <linux-block@vger.kernel.org>
Subject: [GIT PULL] Block updates for 5.10-rc1
Date: Mon, 12 Oct 2020 07:40:45 -0600 [thread overview]
Message-ID: <deaa5b65-55f6-7ca5-e96c-9ea704c0eaee@kernel.dk> (raw)
Hi Linus,
Here's the 5.10 merge window block pull request:
- Series of merge handling cleanups (Baolin, Christoph)
- Series of blk-throttle fixes and cleanups (Baolin)
- Series cleaning up BDI, seperating the block device from the
backing_dev_info (Christoph)
- Removal of bdget() as a generic API (Christoph)
- Removal of blkdev_get() as a generic API (Christoph)
- Cleanup of is-partition checks (Christoph)
- Series reworking disk revalidation (Christoph)
- Series cleaning up bio flags (Christoph)
- bio crypt fixes (Eric)
- IO stats inflight tweak (Gabriel)
- blk-mq tags fixes (Hannes)
- Buffer invalidation fixes (Jan)
- Allow soft limits for zone append (Johannes)
- Shared tag set improvements (John, Kashyap)
- Allow IOPRIO_CLASS_RT for CAP_SYS_NICE (Khazhismel)
- DM no-wait support (Mike, Konstantin)
- Request allocation improvements (Ming)
- Allow md/dm/bcache to use IO stat helpers (Song)
- Series improving blk-iocost (Tejun)
- Various cleanups (Geert, Damien, Danny, Julia, Tetsuo, Tian, Wang,
Xianting, Yang, Yufen, yangerkun)
Please pull!
The following changes since commit e11d80a849e010f78243bb6f6af7dccef3a71a90:
blk-stat: make q->stats->lock irqsafe (2020-09-01 16:48:46 -0600)
are available in the Git repository at:
git://git.kernel.dk/linux-block.git tags/block-5.10-2020-10-12
for you to fetch changes up to 8858e8d98d5457ba23bcd0d99ce23e272b8b09a1:
block: fix uapi blkzoned.h comments (2020-10-09 12:47:02 -0600)
----------------------------------------------------------------
block-5.10-2020-10-12
----------------------------------------------------------------
Baolin Wang (20):
block: Move bio merge related functions into blk-merge.c
block: Move blk_mq_bio_list_merge() into blk-merge.c
block: Add a new helper to attempt to merge a bio
block: Remove blk_mq_attempt_merge() function
block: Remove a duplicative condition
block: Remove unused blk_mq_sched_free_hctx_data()
blk-throttle: Fix some comments' typos
blk-throttle: Use readable READ/WRITE macros
blk-throttle: Define readable macros instead of static variables
blk-throttle: Avoid calculating bps/iops limitation repeatedly
blk-throttle: Avoid checking bps/iops limitation if bps or iops is unlimited
block: Remove redundant 'return' statement
blk-throttle: Remove a meaningless parameter for throtl_downgrade_state()
blk-throttle: Avoid getting the current time if tg->last_finish_time is 0
blk-throttle: Avoid tracking latency if low limit is invalid
blk-throttle: Fix IO hang for a corner case
blk-throttle: Move the list operation after list validation
blk-throttle: Move service tree validation out of the throtl_rb_first()
blk-throttle: Open code __throtl_de/enqueue_tg()
blk-throttle: Re-use the throtl_set_slice_end()
Christoph Hellwig (87):
block: replace bd_set_size with bd_set_nr_sectors
block: fix locking for struct block_device size updates
nvme: don't call revalidate_disk from nvme_set_queue_dying
block: remove the BIO_NULL_MAPPED flag
block: remove __blk_rq_unmap_user
block: remove __blk_rq_map_user_iov
block: remove the BIO_USER_MAPPED flag
raw: deprecate the raw driver
block: remove the alignment_offset field from struct hd_struct
block: remove the discard_alignment field from struct hd_struct
block: remove an outdated comment on the bd_dev field
block: move the devcgroup_inode_permission call to blkdev_get
block: cleanup __alloc_disk_node
block: remove the disk argument to delete_partition
block: remove the unused q argument to part_in_flight and part_in_flight_rw
Documentation/filesystems/locking.rst: remove an incorrect sentence
block: don't clear bd_invalidated in check_disk_size_change
block: rename bd_invalidated
block: add a new revalidate_disk_size helper
block: use revalidate_disk_size in set_capacity_revalidate_and_notify
nvme: opencode revalidate_disk in nvme_validate_ns
sd: open code revalidate_disk
nvdimm: simplify revalidate_disk handling
block: remove revalidate_disk()
block: add helper macros for queue sysfs entries
block: make QUEUE_SYSFS_BIT_FNS more useful
block: add a bdev_check_media_change helper
amiflop: use bdev_check_media_change
ataflop: use bdev_check_media_change
floppy: use bdev_check_media_change
swim: use bdev_check_media_change
swim: simplify media change handling
swim3: use bdev_check_media_changed
xsysace: use bdev_check_media_change
xsysace: simplify media change handling
paride/pcd: use bdev_check_media_change
gdrom: use bdev_check_media_change
ide-cd: use bdev_check_media_changed
ide-cd: remove idecd_revalidate_disk
ide-gd: stop using the disk events mechanism
md: use bdev_check_media_change
sd: use bdev_check_media_change
sr: use bdev_check_media_change
sr: simplify sr_block_revalidate_disk
block: remove check_disk_change
block: fix bmd->is_null_mapped initialization
block: move the NEED_PART_SCAN flag to struct gendisk
block: cleanup partition scanning in register_disk
block: cleanup blkdev_bszset
pktcdvd: remove the if 0'ed pkt_start_recovery function
pktcdvd: use blkdev_get_by_dev instead of open coding it
zram: cleanup backing_dev_store
raw: don't keep unopened block device around
dasd: cleanup dasd_scan_partitions
ocfs2: cleanup o2hb_region_dev_store
mm: cleanup claim_swapfile
PM: rewrite is_hibernate_resume_dev to not require an inode
mm: split swap_type_of
PM: mm: cleanup swsusp_swap_check
block: mark blkdev_get static
fs: remove the unused SB_I_MULTIROOT flag
drbd: remove dead code in device_to_statistics
bcache: inherit the optimal I/O size
aoe: set an optimal I/O size
bdi: initialize ->ra_pages and ->io_pages in bdi_init
md: update the optimal I/O size on reshape
block: lift setting the readahead size into the block layer
bdi: remove BDI_CAP_CGROUP_WRITEBACK
bdi: remove BDI_CAP_SYNCHRONOUS_IO
mm: use SWP_SYNCHRONOUS_IO more intelligently
bdi: replace BDI_CAP_STABLE_WRITES with a queue and a sb flag
bdi: invert BDI_CAP_NO_ACCT_WB
bdi: replace BDI_CAP_NO_{WRITEBACK,ACCT_DIRTY} with a single flag
Documentation/hdio: fix up obscure bd_contains references
block: add a bdev_is_partition helper
md: compare bd_disk instead of bd_contains
md: don't detour through bd_contains for the gendisk
drbd: don't detour through bd_contains for the gendisk
drbd: don't set ->bd_contains
target/iblock: fix holder printing in iblock_show_configfs_dev_params
block: use bd_partno in bdevname
vsprintf: use bd_partno in bdev_name
drbd: remove ->this_bdev
block: add a bdget_part helper
block: remove the unused blk_integrity_merge_rq export
block: remove the unused blk_integrity_merge_bio export
block: move blk_mq_sched_try_merge to blk-merge.c
Damien Le Moal (1):
block: fix uapi blkzoned.h comments
Danny Lin (1):
blk-wbt: Remove obsolete multiqueue I/O scheduling comment
Eric Biggers (3):
block: make bio_crypt_clone() able to fail
block: make blk_crypto_rq_bio_prep() able to fail
block: warn if !__GFP_DIRECT_RECLAIM in bio_crypt_set_ctx()
Gabriel Krisman Bertazi (1):
block: Consider only dispatched requests for inflight statistic
Geert Uytterhoeven (1):
block: Make request_queue.rpm_status an enum
Hannes Reinecke (2):
blk-mq: Rename blk_mq_update_tag_set_depth()
blk-mq: Free tags in blk_mq_init_tags() upon error
Jan Kara (2):
fs: Don't invalidate page buffers in block_write_full_page()
block: Do not discard buffers under a mounted filesystem
Jens Axboe (1):
Merge branch 'block-5.9' into for-5.10/block
Johannes Thumshirn (1):
block: soft limit zone-append sectors as well
John Garry (6):
blk-mq: Pass flags for tag init/free
blk-mq: Use pointers for blk_mq_tags bitmap tags
blk-mq: Facilitate a shared sbitmap per tagset
blk-mq: Relocate hctx_may_queue()
blk-mq: Record nr_active_requests per queue for when using shared sbitmap
blk-mq: Record active_queues_shared_sbitmap per tag_set for when using shared sbitmap
Julia Lawall (1):
block: drop double zeroing
Kashyap Desai (1):
blk-mq, elevator: Count requests per hctx to improve performance
Khazhismel Kumykov (1):
block: grant IOPRIO_CLASS_RT to CAP_SYS_NICE
Konstantin Khlebnikov (1):
dm: add support for REQ_NOWAIT and enable it for linear target
Mike Snitzer (3):
block: use lcm_not_zero() when stacking chunk_sectors
block: allow 'chunk_sectors' to be non-power-of-2
block: add QUEUE_FLAG_NOWAIT
Ming Lei (5):
blk-mq: Rename BLK_MQ_F_TAG_SHARED as BLK_MQ_F_TAG_QUEUE_SHARED
blk-mq: always allow reserved allocation in hctx_may_queue
percpu_ref: reduce memory footprint of percpu_ref in fast path
block: move 'q_usage_counter' into front of 'request_queue'
percpu_ref: don't refer to ref->data if it isn't allocated
Ritika Srivastava (2):
block: Return blk_status_t instead of errno codes
block: better deal with the delayed not supported case in blk_cloned_rq_check_limits
Song Liu (3):
block: introduce part_[begin|end]_io_acct
md: use part_[begin|end]_io_acct instead of disk_[begin|end]_io_acct
bcache: use part_[begin|end]_io_acct instead of disk_[begin|end]_io_acct
Tejun Heo (33):
blk-iocost: use local[64]_t for percpu stat
blk-iocost: rename propagate_active_weights() to propagate_weights()
blk-iocost: clamp inuse and skip noops in __propagate_weights()
blk-iocost: move iocg_kick_delay() above iocg_kick_waitq()
blk-iocost: make iocg_kick_waitq() call iocg_kick_delay() after paying debt
blk-iocost: s/HWEIGHT_WHOLE/WEIGHT_ONE/g
blk-iocost: use WEIGHT_ONE based fixed point number for weights
blk-iocost: make ioc_now->now and ioc->period_at 64bit
blk-iocost: streamline vtime margin and timer slack handling
blk-iocost: grab ioc->lock for debt handling
blk-iocost: add absolute usage stat
blk-iocost: calculate iocg->usages[] from iocg->local_stat.usage_us
blk-iocost: replace iocg->has_surplus with ->surplus_list
blk-iocost: decouple vrate adjustment from surplus transfers
blk-iocost: restructure surplus donation logic
blk-iocost: implement Andy's method for donation weight updates
blk-iocost: revamp donation amount determination
blk-iocost: revamp in-period donation snapbacks
blk-iocost: revamp debt handling
blk-iocost: implement delay adjustment hysteresis
blk-iocost: halve debts if device stays idle
blk-iocost: implement vtime loss compensation
blk-iocost: restore inuse update tracepoints
blk-iocost: add three debug stat - cost.wait, indebt and indelay
blk-iocost: update iocost_monitor.py
blk-iocost: fix divide-by-zero in transfer_surpluses()
iocost: fix infinite loop bug in adjust_inuse_and_calc_cost()
iocost: factor out ioc_forgive_debts()
iocost: replace nr_shortages cond in ioc_forgive_debts() with busy_level one
iocost: recalculate delay after debt reduction
iocost: reimplement debt forgiveness using average usage
iocost: add iocg_forgive_debt tracepoint
iocost: consider iocgs with active delays for debt forgiveness
Tetsuo Handa (1):
block: ratelimit handle_bad_sector() message
Tian Tao (2):
virtio-blk: Use kobj_to_dev() instead of container_of()
block: remove duplicate include statement in scsi_ioctl.c
Wang Hai (1):
blktrace: make function blk_trace_bio_get_cgid() static
Xianting Tian (3):
blk-mq: use BLK_MQ_NO_TAG for no tag
blkcg: add plugging support for punt bio
blk-mq: add cond_resched() in __blk_mq_alloc_rq_maps()
Yang Yang (1):
blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue
Yufen Yu (7):
block: invoke blk_mq_exit_sched no matter whether have .exit_sched
block: remove redundant mq check
block: use helper function to test queue register
blk-mq: use helper function to test hw stopped
block: fix comment and add lockdep assert
block: get rid of unnecessary local variable
blk-mq: get rid of the dead flush handle code path
yangerkun (1):
block-mq: fix comments in blk_mq_queue_tag_busy_iter
Documentation/filesystems/locking.rst | 3 -
Documentation/userspace-api/ioctl/hdio.rst | 24 +-
block/Kconfig | 2 -
block/bfq-iosched.c | 9 +-
block/bio.c | 20 +-
block/blk-cgroup.c | 32 +-
block/blk-core.c | 260 ++-----
block/blk-crypto-internal.h | 21 +-
block/blk-crypto.c | 33 +-
block/blk-integrity.c | 6 +-
block/blk-iocost.c | 1623 +++++++++++++++++++++++++++++++++----------
block/blk-iolatency.c | 2 +-
block/blk-lib.c | 2 +-
block/blk-map.c | 177 ++---
block/blk-merge.c | 245 ++++++-
block/blk-mq-debugfs.c | 11 +-
block/blk-mq-sched.c | 156 +----
block/blk-mq-sched.h | 3 -
block/blk-mq-sysfs.c | 2 -
block/blk-mq-tag.c | 156 +++--
block/blk-mq-tag.h | 56 +-
block/blk-mq.c | 101 ++-
block/blk-mq.h | 76 +-
block/blk-settings.c | 40 +-
block/blk-sysfs.c | 291 ++------
block/blk-throttle.c | 128 ++--
block/blk.h | 29 +-
block/bounce.c | 19 +-
block/bsg-lib.c | 2 +-
block/elevator.c | 23 +-
block/genhd.c | 160 +++--
block/ioctl.c | 33 +-
block/ioprio.c | 2 +-
block/kyber-iosched.c | 6 +-
block/mq-deadline.c | 6 +
block/partitions/core.c | 29 +-
block/scsi_ioctl.c | 4 +-
drivers/block/amiflop.c | 2 +-
drivers/block/aoe/aoeblk.c | 3 +-
drivers/block/aoe/aoecmd.c | 4 +-
drivers/block/ataflop.c | 7 +-
drivers/block/brd.c | 1 -
drivers/block/drbd/drbd_actlog.c | 2 +-
drivers/block/drbd/drbd_int.h | 1 -
drivers/block/drbd/drbd_main.c | 31 +-
drivers/block/drbd/drbd_nl.c | 26 +-
drivers/block/drbd/drbd_receiver.c | 12 +-
drivers/block/drbd/drbd_req.c | 2 +-
drivers/block/drbd/drbd_worker.c | 6 +-
drivers/block/floppy.c | 8 +-
drivers/block/loop.c | 4 +-
drivers/block/nbd.c | 15 +-
drivers/block/paride/pcd.c | 2 +-
drivers/block/pktcdvd.c | 94 +--
drivers/block/rbd.c | 4 +-
drivers/block/rnbd/rnbd-clt.c | 12 +-
drivers/block/swim.c | 22 +-
drivers/block/swim3.c | 4 +-
drivers/block/virtio_blk.c | 4 +-
drivers/block/xsysace.c | 26 +-
drivers/block/zram/zram_drv.c | 30 +-
drivers/cdrom/gdrom.c | 2 +-
drivers/char/raw.c | 56 +-
drivers/ide/ide-cd.c | 16 +-
drivers/ide/ide-disk.c | 5 +-
drivers/ide/ide-floppy.c | 2 -
drivers/ide/ide-gd.c | 48 +-
drivers/ide/ide-ioctls.c | 4 +-
drivers/infiniband/sw/rdmavt/mr.c | 2 +-
drivers/md/bcache/request.c | 10 +-
drivers/md/bcache/super.c | 5 +-
drivers/md/dm-linear.c | 5 +-
drivers/md/dm-raid.c | 2 +-
drivers/md/dm-table.c | 43 +-
drivers/md/dm.c | 26 +-
drivers/md/md-cluster.c | 6 +-
drivers/md/md-linear.c | 2 +-
drivers/md/md.c | 29 +-
drivers/md/md.h | 4 +-
drivers/md/raid0.c | 16 -
drivers/md/raid10.c | 46 +-
drivers/md/raid5.c | 31 +-
drivers/mmc/core/block.c | 2 +-
drivers/mmc/core/queue.c | 3 +-
drivers/mtd/mtdcore.c | 2 +
drivers/nvdimm/blk.c | 3 +-
drivers/nvdimm/btt.c | 5 +-
drivers/nvdimm/bus.c | 9 +-
drivers/nvdimm/nd.h | 2 +-
drivers/nvdimm/pmem.c | 4 +-
drivers/nvme/host/core.c | 53 +-
drivers/nvme/host/multipath.c | 10 +-
drivers/nvme/host/nvme.h | 13 -
drivers/s390/block/dasd_genhd.c | 15 +-
drivers/s390/block/dasd_ioctl.c | 17 +-
drivers/scsi/iscsi_tcp.c | 4 +-
drivers/scsi/sd.c | 13 +-
drivers/scsi/sr.c | 36 +-
drivers/target/target_core_iblock.c | 5 +-
fs/9p/vfs_file.c | 2 +-
fs/9p/vfs_super.c | 6 +-
fs/afs/super.c | 1 -
fs/block_dev.c | 184 +++--
fs/btrfs/disk-io.c | 2 -
fs/buffer.c | 16 -
fs/fs-writeback.c | 7 +-
fs/fuse/inode.c | 4 +-
fs/namei.c | 4 +-
fs/nfs/super.c | 9 +-
fs/nfsd/blocklayout.c | 4 +-
fs/ocfs2/cluster/heartbeat.c | 28 +-
fs/super.c | 2 +
fs/ubifs/super.c | 2 +
fs/vboxsf/super.c | 2 +
include/linux/backing-dev.h | 78 +--
include/linux/blk-crypto.h | 20 +-
include/linux/blk-mq.h | 15 +-
include/linux/blk_types.h | 7 +-
include/linux/blkdev.h | 84 ++-
include/linux/device-mapper.h | 6 +
include/linux/fs.h | 2 +-
include/linux/genhd.h | 15 +-
include/linux/ide.h | 2 -
include/linux/percpu-refcount.h | 52 +-
include/linux/suspend.h | 4 +-
include/linux/swap.h | 3 +-
include/trace/events/iocost.h | 67 +-
include/uapi/linux/blkzoned.h | 15 +-
include/uapi/linux/capability.h | 2 +
kernel/power/swap.c | 21 +-
kernel/power/user.c | 26 +-
kernel/trace/blktrace.c | 13 +-
lib/percpu-refcount.c | 131 +++-
lib/vsprintf.c | 4 +-
mm/backing-dev.c | 14 +-
mm/filemap.c | 4 +-
mm/memcontrol.c | 2 +-
mm/memory-failure.c | 2 +-
mm/migrate.c | 2 +-
mm/mmap.c | 2 +-
mm/page-writeback.c | 18 +-
mm/page_io.c | 18 +-
mm/swapfile.c | 49 +-
tools/cgroup/iocost_monitor.py | 54 +-
144 files changed, 3229 insertions(+), 2446 deletions(-)
--
Jens Axboe
next reply other threads:[~2020-10-12 13:58 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-12 13:40 Jens Axboe [this message]
2020-10-13 19:47 ` [GIT PULL] Block updates for 5.10-rc1 pr-tracker-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=deaa5b65-55f6-7ca5-e96c-9ea704c0eaee@kernel.dk \
--to=axboe@kernel.dk \
--cc=linux-block@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).