]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/mm/book3s-64: Use physical addresses in upper page table tree levels
authorPaul Mackerras <paulus@ozlabs.org>
Tue, 23 Feb 2016 02:36:17 +0000 (13:36 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 29 Feb 2016 09:34:34 +0000 (20:34 +1100)
commit706834d762ebced823f02207754eb523ccfebd5b
tree0454701b09a320be6186fcd4ed0447af3ee2b4ee
parent0dc1ac295e61a7c5010b29efd49581b8bb1784b8
powerpc/mm/book3s-64: Use physical addresses in upper page table tree levels

This changes the Linux page tables to store physical addresses
rather than kernel virtual addresses in the upper levels of the
tree (pgd, pud and pmd) for 64-bit Book 3S machines.

This also changes the hugepd pointers used to implement hugepages
when the base page size is 4k to store physical addresses rather than
virtual addresses (again just for 64-bit Book3S machines).

This frees up some high order bits, and will be needed with
PowerISA v3.0 machines which read the page table tree in hardware
in radix mode.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/book3s/64/hash-4k.h
arch/powerpc/include/asm/book3s/64/hash.h
arch/powerpc/include/asm/hugetlb.h
arch/powerpc/include/asm/nohash/64/pgtable.h
arch/powerpc/include/asm/page.h
arch/powerpc/include/asm/pgalloc-64.h
arch/powerpc/mm/hugetlbpage.c