Messages in this thread | | | Date | Thu, 12 Jan 2012 15:37:12 +0000 | From | Mel Gorman <> | Subject | Re: [PATCH 2/2] mm: page allocator: Do not drain per-cpu lists via IPI from page allocator context |
| |
On Thu, Jan 12, 2012 at 04:18:12PM +0100, Peter Zijlstra wrote: > On Wed, 2012-01-11 at 10:11 +0000, Mel Gorman wrote: > > 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.
-- Mel Gorman SUSE Labs
| |