Thread (12 messages) 12 messages, 3 authors, 2012-01-12

Re: [PATCH 2/2] mm: page allocator: Do not drain per-cpu lists via IPI from page allocator context

From: Peter Zijlstra <hidden>
Date: 2012-01-12 15:52:46
Also in: linux-fsdevel, lkml

On Thu, 2012-01-12 at 15:37 +0000, Mel Gorman wrote:
On Thu, Jan 12, 2012 at 04:18:12PM +0100, Peter Zijlstra wrote:
quoted
On Wed, 2012-01-11 at 10:11 +0000, Mel Gorman wrote:
quoted
At least one bug report has
been seen on ppc64 against a 3.0 era kernel that looked like a bug
receiving interrupts on a CPU being offlined. 
Got details on that Mel? The preempt_disable() in on_each_cpu() should
serialize against the stop_machine() crap in unplug.
I might have added 2 and 2 together and got 5.

The stack trace clearly was while sending IPIs in on_each_cpu() and
always when under memory pressure and stuck in direct reclaim. This was
on !PREEMPT kernels where preempt_disable() is a no-op. That is why I
thought get_online_cpu() would be necessary.
For non-preempt the required scheduling of stop_machine() will have to
wait even longer. Still there might be something funny, some of the
hotplug notifiers are ran before the stop_machine thing does its thing
so there might be some fun interaction.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help