On Tue, 2012-06-26 at 14:37 -0700, Andrew Morton wrote: > lru_add_drain_all() uses schedule_on_each_cpu(). But > schedule_on_each_cpu() hangs if a realtime thread is spinning, pinned > to a CPU. There's no intention to change the scheduler behaviour, so > I > think we should remove schedule_on_each_cpu() from the kernel. > Anything that uses a per-cpu workqueue and waits on work from another cpu is vulnerable too. This would include things like padata, crypto and possibly others. ksoftirqd is vulnerable too, if it were preempted while handling a softirq, all of softirq handling will be out the window for that cpu. infiniband/hw/ehca would likely malfunction as well, since it has per-cpu threads. FIFO is dangerous, don't do stupid things :-) -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href