Messages in this thread | | | Date | Mon, 19 Sep 2005 11:27:15 +0530 | From | Srivatsa Vaddagiri <> | Subject | Re: PATCH: Fix race in cpu_down (hotplug cpu) |
| |
On Mon, Sep 19, 2005 at 01:31:27PM +0800, Shaohua Li wrote: > A CPU is idle and then is preempted and starting offline CPU. After > calling stop_machine_run, the CPU goes into idle and it will resume last > idle loop. If the CPU is broken at specific point, then the CPU will > continue executing previous idle and have no chance to call play_dead.
Ok, that makes sense. Nigel, could you confirm which idle routine you are using?
> Am I missing anything? Nigel's patch seems can fix the situation for > mwait_idle and poll_idle but can't fix for default_idle in i386 to me.
I would say the right fix here is for poll_idle and mwait_idle (& similar other idle routines) to monitor 'cpu_offline' flag in addition to need_resched flag, rather than what Nigel has suggested.
--
Thanks and Regards, Srivatsa Vaddagiri, Linux Technology Center, IBM Software Labs, Bangalore, INDIA - 560017 - 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/
| |