Hello, * v2[2] fixes the build failure caused by v1[1] forgetting to update bfq. * v3[3] drops __acuquires/__releases() changes and updates patch descriptions. * v4 rebases on top of the current block/for-next. This patchset: * Improves blkg config helpers so that they can be used consistently for all the existing use cases. This also allows keeps using the same bdev open instance across lazy init of rq_qos policies. * Updates iolatency so that it initializes lazily when a latency target is set for the first time. This avoids registering the rq_qos policy when iolatency is not used which removes unnecessary calls into iolat from IO hot paths. and contains the following four patches: 0001-blkcg-Drop-unnecessary-RCU-read-un-locks-from-blkg_c.patch 0002-blkcg-Restructure-blkg_conf_prep-and-friends.patch 0003-blk-iolatency-s-blkcg_rq_qos-iolat_rq_qos.patch 0004-blk-iolatency-Make-initialization-lazy.patch and is also available in the following git branch. git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git iolat-lazy-init-v4 diffstat follows. Thanks. block/bfq-cgroup.c | 8 ++- block/blk-cgroup.c | 122 ++++++++++++++++++++++++++++---------------------- block/blk-cgroup.h | 10 ++-- block/blk-iocost.c | 58 +++++++++++++---------- block/blk-iolatency.c | 39 +++++++++++++-- block/blk-rq-qos.h | 2 block/blk-throttle.c | 16 ++++-- block/blk.h | 6 -- 8 files changed, 159 insertions(+), 102 deletions(-) [1] https://lkml.kernel.org/r/20230105002007.157497-1-tj@xxxxxxxxxx [2] https://lkml.kernel.org/r/20230105212432.289569-1-tj@xxxxxxxxxx [3] https://lkml.kernel.org/r/20230110222714.552241-1-tj@xxxxxxxxxx