Messages in this thread | | | Subject | Re: [PATCH] kernel/sched: Fix sched_fork() access an invalid sched_task_group | From | Zhang Qiao <> | Date | Wed, 1 Sep 2021 15:43:00 +0800 |
| |
hello,tejun.
在 2021/9/1 6:59, Tejun Heo 写道: > Hello, > > On Tue, Aug 31, 2021 at 03:58:42PM +0800, Zhang Qiao wrote: >>> I think this would allow cgroup migrations to take place before >>> sched_post_fork() is run, which likely will break stuff. The right
cgroup migrations? Do you mean child process set its cgroups at cgroup_subsys->fork()?
>>> thing to do likely is taking sched_task_group (and whatever other >>> fields) after cgroup_can_fork(), which fixates the cgroup memberships, >> >> But it still seems possible that it accessed an invalid sched_task_group? >> because the child process does not update its sched_task_group util >> cgroup_post_fork(). > > Between cgroup_can_fork() and cgroup_post_fork(), the cgroup membership and > thus sched_task_group can't change, so if the child sets it to the parent's > inbetween, the sched_task_group can't go away.
so the child just need to update its sched_task_group after cgroup_can_fork(), then call sched_fork(), is it right?
thanks.
-- Qiao Zhang. > > Thanks. >
| |