cgroup_subsys::post_attach callback was introduced in commit 5cf1cacb49ae
("cgroup, cpuset: replace cpuset_post_attach_flush() with
cgroup_subsys->post_attach callback") and only cpuset would use this
callback to wait for the mm migration to complete at the end of
__cgroup_procs_write(). Since the previous patch defer the flush operation
until returning to userspace, no one use this callback now. Remove this
callback from cgroup_subsys.
Signed-off-by: Chuyi Zhou <zhouchuyi@bytedance.com>
---
include/linux/cgroup-defs.h | 1 -
kernel/cgroup/cgroup.c | 4 ----
2 files changed, 5 deletions(-)
diff --git a/include/linux/cgroup-defs.h b/include/linux/cgroup-defs.h
index 6b93a64115fe9..432abdfdb2593 100644
--- a/include/linux/cgroup-defs.h
+++ b/include/linux/cgroup-defs.h
@@ -746,7 +746,6 @@ struct cgroup_subsys {
int (*can_attach)(struct cgroup_taskset *tset);
void (*cancel_attach)(struct cgroup_taskset *tset);
void (*attach)(struct cgroup_taskset *tset);
- void (*post_attach)(void);
int (*can_fork)(struct task_struct *task,
struct css_set *cset);
void (*cancel_fork)(struct task_struct *task, struct css_set *cset);
diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c
index 312c6a8b55bb7..75819bb2f1148 100644
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
@@ -3033,10 +3033,6 @@ void cgroup_procs_write_finish(struct task_struct *task, bool threadgroup_locked
put_task_struct(task);
cgroup_attach_unlock(threadgroup_locked);
-
- for_each_subsys(ss, ssid)
- if (ss->post_attach)
- ss->post_attach();
}
static void cgroup_print_ss_mask(struct seq_file *seq, u16 ss_mask)
--
2.20.1
On 9/4/25 3:45 AM, Chuyi Zhou wrote: > cgroup_subsys::post_attach callback was introduced in commit 5cf1cacb49ae > ("cgroup, cpuset: replace cpuset_post_attach_flush() with > cgroup_subsys->post_attach callback") and only cpuset would use this > callback to wait for the mm migration to complete at the end of > __cgroup_procs_write(). Since the previous patch defer the flush operation > until returning to userspace, no one use this callback now. Remove this > callback from cgroup_subsys. > > Signed-off-by: Chuyi Zhou <zhouchuyi@bytedance.com> > --- > include/linux/cgroup-defs.h | 1 - > kernel/cgroup/cgroup.c | 4 ---- > 2 files changed, 5 deletions(-) > > diff --git a/include/linux/cgroup-defs.h b/include/linux/cgroup-defs.h > index 6b93a64115fe9..432abdfdb2593 100644 > --- a/include/linux/cgroup-defs.h > +++ b/include/linux/cgroup-defs.h > @@ -746,7 +746,6 @@ struct cgroup_subsys { > int (*can_attach)(struct cgroup_taskset *tset); > void (*cancel_attach)(struct cgroup_taskset *tset); > void (*attach)(struct cgroup_taskset *tset); > - void (*post_attach)(void); > int (*can_fork)(struct task_struct *task, > struct css_set *cset); > void (*cancel_fork)(struct task_struct *task, struct css_set *cset); > diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c > index 312c6a8b55bb7..75819bb2f1148 100644 > --- a/kernel/cgroup/cgroup.c > +++ b/kernel/cgroup/cgroup.c > @@ -3033,10 +3033,6 @@ void cgroup_procs_write_finish(struct task_struct *task, bool threadgroup_locked > put_task_struct(task); > > cgroup_attach_unlock(threadgroup_locked); > - > - for_each_subsys(ss, ssid) > - if (ss->post_attach) > - ss->post_attach(); > } > > static void cgroup_print_ss_mask(struct seq_file *seq, u16 ss_mask) Note that we may have to add it back in the future if a new use case comes up. Acked-by: Waiman Long <longman@redhat.com>
© 2016 - 2025 Red Hat, Inc.