Re: [RFC][PATCH 4/4] sched, numa: Ignore pinned tasks

From: Peter Zijlstra
Date: Mon May 18 2015 - 11:10:20 EST


On Mon, May 18, 2015 at 07:59:40PM +0530, Srikar Dronamraju wrote:
> > We should never get preferred_nid set when nr_cpus_allowed == 1, see the
> > hunk that changes task_tick_numa.
> >
> > So we set preferred = -1 on pinning, do not partake in numa balancing
> > while this is so, therefore it should still be so when we dequeue,
> > right?
>
> lets say if a thread were to do a sched_setaffinity on itself ;
> would it not call account_numa_dequeue before account_numa_enqueue?

Yes, but it would call dequeue while nr_cpus_allowed was still the 'old'
value. And it will call enqueue when its the 'new' value.

> Also setting preferred = -1 in set_cpus_allowed avoids us from setting
> it at account_numa_enqueue. account_numa_enqueue() would probably be
> called more times than set_cpus_allowed.

This is true; and that makes sense.
--
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/