Hi all, blk-cgroup works on only on live disks and "file system" I/O from bios. This all the information should be in the gendisk, and not the request_queue that also exists for pure passthrough request based devices. Changes since v3: - improve a commit log - drop a change to not acquire a pointless disk reference Changes since v2: - drop the patch to revert the async blkg freeing - simplify error unwinding when failing to allocate a blkg - add back the dead queue/disk check in blkg_alloc - split two patches to better document the changes - add another blk-wbt cleanup patch - rewrite a commit log - another typo fix Changes since v1: - use the local disk variable in wbt_init instead of q->disk - various spelling fixes Diffstat: block/bfq-cgroup.c | 18 +-- block/bfq-iosched.c | 6 - block/blk-cgroup-rwstat.c | 2 block/blk-cgroup.c | 226 +++++++++++++++++++++------------------------- block/blk-cgroup.h | 38 +++---- block/blk-iocost.c | 40 +++----- block/blk-iolatency.c | 41 +++----- block/blk-ioprio.c | 6 - block/blk-mq-debugfs.c | 10 -- block/blk-rq-qos.c | 67 +++++++++++++ block/blk-rq-qos.h | 66 +------------ block/blk-settings.c | 1 block/blk-stat.c | 3 block/blk-sysfs.c | 5 - block/blk-throttle.c | 31 +++--- block/blk-wbt.c | 116 +++++++++++++++++++---- block/blk-wbt.h | 98 +------------------ block/genhd.c | 17 +-- include/linux/blkdev.h | 12 +- include/linux/sched.h | 2 kernel/fork.c | 2 mm/swapfile.c | 2 22 files changed, 391 insertions(+), 418 deletions(-)