[PATCHSET v2 block/for-next] blkcg: Improve blkg config helpers and make iolatency init lazy
From: Tejun Heo
Date: Thu Jan 05 2023 - 16:24:45 EST
Hello,
v2 fixes the build failure caused by v1[1] forgetting to update bfq.
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-v2
diffstat follows. Thanks.
block/bfq-cgroup.c | 8 +++--
block/blk-cgroup.c | 120 ++++++++++++++++++++++++++++++++++++++++++----------------------------------
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, 157 insertions(+), 102 deletions(-)
[1] https://lkml.kernel.org/r/20230105002007.157497-1-tj@xxxxxxxxxx
--
tejun