Re: Task group cleanups and optimizations (was: Re: [RFC 00/60] Coscheduling for Linux)

From: Peter Zijlstra
Date: Tue Sep 18 2018 - 09:38:18 EST


On Tue, Sep 18, 2018 at 03:22:13PM +0200, Jan H. Schönherr wrote:
> On 09/17/2018 11:48 AM, Peter Zijlstra wrote:
> > On Sat, Sep 15, 2018 at 10:48:20AM +0200, Jan H. Schönherr wrote:
> >> On 09/14/2018 06:25 PM, Jan H. Schönherr wrote:
> >
> >>> b) ability to move CFS RQs between CPUs: someone changed the affinity of
> >>> a cpuset? No problem, just attach the runqueue with all the tasks elsewhere.
> >>> No need to touch each and every task.
> >
> > Can't do that, tasks might have individual constraints that are tighter
> > than the cpuset.
>
> AFAIK, changing the affinity of a cpuset overwrites the individual affinities of tasks
> within them. Thus, it shouldn't be an issue.

No, it only shrinks the set. Also nothing stops you calling
sched_setaffinity() once you're inside the cpuset. The only contraint is
that your mask is a subset of the cpuset mask.