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 */
![]() |