1# SPDX-License-Identifier: GPL-2.0 2# Kernel does not boot with instrumentation of tlb.c and mem_encrypt*.c 3KCOV_INSTRUMENT_tlb.o := n 4KCOV_INSTRUMENT_mem_encrypt.o := n 5KCOV_INSTRUMENT_mem_encrypt_amd.o := n 6KCOV_INSTRUMENT_pgprot.o := n 7# See the "Disable KCOV" comment in arch/x86/kernel/Makefile. 8KCOV_INSTRUMENT_physaddr.o := n 9 10KASAN_SANITIZE_mem_encrypt.o := n 11KASAN_SANITIZE_mem_encrypt_amd.o := n 12KASAN_SANITIZE_pgprot.o := n 13 14# Disable KCSAN entirely, because otherwise we get warnings that some functions 15# reference __initdata sections. 16KCSAN_SANITIZE := n 17# Avoid recursion by not calling KMSAN hooks for CEA code. 18KMSAN_SANITIZE_cpu_entry_area.o := n 19 20ifdef CONFIG_FUNCTION_TRACER 21CFLAGS_REMOVE_mem_encrypt.o = -pg 22CFLAGS_REMOVE_mem_encrypt_amd.o = -pg 23CFLAGS_REMOVE_pgprot.o = -pg 24endif 25 26obj-y := init.o init_$(BITS).o fault.o ioremap.o extable.o mmap.o \ 27 pgtable.o physaddr.o tlb.o cpu_entry_area.o maccess.o pgprot.o 28 29obj-y += pat/ 30 31# Make sure __phys_addr has no stackprotector 32CFLAGS_physaddr.o := -fno-stack-protector 33 34obj-$(CONFIG_X86_32) += pgtable_32.o iomap_32.o 35 36obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o 37obj-$(CONFIG_PTDUMP) += dump_pagetables.o 38obj-$(CONFIG_PTDUMP_DEBUGFS) += debug_pagetables.o 39 40KASAN_SANITIZE_kasan_init_$(BITS).o := n 41obj-$(CONFIG_KASAN) += kasan_init_$(BITS).o 42 43KMSAN_SANITIZE_kmsan_shadow.o := n 44obj-$(CONFIG_KMSAN) += kmsan_shadow.o 45 46obj-$(CONFIG_MMIOTRACE) += mmiotrace.o 47mmiotrace-y := kmmio.o pf_in.o mmio-mod.o 48obj-$(CONFIG_MMIOTRACE_TEST) += testmmiotrace.o 49 50obj-$(CONFIG_NUMA) += numa.o 51obj-$(CONFIG_AMD_NUMA) += amdtopology.o 52obj-$(CONFIG_ACPI_NUMA) += srat.o 53 54obj-$(CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS) += pkeys.o 55obj-$(CONFIG_RANDOMIZE_MEMORY) += kaslr.o 56obj-$(CONFIG_MITIGATION_PAGE_TABLE_ISOLATION) += pti.o 57 58obj-$(CONFIG_X86_MEM_ENCRYPT) += mem_encrypt.o 59obj-$(CONFIG_AMD_MEM_ENCRYPT) += mem_encrypt_amd.o 60 61obj-$(CONFIG_AMD_MEM_ENCRYPT) += mem_encrypt_boot.o 62