Re: [PATCH 03/33] mm: slub: add knowledge of reserve pages
From: Nick Piggin <hidden>
Date: 2007-10-31 11:58:17
Also in:
linux-mm, lkml
On Wednesday 31 October 2007 21:42, Peter Zijlstra wrote:
On Wed, 2007-10-31 at 14:37 +1100, Nick Piggin wrote:quoted
On Wednesday 31 October 2007 03:04, Peter Zijlstra wrote:quoted
Restrict objects from reserve slabs (ALLOC_NO_WATERMARKS) to allocation contexts that are entitled to it. Care is taken to only touch the SLUB slow path. This is done to ensure reserve pages don't leak out and get consumed.I think this is generally a good idea (to prevent slab allocators from stealing reserve). However I naively think the implementation is a bit overengineered and thus has a few holes. Humour me, what was the problem with failing the slab allocation (actually, not fail but just call into the page allocator to do correct waiting / reclaim) in the slowpath if the process fails the watermark checks?Ah, we actually need slabs below the watermarks.
Right, I'd still allow those guys to allocate slabs. Provided they have the right allocation context, right?
Its just that once I allocated those slabs using __GFP_MEMALLOC/PF_MEMALLOC I don't want allocation contexts that do not have rights to those pages to walk off with objects.
And I'd prevent these ones from doing so. Without keeping track of "reserve" pages, which doesn't feel too clean.