arm64: fix ARM64_USER_VA_BITS_52 builds
authorArnd Bergmann <arnd@arndb.de>
Tue, 11 Dec 2018 14:08:10 +0000 (15:08 +0100)
committerWill Deacon <will.deacon@arm.com>
Tue, 11 Dec 2018 20:07:12 +0000 (20:07 +0000)
In some randconfig builds, the new CONFIG_ARM64_USER_VA_BITS_52
triggered a build failure:

arch/arm64/mm/proc.S:287: Error: immediate out of range

As it turns out, we were incorrectly setting PGTABLE_LEVELS here,
lacking any other default value.
This fixes the calculation of CONFIG_PGTABLE_LEVELS to consider
all combinations again.

Fixes: 68d23da4373a ("arm64: Kconfig: Re-jig CONFIG options for 52-bit VA")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/Kconfig

index 4dbef530cf58786a02af22190e7d0a0c5d624c22..47c1f21e81dca7d4b1abeb2ba4fca203215597c9 100644 (file)
@@ -274,7 +274,7 @@ config PGTABLE_LEVELS
        int
        default 2 if ARM64_16K_PAGES && ARM64_VA_BITS_36
        default 2 if ARM64_64K_PAGES && ARM64_VA_BITS_42
-       default 3 if ARM64_64K_PAGES && ARM64_VA_BITS_48
+       default 3 if ARM64_64K_PAGES && (ARM64_VA_BITS_48 || ARM64_USER_VA_BITS_52)
        default 3 if ARM64_4K_PAGES && ARM64_VA_BITS_39
        default 3 if ARM64_16K_PAGES && ARM64_VA_BITS_47
        default 4 if !ARM64_64K_PAGES && ARM64_VA_BITS_48