Re: [PATCH 2/5] sched/deadline: Remove cpu_active_mask from cpudl_find()

Peter Zijlstra
2015-01-27T15:04:57Z

On Mon, Jan 19, 2015 at 04:49:37AM +0000, Xunlei Pang wrote:
> cpu_active_mask is rarely changeable, so remove this operation
> to gain a little performance.
>
> If there is a change in cpu_active_mask, rq_online_dl() and
> rq_offline_dl() should take care of it normally, so cpudl::
> free_cpus carries enough information for us.
>
> For the rare case(causing a task put onto a dying cpu) which
> rq_offline_dl() can't handle timely, then it can be handled
> through _cpu_down()->...->multi_cpu_stop()->migration_call()
> ->migrate_tasks(), preventing the task from hanging on the
> dead cpu.

Maybe; I'll need to go crawl through the long and twisted history of
active_mask here :/