x86/mm: Add missing <asm/cpufeatures.h> dependency to <asm/page_64.h>
authorIngo Molnar <mingo@kernel.org>
Tue, 16 Nov 2021 05:13:05 +0000 (06:13 +0100)
committerDave Hansen <dave.hansen@linux.intel.com>
Fri, 3 Dec 2021 17:30:45 +0000 (09:30 -0800)
commite1cd82a339024beda8439fb2e20718363ee989a8
tree8edcd8ceb00ed27e4371987d2c18bbf415903fdc
parentd58071a8a76d779eedab38033ae4c821c30295a5
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@linux-foundation.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/include/asm/page_64.h