Thread (9 messages) flat view 9 messages, 2 authors, 2007-05-09

Re: [PATCH 5/5] powerpc: Don't use SLAB/SLUB for PTE pages

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2007-05-08 21:17:40

On Tue, 2007-05-08 at 20:50 +0100, Hugh Dickins wrote:
On Tue, 8 May 2007, Benjamin Herrenschmidt wrote:
quoted
From: Hugh Dickins <redacted>

The SLUB allocator relies on struct page fields first_page and slab,
overwritten by ptl when SPLIT_PTLOCK: so the SLUB allocator cannot then
be used for the lowest level of pagetable pages.  This was obstructing
SLUB on PowerPC, which uses kmem_caches for its pagetables.  So convert
its pte level to use normal gfp pages (whereas pmd, pud and 64k-page pgd
want partpages, so continue to use kmem_caches for pmd, pud and pgd).

Signed-off-by: Hugh Dickins <redacted>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
Looks and runs fine for me (though would have seemed nicer to use
__GFP_ZERO than clear_page - or does that subvert your fast zeroing?).
Nah, you are right, I'll respin. Forgot about __GFP_ZERO. It just called
clear_highpage on the returned pages right ? This is the same as calling
clear_page from my code.
But you also need to undo the ARCH_USES_SLAB_PAGE_STRUCT from
arch/powerpc/Kconfig now that's gone into Linus' tree: patch
I added in testing below (either append to this one or add a 6/5).
I was thinking about adding a new patch.
For some people that interim disablement was working, for other
people it wasn't: mysterious, and the sooner it's got rid of the
better.  I'm sorry to find that oldconfig doesn't actually offer
the SLAB or SLUB menu (to me anyway) when moving from SLUB disabled
to SLUB enabled: so again, the sooner we get rid of that interim
disablement the better for SLUB exposure.
Ok. I'll post a new patch along with the final serie after I've done some
testing later today.

Cheers,
Ben.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help