Messages in this thread |  | | Date | Tue, 29 Aug 2000 11:44:41 +0200 (CEST) | From | Ingo Molnar <> | Subject | RE: [patch] scheduler bugfix, SMP, 2.4.0-test7 |
| |
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/
|  |