x86/sev: Move SEV compilation units
A long time ago it was agreed upon that the coco stuff needs to go where it belongs: https://lore.kernel.org/all/Yg5nh1RknPRwIrb8@zn.tnic and not keep it in arch/x86/kernel. TDX did that and SEV can't find time to do so. So lemme do it. If people have trouble converting their ongoing featuritis patches, ask me for a sed script. No functional changes. Move the instrumentation exclusion bits too, as helpfully caught and reported by the 0day folks. Closes: https://lore.kernel.org/oe-kbuild-all/202406220748.hG3qlmDx-lkp@intel.com Reported-by: kernel test robot <lkp@intel.com> Closes: https://lore.kernel.org/oe-lkp/202407091342.46d7dbb-oliver.sang@intel.com Reported-by: kernel test robot <oliver.sang@intel.com> Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de> Reviewed-by: Nikunj A Dadhania <nikunj@amd.com> Reviewed-by: Ashish Kalra <ashish.kalra@amd.com> Tested-by: kernel test robot <oliver.sang@intel.com> Link: https://lore.kernel.org/r/20240619093014.17962-1-bp@kernel.org
This commit is contained in:
parent
3991b04d48
commit
38918e0bb2
@ -127,7 +127,7 @@ static bool fault_in_kernel_space(unsigned long address)
|
|||||||
#include "../../lib/insn.c"
|
#include "../../lib/insn.c"
|
||||||
|
|
||||||
/* Include code for early handlers */
|
/* Include code for early handlers */
|
||||||
#include "../../kernel/sev-shared.c"
|
#include "../../coco/sev/shared.c"
|
||||||
|
|
||||||
static struct svsm_ca *svsm_get_caa(void)
|
static struct svsm_ca *svsm_get_caa(void)
|
||||||
{
|
{
|
||||||
|
@ -6,3 +6,4 @@ CFLAGS_core.o += -fno-stack-protector
|
|||||||
obj-y += core.o
|
obj-y += core.o
|
||||||
|
|
||||||
obj-$(CONFIG_INTEL_TDX_GUEST) += tdx/
|
obj-$(CONFIG_INTEL_TDX_GUEST) += tdx/
|
||||||
|
obj-$(CONFIG_AMD_MEM_ENCRYPT) += sev/
|
||||||
|
15
arch/x86/coco/sev/Makefile
Normal file
15
arch/x86/coco/sev/Makefile
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# SPDX-License-Identifier: GPL-2.0
|
||||||
|
|
||||||
|
obj-y += core.o
|
||||||
|
|
||||||
|
ifdef CONFIG_FUNCTION_TRACER
|
||||||
|
CFLAGS_REMOVE_core.o = -pg
|
||||||
|
endif
|
||||||
|
|
||||||
|
KASAN_SANITIZE_core.o := n
|
||||||
|
KMSAN_SANITIZE_core.o := n
|
||||||
|
KCOV_INSTRUMENT_core.o := n
|
||||||
|
|
||||||
|
# With some compiler versions the generated code results in boot hangs, caused
|
||||||
|
# by several compilation units. To be safe, disable all instrumentation.
|
||||||
|
KCSAN_SANITIZE := n
|
@ -613,7 +613,7 @@ static __always_inline void vc_forward_exception(struct es_em_ctxt *ctxt)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Include code shared with pre-decompression boot stage */
|
/* Include code shared with pre-decompression boot stage */
|
||||||
#include "sev-shared.c"
|
#include "shared.c"
|
||||||
|
|
||||||
static inline struct svsm_ca *svsm_get_caa(void)
|
static inline struct svsm_ca *svsm_get_caa(void)
|
||||||
{
|
{
|
@ -17,7 +17,6 @@ CFLAGS_REMOVE_ftrace.o = -pg
|
|||||||
CFLAGS_REMOVE_early_printk.o = -pg
|
CFLAGS_REMOVE_early_printk.o = -pg
|
||||||
CFLAGS_REMOVE_head64.o = -pg
|
CFLAGS_REMOVE_head64.o = -pg
|
||||||
CFLAGS_REMOVE_head32.o = -pg
|
CFLAGS_REMOVE_head32.o = -pg
|
||||||
CFLAGS_REMOVE_sev.o = -pg
|
|
||||||
CFLAGS_REMOVE_rethook.o = -pg
|
CFLAGS_REMOVE_rethook.o = -pg
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -26,19 +25,16 @@ KASAN_SANITIZE_dumpstack.o := n
|
|||||||
KASAN_SANITIZE_dumpstack_$(BITS).o := n
|
KASAN_SANITIZE_dumpstack_$(BITS).o := n
|
||||||
KASAN_SANITIZE_stacktrace.o := n
|
KASAN_SANITIZE_stacktrace.o := n
|
||||||
KASAN_SANITIZE_paravirt.o := n
|
KASAN_SANITIZE_paravirt.o := n
|
||||||
KASAN_SANITIZE_sev.o := n
|
|
||||||
|
|
||||||
# With some compiler versions the generated code results in boot hangs, caused
|
# With some compiler versions the generated code results in boot hangs, caused
|
||||||
# by several compilation units. To be safe, disable all instrumentation.
|
# by several compilation units. To be safe, disable all instrumentation.
|
||||||
KCSAN_SANITIZE := n
|
KCSAN_SANITIZE := n
|
||||||
KMSAN_SANITIZE_head$(BITS).o := n
|
KMSAN_SANITIZE_head$(BITS).o := n
|
||||||
KMSAN_SANITIZE_nmi.o := n
|
KMSAN_SANITIZE_nmi.o := n
|
||||||
KMSAN_SANITIZE_sev.o := n
|
|
||||||
|
|
||||||
# If instrumentation of the following files is enabled, boot hangs during
|
# If instrumentation of the following files is enabled, boot hangs during
|
||||||
# first second.
|
# first second.
|
||||||
KCOV_INSTRUMENT_head$(BITS).o := n
|
KCOV_INSTRUMENT_head$(BITS).o := n
|
||||||
KCOV_INSTRUMENT_sev.o := n
|
|
||||||
|
|
||||||
CFLAGS_irq.o := -I $(src)/../include/asm/trace
|
CFLAGS_irq.o := -I $(src)/../include/asm/trace
|
||||||
|
|
||||||
@ -142,8 +138,6 @@ obj-$(CONFIG_UNWINDER_ORC) += unwind_orc.o
|
|||||||
obj-$(CONFIG_UNWINDER_FRAME_POINTER) += unwind_frame.o
|
obj-$(CONFIG_UNWINDER_FRAME_POINTER) += unwind_frame.o
|
||||||
obj-$(CONFIG_UNWINDER_GUESS) += unwind_guess.o
|
obj-$(CONFIG_UNWINDER_GUESS) += unwind_guess.o
|
||||||
|
|
||||||
obj-$(CONFIG_AMD_MEM_ENCRYPT) += sev.o
|
|
||||||
|
|
||||||
obj-$(CONFIG_CFI_CLANG) += cfi.o
|
obj-$(CONFIG_CFI_CLANG) += cfi.o
|
||||||
|
|
||||||
obj-$(CONFIG_CALL_THUNKS) += callthunks.o
|
obj-$(CONFIG_CALL_THUNKS) += callthunks.o
|
||||||
|
Loading…
Reference in New Issue
Block a user