diff options
author | Kevin Hilman <khilman@linaro.org> | 2015-10-14 13:41:57 -0700 |
---|---|---|
committer | Kevin Hilman <khilman@linaro.org> | 2015-10-14 13:41:57 -0700 |
commit | c6df33694dbe813e34da1f893cbc08a5822a26d7 (patch) | |
tree | c73e8332df16575a2a6dedbc0fc8a34b5ddc6587 /arch/powerpc/include/asm/pgtable-ppc64.h | |
parent | f0b7ed42af0d718fc11d45f6c05948e9a11e08be (diff) | |
parent | 974070b95b0c8ff6ef0d62109c16aea160cf3c7c (diff) |
Merge branch 'linux-linaro-lsk-v3.10' into linux-linaro-lsk-v3.10-androidlsk-v3.10-15.11-androidlsk-v3.10-15.10-android
Diffstat (limited to 'arch/powerpc/include/asm/pgtable-ppc64.h')
-rw-r--r-- | arch/powerpc/include/asm/pgtable-ppc64.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/arch/powerpc/include/asm/pgtable-ppc64.h b/arch/powerpc/include/asm/pgtable-ppc64.h index e3d55f6f24fe..6fbb2b46098c 100644 --- a/arch/powerpc/include/asm/pgtable-ppc64.h +++ b/arch/powerpc/include/asm/pgtable-ppc64.h @@ -130,7 +130,19 @@ #define pte_iterate_hashed_end() } while(0) #ifdef CONFIG_PPC_HAS_HASH_64K -#define pte_pagesize_index(mm, addr, pte) get_slice_psize(mm, addr) +/* + * We expect this to be called only for user addresses or kernel virtual + * addresses other than the linear mapping. + */ +#define pte_pagesize_index(mm, addr, pte) \ + ({ \ + unsigned int psize; \ + if (is_kernel_addr(addr)) \ + psize = MMU_PAGE_4K; \ + else \ + psize = get_slice_psize(mm, addr); \ + psize; \ + }) #else #define pte_pagesize_index(mm, addr, pte) MMU_PAGE_4K #endif |