summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/include/asm
diff options
context:
space:
mode:
authorAneesh Kumar K.V2013-04-28 11:37:31 +0200
committerBenjamin Herrenschmidt2013-04-30 08:00:00 +0200
commit419df06eea5bfa815e3a78e0aad6cfb320c1654f (patch)
tree52fd09dab6b9ddb7895107aa66f8bb231bf04811 /arch/powerpc/include/asm
parentpowerpc: Switch 16GB and 16MB explicit hugepages to a different page table fo... (diff)
downloadkernel-qcow2-linux-419df06eea5bfa815e3a78e0aad6cfb320c1654f.tar.gz
kernel-qcow2-linux-419df06eea5bfa815e3a78e0aad6cfb320c1654f.tar.xz
kernel-qcow2-linux-419df06eea5bfa815e3a78e0aad6cfb320c1654f.zip
powerpc: Reduce the PTE_INDEX_SIZE
This make one PMD cover 16MB range. That helps in easier implementation of THP on power. THP core code make use of one pmd entry to track the hugepage and the range mapped by a single pmd entry should be equal to the hugepage size supported by the hardware. This also switch PGD to cover 16GB. That is needed so that we can simplify the hugetlb page walking code so that we have same pte format for explicit hugepage and THP hugepage. Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com> Acked-by: Paul Mackerras <paulus@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/include/asm')
-rw-r--r--arch/powerpc/include/asm/pgtable-ppc64-64k.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/powerpc/include/asm/pgtable-ppc64-64k.h b/arch/powerpc/include/asm/pgtable-ppc64-64k.h
index be4e2878fbc0..45142d640720 100644
--- a/arch/powerpc/include/asm/pgtable-ppc64-64k.h
+++ b/arch/powerpc/include/asm/pgtable-ppc64-64k.h
@@ -4,10 +4,10 @@
#include <asm-generic/pgtable-nopud.h>
-#define PTE_INDEX_SIZE 12
-#define PMD_INDEX_SIZE 12
+#define PTE_INDEX_SIZE 8
+#define PMD_INDEX_SIZE 10
#define PUD_INDEX_SIZE 0
-#define PGD_INDEX_SIZE 6
+#define PGD_INDEX_SIZE 12
#ifndef __ASSEMBLY__
#define PTE_TABLE_SIZE (sizeof(real_pte_t) << PTE_INDEX_SIZE)