Re: [PATCH] mm: limit direct reclaim for higher order allocations

From: Joonsoo Kim
Date: Wed Feb 24 2016 - 19:29:18 EST


On Wed, Feb 24, 2016 at 05:17:56PM -0500, Rik van Riel wrote:
> On Wed, 2016-02-24 at 14:15 -0800, David Rientjes wrote:
> > On Wed, 24 Feb 2016, Rik van Riel wrote:
> >
> > > For multi page allocations smaller than PAGE_ALLOC_COSTLY_ORDER,
> > > the kernel will do direct reclaim if compaction failed for any
> > > reason. This worked fine when Linux systems had 128MB RAM, but
> > > on my 24GB system I frequently see higher order allocations
> > > free up over 3GB of memory, pushing all kinds of things into
> > > swap, and slowing down applications.
> > > 
> >
> > Just curious, are these higher order allocations typically done by
> > the 
> > slub allocator or where are they coming from?
>
> These are slab allocator ones, indeed.
>
> The allocations seem to be order 2 and 3, mostly
> on behalf of the inode cache and alloc_skb.

Hello, Rik.

Could you tell me the kernel version you tested?

Commit 45eb00cd3a03 (mm/slub: don't wait for high-order page
allocation) changes slub allocator's behaviour that high order
allocation request by slub doesn't cause direct reclaim.

Thanks.