[tip: x86/mm] x86/mm: Add missing <asm/cpufeatures.h> dependency to <asm/page_64.h>
From: tip-bot2 for Ingo Molnar
Date: Fri Dec 03 2021 - 12:38:24 EST
The following commit has been merged into the x86/mm branch of tip:
Commit-ID: e1cd82a339024beda8439fb2e20718363ee989a8
Gitweb: https://git.kernel.org/tip/e1cd82a339024beda8439fb2e20718363ee989a8
Author: Ingo Molnar <mingo@xxxxxxxxxx>
AuthorDate: Tue, 16 Nov 2021 06:13:05 +01:00
Committer: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
CommitterDate: Fri, 03 Dec 2021 09:30:45 -08:00
x86/mm: Add missing <asm/cpufeatures.h> dependency to <asm/page_64.h>
In the following commit:
025768a966a3 x86/cpu: Use alternative to generate the TASK_SIZE_MAX constant
... we added the new task_size_max() inline, which uses X86_FEATURE_LA57,
but doesn't include <asm/cpufeatures.h> which defines the constant.
Due to the way alternatives macros work currently this doesn't get reported as an
immediate build error, only as a link error, if a .c file happens to include
<asm/page.h> first:
> ld: kernel/fork.o:(.altinstructions+0x98): undefined reference to `X86_FEATURE_LA57'
In the current upstream kernel no .c file includes <asm/page.h> before including
some other header that includes <asm/cpufeatures.h>, which is why this dependency
bug went unnoticed.
Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
Cc: Borislav Petkov <bp@xxxxxxxxx>
Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
---
arch/x86/include/asm/page_64.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/x86/include/asm/page_64.h b/arch/x86/include/asm/page_64.h
index 4bde0dc..e9c8629 100644
--- a/arch/x86/include/asm/page_64.h
+++ b/arch/x86/include/asm/page_64.h
@@ -5,6 +5,7 @@
#include <asm/page_64_types.h>
#ifndef __ASSEMBLY__
+#include <asm/cpufeatures.h>
#include <asm/alternative.h>
/* duplicated to the one in bootmem.h */