Re: [PATCH 4.4 048/118] cpuset: make sure new tasks conform to the current config of the cpuset

From: Greg Kroah-Hartman
Date: Mon Sep 26 2016 - 11:38:26 EST


On Mon, Sep 26, 2016 at 02:34:33PM +0200, Takashi Iwai wrote:
> On Thu, 22 Sep 2016 19:29:08 +0200,
> Greg Kroah-Hartman wrote:
> >
> > 4.4-stable review patch. If anyone has any objections, please let me know.
> >
> > ------------------
> >
> > From: Zefan Li <lizefan@xxxxxxxxxx>
> >
> > commit 06f4e94898918bcad00cdd4d349313a439d6911e upstream.
> >
> > A new task inherits cpus_allowed and mems_allowed masks from its parent,
> > but if someone changes cpuset's config by writing to cpuset.cpus/cpuset.mems
> > before this new task is inserted into the cgroup's task list, the new task
> > won't be updated accordingly.
> >
> > Signed-off-by: Zefan Li <lizefan@xxxxxxxxxx>
> > Signed-off-by: Tejun Heo <tj@xxxxxxxxxx>
> > Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> >
> > ---
> > kernel/cpuset.c | 15 +++++++++++++++
> > 1 file changed, 15 insertions(+)
> >
> > --- a/kernel/cpuset.c
> > +++ b/kernel/cpuset.c
> > @@ -2074,6 +2074,20 @@ static void cpuset_bind(struct cgroup_su
> > mutex_unlock(&cpuset_mutex);
> > }
> >
> > +/*
> > + * Make sure the new task conform to the current state of its parent,
> > + * which could have been changed by cpuset just after it inherits the
> > + * state from the parent and before it sits on the cgroup's task list.
> > + */
> > +void cpuset_fork(struct task_struct *task)
>
> This causes a build warning:
>
> kernel/cpuset.c:2101:2: warning: (near initialization for 'cpuset_cgrp_subsys.fork') [enabled by default]
> .fork = cpuset_fork,
> ^
>
> where fork op in 4.4 kernel has still priv argument that was dropped
> recently.

Thanks, I have a patch in my tree already for this and it will show up
in the next release.

greg k-h