2024-05-17 06:25:21

by David Wang

[permalink] [raw]
Subject: [PATCH] kernel/cgroup: cleanup cgroup_base_files when fail to add cgroup_psi_files

Even though css_clear_dir would be called to cleanup
all existing cgroup files when css_populate_dir failed,
reclaiming newly created cgroup files before
css_populate_dir returns with failure makes code more
consistent.

Signed-off-by: David Wang <[email protected]>
---
kernel/cgroup/cgroup.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c
index a66c088c851c..6c255b5a331f 100644
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
@@ -1744,8 +1744,11 @@ static int css_populate_dir(struct cgroup_subsys_state *css)
if (cgroup_psi_enabled()) {
ret = cgroup_addrm_files(css, cgrp,
cgroup_psi_files, true);
- if (ret < 0)
+ if (ret < 0) {
+ cgroup_addrm_files(css, cgrp,
+ cgroup_base_files, false);
return ret;
+ }
}
} else {
ret = cgroup_addrm_files(css, cgrp,
--
2.39.2



2024-05-26 18:48:42

by Tejun Heo

[permalink] [raw]
Subject: Re: [PATCH] kernel/cgroup: cleanup cgroup_base_files when fail to add cgroup_psi_files

On Fri, May 17, 2024 at 02:24:05PM +0800, David Wang wrote:
> Even though css_clear_dir would be called to cleanup
> all existing cgroup files when css_populate_dir failed,
> reclaiming newly created cgroup files before
> css_populate_dir returns with failure makes code more
> consistent.
>
> Signed-off-by: David Wang <[email protected]>

Applied to cgroup/for-6.11.

Thanks.

--
tejun