Re: On migrate_disable() and latencies

From: Yong Zhang
Date: Thu Jul 28 2011 - 03:10:32 EST


On Thu, Jul 28, 2011 at 09:01:23AM +0200, Thomas Gleixner wrote:
> We do. Just RT is the only sched class which has a set_cpus_allowed()
> callback implemented and want's an update to its rt.nr_cpus_allowed
> field.
>
> if (!p->migrate_disable) {
> if (p->sched_class && p->sched_class->set_cpus_allowed)
> p->sched_class->set_cpus_allowed(p, new_mask);
> p->rt.nr_cpus_allowed = cpumask_weight(new_mask);
> }
>
> The general part is here:
>
> cpumask_copy(&p->cpus_allowed, new_mask);
>
> And tsk_cpus_allowed() does:
> {
> if (p->migrate_disable)
> return cpumask_of(task_cpu(p));
>
> return &p->cpus_allowed;
> }

Hmmm, sched-use-task-allowed-accessor.patch is the preparation :)

Clear now, thanks Thomas.

-Yong

--
Only stand for myself
--
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/