Jens Axboe (5):
block: move cgroup time handling code into blk.h
block: add blk_time_get_ns() and blk_time_get() helpers
block: cache current nsec time in struct blk_plug
block: update cached timestamp post schedule/preemption
block: limit block time caching to in_task() context
Kundan Kumar (1):
block: skip QUEUE_FLAG_STATS and rq-qos for passthrough io
Yu Kuai (20):
blk-io-hierarchy: support hierarchy stats for blk-throttle
block: fix that blk_time_get_ns() doesn't update time after schedule
block: fix kabi broken after caching ns time in blk_plug
block: support to recored bio allocation time
block: support to recored bio allocation task
block: support to recored bio allocation time in request
block: support to recored bio allocation task in request
block: support to record when request is completed
block-io-hierarchy: core hierarchy stats and iodump implementation
blk-io-hierarchy: support new bio based stage wbt
blk-io-hierarchy: support new bio based stage iocost
blk-io-hierarchy: support new bio based stage gettag
blk-io-hierarchy: support new rq based stage plug
blk-io-hierarchy: support new rq based stage mq-deadline
blk-io-hierarchy: support new rq based stage bfq
blk-io-hierarchy: support new rq based stage kyber
blk-io-hierarchy: support new rq based stage hctx
blk-io-hierarchy: support new rq based stage requeue
blk-io-hierarchy: support new rq based stage rq_driver
blk-io-hierarchy: support hierarchy stats for bio lifetime
arch/arm64/configs/openeuler_defconfig | 1 +
arch/powerpc/configs/openeuler_defconfig | 1 +
arch/riscv/configs/openeuler_defconfig | 1 +
arch/x86/configs/openeuler_defconfig | 1 +
block/Kconfig | 7 +
block/Makefile | 1 +
block/bfq-cgroup.c | 14 +-
block/bfq-iosched.c | 39 +-
block/bio.c | 22 +
block/blk-cgroup.c | 2 +-
block/blk-cgroup.h | 4 +
block/blk-core.c | 11 +
block/blk-flush.c | 13 +-
block/blk-io-hierarchy/Kconfig | 156 +++++
block/blk-io-hierarchy/Makefile | 8 +
block/blk-io-hierarchy/debugfs.c | 235 +++++++
block/blk-io-hierarchy/iodump.c | 745 +++++++++++++++++++++++
block/blk-io-hierarchy/iodump.h | 96 +++
block/blk-io-hierarchy/stats.c | 406 ++++++++++++
block/blk-io-hierarchy/stats.h | 378 ++++++++++++
block/blk-iocost.c | 14 +-
block/blk-iolatency.c | 8 +-
block/blk-map.c | 1 +
block/blk-merge.c | 4 +
block/blk-mq-debugfs.c | 22 +-
block/blk-mq-debugfs.h | 8 +
block/blk-mq-sched.c | 2 +
block/blk-mq-tag.c | 5 +
block/blk-mq.c | 125 +++-
block/blk-mq.h | 25 +
block/blk-rq-qos.c | 9 +-
block/blk-rq-qos.h | 5 +-
block/blk-sysfs.c | 14 +
block/blk-throttle.c | 14 +-
block/blk-wbt.c | 40 +-
block/blk.h | 67 ++
block/kyber-iosched.c | 7 +
block/mq-deadline.c | 15 +-
include/linux/blk-mq.h | 33 +-
include/linux/blk_types.h | 94 +--
include/linux/blkdev.h | 22 +-
include/linux/sched.h | 2 +-
kernel/sched/core.c | 6 +-
43 files changed, 2569 insertions(+), 114 deletions(-)
create mode 100644 block/blk-io-hierarchy/Kconfig
create mode 100644 block/blk-io-hierarchy/Makefile
create mode 100644 block/blk-io-hierarchy/debugfs.c
create mode 100644 block/blk-io-hierarchy/iodump.c
create mode 100644 block/blk-io-hierarchy/iodump.h
create mode 100644 block/blk-io-hierarchy/stats.c
create mode 100644 block/blk-io-hierarchy/stats.h
--
2.39.2