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