Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

x86/boot: Drop erroneous __init annotation from early_set_pages_state()

The kexec code will call set_pages_state() after tearing down all the GHCBs,
which will therefore result in a call to early_set_pages_state().

This means the __init annotation is wrong, and must be dropped.

Fixes: c5c30a373693 ("x86/boot: Move startup code out of __head section")
Reported-by: Srikanth Aithal <Srikanth.Aithal@amd.com>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Tested-by: Srikanth Aithal <Srikanth.Aithal@amd.com>

authored by

Ard Biesheuvel and committed by
Borislav Petkov (AMD)
1f6113ae 648dbccc

+1 -1
+1 -1
arch/x86/boot/startup/sev-startup.c
··· 44 44 /* Include code shared with pre-decompression boot stage */ 45 45 #include "sev-shared.c" 46 46 47 - void __init 47 + void 48 48 early_set_pages_state(unsigned long vaddr, unsigned long paddr, 49 49 unsigned long npages, const struct psc_desc *desc) 50 50 {