Messages in this thread | | | Subject | Problem with cpu_rest() change | From | Benjamin Herrenschmidt <> | Date | Mon, 24 Jan 2005 13:40:42 +1100 |
| |
Hi Ingo !
Could you explain me precisely what is the race you are fixing by adding local_irq_disable() to rest_init() ?
This patch is causing lockups on boot on various ppc machines. I think i've found at least one possible reason for that in the ppc cpu_idle() code, which may not re-enable interrupts in some cases when need_resched() is not set, assuming they were enabled on entry. However, I'm wondering precisely what exact race you are trying to fix as my fix would cause IRQs to be re-enabled before the call to schedule() when need_resched() is not set, which goes against the comment you added to rest_init() about letting them be re-enable by schedule() itself...
Ben.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |