hc
2024-05-10 37f49e37ab4cb5d0bc4c60eb5c6d4dd57db767bb
kernel/mm/kasan/Makefile
....@@ -1,24 +1,41 @@
11 # SPDX-License-Identifier: GPL-2.0
22 KASAN_SANITIZE := n
3
-UBSAN_SANITIZE_common.o := n
4
-UBSAN_SANITIZE_generic.o := n
5
-UBSAN_SANITIZE_generic_report.o := n
6
-UBSAN_SANITIZE_tags.o := n
3
+UBSAN_SANITIZE := n
74 KCOV_INSTRUMENT := n
85
9
-CFLAGS_REMOVE_common.o = -pg
10
-CFLAGS_REMOVE_generic.o = -pg
11
-CFLAGS_REMOVE_generic_report.o = -pg
12
-CFLAGS_REMOVE_tags.o = -pg
6
+# Disable ftrace to avoid recursion.
7
+CFLAGS_REMOVE_common.o = $(CC_FLAGS_FTRACE)
8
+CFLAGS_REMOVE_generic.o = $(CC_FLAGS_FTRACE)
9
+CFLAGS_REMOVE_init.o = $(CC_FLAGS_FTRACE)
10
+CFLAGS_REMOVE_quarantine.o = $(CC_FLAGS_FTRACE)
11
+CFLAGS_REMOVE_report.o = $(CC_FLAGS_FTRACE)
12
+CFLAGS_REMOVE_report_generic.o = $(CC_FLAGS_FTRACE)
13
+CFLAGS_REMOVE_report_hw_tags.o = $(CC_FLAGS_FTRACE)
14
+CFLAGS_REMOVE_report_sw_tags.o = $(CC_FLAGS_FTRACE)
15
+CFLAGS_REMOVE_shadow.o = $(CC_FLAGS_FTRACE)
16
+CFLAGS_REMOVE_hw_tags.o = $(CC_FLAGS_FTRACE)
17
+CFLAGS_REMOVE_sw_tags.o = $(CC_FLAGS_FTRACE)
1318
1419 # Function splitter causes unnecessary splits in __asan_load1/__asan_store1
1520 # see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63533
21
+CC_FLAGS_KASAN_RUNTIME := $(call cc-option, -fno-conserve-stack)
22
+CC_FLAGS_KASAN_RUNTIME += -fno-stack-protector
23
+# Disable branch tracing to avoid recursion.
24
+CC_FLAGS_KASAN_RUNTIME += -DDISABLE_BRANCH_PROFILING
1625
17
-CFLAGS_common.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector)
18
-CFLAGS_generic.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector)
19
-CFLAGS_generic_report.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector)
20
-CFLAGS_tags.o := $(call cc-option, -fno-conserve-stack -fno-stack-protector)
26
+CFLAGS_common.o := $(CC_FLAGS_KASAN_RUNTIME)
27
+CFLAGS_generic.o := $(CC_FLAGS_KASAN_RUNTIME)
28
+CFLAGS_init.o := $(CC_FLAGS_KASAN_RUNTIME)
29
+CFLAGS_quarantine.o := $(CC_FLAGS_KASAN_RUNTIME)
30
+CFLAGS_report.o := $(CC_FLAGS_KASAN_RUNTIME)
31
+CFLAGS_report_generic.o := $(CC_FLAGS_KASAN_RUNTIME)
32
+CFLAGS_report_hw_tags.o := $(CC_FLAGS_KASAN_RUNTIME)
33
+CFLAGS_report_sw_tags.o := $(CC_FLAGS_KASAN_RUNTIME)
34
+CFLAGS_shadow.o := $(CC_FLAGS_KASAN_RUNTIME)
35
+CFLAGS_hw_tags.o := $(CC_FLAGS_KASAN_RUNTIME)
36
+CFLAGS_sw_tags.o := $(CC_FLAGS_KASAN_RUNTIME)
2137
22
-obj-$(CONFIG_KASAN) := common.o init.o report.o
23
-obj-$(CONFIG_KASAN_GENERIC) += generic.o generic_report.o quarantine.o
24
-obj-$(CONFIG_KASAN_SW_TAGS) += tags.o tags_report.o
38
+obj-$(CONFIG_KASAN) := common.o report.o
39
+obj-$(CONFIG_KASAN_GENERIC) += init.o generic.o report_generic.o shadow.o quarantine.o
40
+obj-$(CONFIG_KASAN_HW_TAGS) += hw_tags.o report_hw_tags.o
41
+obj-$(CONFIG_KASAN_SW_TAGS) += init.o report_sw_tags.o shadow.o sw_tags.o