1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 # 2 # 3 # Makefile for KernelMemorySanitizer (KMSAN). 3 # Makefile for KernelMemorySanitizer (KMSAN). 4 # 4 # 5 # 5 # 6 obj-y := core.o instrumentation.o init.o hooks 6 obj-y := core.o instrumentation.o init.o hooks.o report.o shadow.o 7 7 8 KMSAN_SANITIZE := n 8 KMSAN_SANITIZE := n 9 KCOV_INSTRUMENT := n 9 KCOV_INSTRUMENT := n 10 UBSAN_SANITIZE := n 10 UBSAN_SANITIZE := n 11 11 12 # Disable instrumentation of KMSAN runtime wit 12 # Disable instrumentation of KMSAN runtime with other tools. 13 CC_FLAGS_KMSAN_RUNTIME := -fno-stack-protector 13 CC_FLAGS_KMSAN_RUNTIME := -fno-stack-protector 14 CC_FLAGS_KMSAN_RUNTIME += $(call cc-option,-fn 14 CC_FLAGS_KMSAN_RUNTIME += $(call cc-option,-fno-conserve-stack) 15 CC_FLAGS_KMSAN_RUNTIME += -DDISABLE_BRANCH_PRO 15 CC_FLAGS_KMSAN_RUNTIME += -DDISABLE_BRANCH_PROFILING 16 16 17 # Disable ftrace to avoid recursion. !! 17 CFLAGS_REMOVE.o = $(CC_FLAGS_FTRACE) 18 CFLAGS_REMOVE_core.o = $(CC_FLAGS_FTRACE) << 19 CFLAGS_REMOVE_hooks.o = $(CC_FLAGS_FTRACE) << 20 CFLAGS_REMOVE_init.o = $(CC_FLAGS_FTRACE) << 21 CFLAGS_REMOVE_instrumentation.o = $(CC_FLAGS_F << 22 CFLAGS_REMOVE_report.o = $(CC_FLAGS_FTRACE) << 23 CFLAGS_REMOVE_shadow.o = $(CC_FLAGS_FTRACE) << 24 18 25 CFLAGS_core.o := $(CC_FLAGS_KMSAN_RUNTIME) 19 CFLAGS_core.o := $(CC_FLAGS_KMSAN_RUNTIME) 26 CFLAGS_hooks.o := $(CC_FLAGS_KMSAN_RUNTIME) 20 CFLAGS_hooks.o := $(CC_FLAGS_KMSAN_RUNTIME) 27 CFLAGS_init.o := $(CC_FLAGS_KMSAN_RUNTIME) 21 CFLAGS_init.o := $(CC_FLAGS_KMSAN_RUNTIME) 28 CFLAGS_instrumentation.o := $(CC_FLAGS_KMSAN_R 22 CFLAGS_instrumentation.o := $(CC_FLAGS_KMSAN_RUNTIME) 29 CFLAGS_report.o := $(CC_FLAGS_KMSAN_RUNTIME) 23 CFLAGS_report.o := $(CC_FLAGS_KMSAN_RUNTIME) 30 CFLAGS_shadow.o := $(CC_FLAGS_KMSAN_RUNTIME) 24 CFLAGS_shadow.o := $(CC_FLAGS_KMSAN_RUNTIME) 31 25 32 obj-$(CONFIG_KMSAN_KUNIT_TEST) += kmsan_test.o 26 obj-$(CONFIG_KMSAN_KUNIT_TEST) += kmsan_test.o 33 KMSAN_SANITIZE_kmsan_test.o := y 27 KMSAN_SANITIZE_kmsan_test.o := y 34 CFLAGS_kmsan_test.o += $(call cc-disable-warni 28 CFLAGS_kmsan_test.o += $(call cc-disable-warning, uninitialized)
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.