]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/mm: Fix bug in pagetable cache cleanup with CONFIG_PPC_SUBPAGE_PROT
authorDavid Gibson <david@gibson.dropbear.id.au>
Mon, 23 Nov 2009 19:31:14 +0000 (19:31 +0000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Fri, 27 Nov 2009 03:24:29 +0000 (14:24 +1100)
commite9e9c9cce1229fa4f8266aa3b50cd03ebe643baf
tree4369d1f7c0859a373321c9b3b2d2a101a63282fc
parentb90749ad2c7beb5b4fc0913553ec3ccf38172add
powerpc/mm: Fix bug in pagetable cache cleanup with CONFIG_PPC_SUBPAGE_PROT

Commit b5a85ae273a313d3537bb1bbf776b7dc085b7515 cleans up the handling
of kmem_caches for allocating various levels of pagetables.
Unfortunately, it conflicts badly with CONFIG_PPC_SUBPAGE_PROT, due to
the latter's cleverly hidden technique of adding some extra allocation
space to the top level page directory to store the extra information
it needs.

Since that extra allocation really doesn't fit into the cleaned up
page directory allocating scheme, this patch alters
CONFIG_PPC_SUBPAGE_PROT to instead allocate its struct
subpage_prot_table as part of the mm_context_t.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/include/asm/mmu-hash64.h
arch/powerpc/include/asm/pgalloc-64.h
arch/powerpc/include/asm/pte-hash64-64k.h
arch/powerpc/mm/hash_utils_64.c
arch/powerpc/mm/mmu_context_hash64.c
arch/powerpc/mm/subpage-prot.c