RE: [patch] scheduler bugfix, SMP, 2.4.0-test7

From: Ingo Molnar (mingo@elte.hu)
Date: Tue Aug 29 2000 - 04:44:41 EST


On Mon, 28 Aug 2000, Dimitris Michailidis wrote:

> > the attached sched-2.4.0-test7-C1 patch fixes a 'missed wakeup'
> > SMP-scheduler bug.
>
> +running_again:
> + if (prev == idle_task(smp_processor_id()))
> + goto out_unlock;
>
> Why don't you move the test for the idle task to the beginning of the
> function so we don't need to take the run queue lock if prev is idle? There
> is nothing to be done for idle tasks, we don't even need to set ->has_cpu.

for performance reasons. The whole running_again path is extremely rare
(because the window for a re-wakeup is small), so i moved all checks into
the slow path and made the common code fall-through.

        Ingo

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Aug 31 2000 - 21:00:23 EST