[PATCH 15/21] lto, x86, mm: Disable vmalloc BUILD_BUG_ON for LTO

Andi Kleen
2017-11-27T21:34:32Z

On 32bit builds this BUILD_BUG_ON often fires with LTO for unknown
reasons. As far as I can tell it's a false positive. So disable
it for LTO.

Signed-off-by: Andi Kleen <ak@linux.intel.com>
---
arch/x86/mm/init_32.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
index 8a64a6f2848d..8187d8ee98ee 100644
--- a/arch/x86/mm/init_32.c
+++ b/arch/x86/mm/init_32.c
@@ -808,7 +808,9 @@ void __init mem_init(void)
BUILD_BUG_ON(VMALLOC_END > PKMAP_BASE);
#endif
#define high_memory (-128UL << 20)
+#ifndef CONFIG_LTO
BUILD_BUG_ON(VMALLOC_START >= VMALLOC_END);
+#endif
#undef high_memory
#undef __FIXADDR_TOP

--
2.13.6