Re: [PATCH 0/3] Reduce impact to overall system of SLUB using high-order allocations

James Bottomley
2011-05-12T14:05:06Z

On Thu, 2011-05-12 at 14:13 +0300, Pekka Enberg wrote:
> On 5/12/11 1:34 AM, James Bottomley wrote:
> > On Wed, 2011-05-11 at 15:28 -0700, David Rientjes wrote:
> >> On Wed, 11 May 2011, James Bottomley wrote:
> >>
> >>> OK, I confirm that I can't seem to break this one. No hangs visible,
> >>> even when loading up the system with firefox, evolution, the usual
> >>> massive untar, X and even a distribution upgrade.
> >>>
> >>> You can add my tested-by
> >>>
> >> Your system still hangs with patches 1 and 2 only?
> > Yes, but only once in all the testing. With patches 1 and 2 the hang is
> > much harder to reproduce, but it still seems to be present if I hit it
> > hard enough.
>
> Patches 1-2 look reasonable to me. I'm not completely convinced of patch
> 3, though. Why are we seeing these problems now? This has been in
> mainline for a long time already. Shouldn't we fix kswapd?

So I'm open to this. The hang occurs when kswapd races around in
shrink_slab and never exits. It looks like there's a massive number of
wakeups triggering this, but we haven't been able to diagnose it
further. turning on PREEMPT gets rid of the hang, so I could try to
reproduce with PREEMPT and turn on tracing. The problem so far has been
that the number of events is so huge that the trace buffer only captures
a few microseconds of output.

James