Re: [PATCH v4] blk-cgroup: fix leaks and online flag on radix_tree_insert failure

From: Jens Axboe

Date: Wed Jul 15 2026 - 18:34:54 EST



On Wed, 15 Jul 2026 21:24:07 +0800, Tao Cui wrote:
> When radix_tree_insert() fails in blkg_create(), the error path has two
> issues:
>
> 1. blkg->online is set to true unconditionally, even when the blkg was
> never fully inserted. Move the assignment inside the success block.
>
> 2. The error path calls blkg_put() without first calling
> percpu_ref_kill(). Because the refcount is still in percpu mode,
> percpu_ref_put() only does this_cpu_sub() without checking for zero,
> so blkg_release() is never triggered. This permanently leaks the
> blkg memory, its percpu iostat, policy data, the parent blkg
> reference, and the cgroup css reference — the latter preventing the
> cgroup from ever being destroyed.
>
> [...]

Applied, thanks!

[1/1] blk-cgroup: fix leaks and online flag on radix_tree_insert failure
commit: dbbca20764382b4d411ec2918f4e278ffe547acc

Best regards,
--
Jens Axboe