]> git.baikalelectronics.ru Git - kernel.git/commit
powerpc/mm: Fix little-endian 4K hugetlb
authorAneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Wed, 14 Dec 2016 04:37:53 +0000 (10:07 +0530)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 18 Jan 2017 00:58:50 +0000 (11:58 +1100)
commitbdb880858fffea725b529807ba7df17b70f66e3c
tree78f4f680a68ddddc4f99140d8c09b1a7b17a474d
parenta7031b6f640eaf3d98a606bc3ad4073c100d90f2
powerpc/mm: Fix little-endian 4K hugetlb

When we switched to big endian page table, we never updated the hugepd
format such that it can work for both big endian and little endian
config. This patch series update hugepd format such that it is looked at
as __be64 value in big endian page table config.

This patch also switch hugepd_t.pd from signed long to unsigned long.
I did update the FSL hugepd_ok check to check for the top bit instead
of checking > 0.

Fixes: 105703e68531 ("powerpc/mm: Use big endian Linux page tables for book3s 64")
Cc: stable@vger.kernel.org # v4.7+
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/book3s/64/hash-4k.h
arch/powerpc/include/asm/hugetlb.h
arch/powerpc/include/asm/nohash/pgtable.h
arch/powerpc/include/asm/page.h
arch/powerpc/include/asm/pgtable-be-types.h
arch/powerpc/include/asm/pgtable-types.h
arch/powerpc/mm/hugetlbpage-hash64.c
arch/powerpc/mm/hugetlbpage.c