Re: [PATCH 12/30] mm: memory reserve management

Peter Zijlstra
2008-07-28T17:13:57Z

On Mon, 2008-07-28 at 11:59 -0500, Matt Mackall wrote:
> On Mon, 2008-07-28 at 12:39 +0200, Peter Zijlstra wrote:
> > Also, you might have noticed, I still need to do everything SLOB. The
> > last time I rewrote all this code I was still hoping Linux would 'soon'
> > have a single slab allocator, but evidently we're still going with 3 for
> > now.. :-/
> >
> > So I guess I can no longer hide behind that and will have to bite the
> > bullet and write the SLOB bits..
>
> i>>?I haven't seen the rest of this thread, but I presume this is part of
> your OOM-avoidance for network I/O framework?

Yes indeed.

> SLOB can be pretty easily expanded to handle a notion of independent
> allocation arenas as there are only a couple global variables to switch
> between. i>>?kfree will also return allocations to the page list (and
> therefore arena) from whence they came. That may make it pretty simple
> to create and prepopulate reserve pools.

Right - currently we let all the reserves sit on the free page list. The
advantage there is that it also helps the anti-frag stuff, due to having
larger free lists.