diff options
| author | Josef Bacik <josef@toxicpanda.com> | 2026-10-28 10:41:05 -0600 |
|---|---|---|
| committer | Jens Axboe <axboe@kernel.dk> | 2026-10-28 15:40:34 -0600 |
| commit | 05ce1df3756773862c056ca8698f8ec4cdd7fe98 (patch) | |
| tree | 3b4757baf3b1fe2dc3d412f2ab92d7062a3e4309 /tools/lib/python | |
| parent | 0e1daaf9b20df2125452846f768a68d8ea280adf (diff) | |
blk-iocost: free struct ioc after a grace period
ioc_qos_prfill() and ioc_cost_model_prfill() take ioc->lock from
blkcg_print_blkgs(), which since commit 56cc24f59c14 runs under RCU only.
That covers the policy data, which is freed after a grace period, but
not the ioc it points to: ioc_rqos_exit() frees that right away, and a
concurrent read of io.cost.qos locks freed memory.
Free the ioc with kfree_rcu_mightsleep().
Fixes: 56cc24f59c14 ("blk-cgroup: don't nest queue_lock under rcu in blkcg_print_blkgs()")
Cc: Tejun Heo <tj@kernel.org>
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Acked-by: Tejun Heo <tj@kernel.org>
Link: https://patch.msgid.link/20261028164415.1262013-3-axboe@kernel.dk
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'tools/lib/python')
0 files changed, 0 insertions, 0 deletions
