xref: /linux/arch/x86/mm/Makefile (revision 50a0844bf8c4d38be540e423672ef9408d029252)
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_mem_encrypt_identity.o	:= n
7KCOV_INSTRUMENT_pgprot.o		:= n
8
9KASAN_SANITIZE_mem_encrypt.o		:= n
10KASAN_SANITIZE_mem_encrypt_amd.o	:= n
11KASAN_SANITIZE_mem_encrypt_identity.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
19KMSAN_SANITIZE_mem_encrypt_identity.o := n
20
21ifdef CONFIG_FUNCTION_TRACER
22CFLAGS_REMOVE_mem_encrypt.o		= -pg
23CFLAGS_REMOVE_mem_encrypt_amd.o		= -pg
24CFLAGS_REMOVE_mem_encrypt_identity.o	= -pg
25CFLAGS_REMOVE_pgprot.o			= -pg
26endif
27
28obj-y				:=  init.o init_$(BITS).o fault.o ioremap.o extable.o mmap.o \
29				    pgtable.o physaddr.o tlb.o cpu_entry_area.o maccess.o pgprot.o
30
31obj-y				+= pat/
32
33# Make sure __phys_addr has no stackprotector
34CFLAGS_physaddr.o		:= -fno-stack-protector
35CFLAGS_mem_encrypt_identity.o	:= -fno-stack-protector
36
37CFLAGS_fault.o := -I $(srctree)/$(src)/../include/asm/trace
38
39obj-$(CONFIG_X86_32)		+= pgtable_32.o iomap_32.o
40
41obj-$(CONFIG_HUGETLB_PAGE)	+= hugetlbpage.o
42obj-$(CONFIG_PTDUMP_CORE)	+= dump_pagetables.o
43obj-$(CONFIG_PTDUMP_DEBUGFS)	+= debug_pagetables.o
44
45obj-$(CONFIG_HIGHMEM)		+= highmem_32.o
46
47KASAN_SANITIZE_kasan_init_$(BITS).o := n
48obj-$(CONFIG_KASAN)		+= kasan_init_$(BITS).o
49
50KMSAN_SANITIZE_kmsan_shadow.o	:= n
51obj-$(CONFIG_KMSAN)		+= kmsan_shadow.o
52
53obj-$(CONFIG_MMIOTRACE)		+= mmiotrace.o
54mmiotrace-y			:= kmmio.o pf_in.o mmio-mod.o
55obj-$(CONFIG_MMIOTRACE_TEST)	+= testmmiotrace.o
56
57obj-$(CONFIG_NUMA)		+= numa.o numa_$(BITS).o
58obj-$(CONFIG_AMD_NUMA)		+= amdtopology.o
59obj-$(CONFIG_ACPI_NUMA)		+= srat.o
60obj-$(CONFIG_NUMA_EMU)		+= numa_emulation.o
61
62obj-$(CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS)	+= pkeys.o
63obj-$(CONFIG_RANDOMIZE_MEMORY)			+= kaslr.o
64obj-$(CONFIG_MITIGATION_PAGE_TABLE_ISOLATION)	+= pti.o
65
66obj-$(CONFIG_X86_MEM_ENCRYPT)	+= mem_encrypt.o
67obj-$(CONFIG_AMD_MEM_ENCRYPT)	+= mem_encrypt_amd.o
68
69obj-$(CONFIG_AMD_MEM_ENCRYPT)	+= mem_encrypt_identity.o
70obj-$(CONFIG_AMD_MEM_ENCRYPT)	+= mem_encrypt_boot.o
71