Re: [patch] cpusets: allow PF_THREAD_BOUND kworkers to escape froma cpuset
From: Mike Galbraith
Date:  Fri Sep 23 2011 - 05:42:23 EST
On Fri, 2011-09-23 at 02:12 -0700, David Rientjes wrote:
> On Fri, 23 Sep 2011, Mike Galbraith wrote:
> 
> > Done, your ACK added as well.
> > 
> > kworkers can be born in a cpuset, leaving them adrift on an unsinkable ship.
> > Allow them to be moved to the root cpuset so the cpuset can be destroyed.
> > 
> 
> Thanks Li for the cc since I introduced this flag.
> 
> Does this even work?
Yup, but..
> You've modified cpuset_can_attach() to allow the attach for the cgroup 
> interface, but the actual function that attaches the task in the cpuset 
> code should fail since it does set_cpus_allowed_ptr() which should return 
> -EINVAL because of the PF_THREAD_BOUND.  That should have emitted a 
> WARN_ON() if this patch was tested.
..you're right that it warns.  It was tested, but I didn't notice that
it had griped at me.
> kworkers can always move themselves to the root cpuset, so that's probably 
> the better way of handling this than requiring userspace to do so.
kworker is sleeping in a cpuset that the user wants to depopulate and
destroy.  I wasn't requiring the user to do that, was allowing him to.
> And it seems like the workqueue code has a comment specifically about cpu 
> hotplug and why changing their cpumask shouldn't be allowed that was added 
> by Tejun Heo in db7bccf45cb8 ("workqueue: reimplement CPU hotplugging 
> support using trustee").  So let's cc him here as well at his 
> non-kernel.org address.
No, we don't want top muck around with their masks.
	-Mike
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/