arm64: Fix building error with 16KB pages and 36-bit VA
authorCatalin Marinas <catalin.marinas@arm.com>
Thu, 25 Feb 2016 15:53:44 +0000 (15:53 +0000)
committerCatalin Marinas <catalin.marinas@arm.com>
Thu, 25 Feb 2016 16:01:26 +0000 (16:01 +0000)
commitcac4b8cdf5a20a11d1725b832350c044d9e13d29
treecc236303f0fcb3d6df85672470dcc8ee89a3ff0e
parent28c5dcb22f90113dea101b0421bc6971bccb7a74
arm64: Fix building error with 16KB pages and 36-bit VA

In such configuration, Linux uses only two pages of page tables and
__pud_populate() should not be used. However, the BUILD_BUG() triggers
since pud_sect() is still defined and the compiler cannot eliminate such
code, even though at run-time it should not be triggered. This patch
extends the #ifdef ARM64_64K_PAGES condition for pud_sect to include
PGTABLE_LEVELS < 3.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
arch/arm64/include/asm/pgtable.h