1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 >> 2 ifdef CONFIG_FUNCTION_TRACER >> 3 CFLAGS_REMOVE_clock.o = $(CC_FLAGS_FTRACE) >> 4 endif 2 5 3 # The compilers are complaining about unused v 6 # The compilers are complaining about unused variables inside an if(0) scope 4 # block. This is daft, shut them up. 7 # block. This is daft, shut them up. 5 ccflags-y += $(call cc-disable-warning, unused 8 ccflags-y += $(call cc-disable-warning, unused-but-set-variable) 6 9 7 # These files are disabled because they produc 10 # These files are disabled because they produce non-interesting flaky coverage 8 # that is not a function of syscall inputs. E. 11 # that is not a function of syscall inputs. E.g. involuntary context switches. 9 KCOV_INSTRUMENT := n 12 KCOV_INSTRUMENT := n 10 13 11 # Disable KCSAN to avoid excessive noise and p !! 14 # There are numerous data races here, however, most of them are due to plain accesses. 12 # false positives ensure barriers implied by s !! 15 # This would make it even harder for syzbot to find reproducers, because these >> 16 # bugs trigger without specific input. Disable by default, but should re-enable >> 17 # eventually. 13 KCSAN_SANITIZE := n 18 KCSAN_SANITIZE := n 14 KCSAN_INSTRUMENT_BARRIERS := y << 15 19 16 ifneq ($(CONFIG_SCHED_OMIT_FRAME_POINTER),y) 20 ifneq ($(CONFIG_SCHED_OMIT_FRAME_POINTER),y) 17 # According to Alan Modra <alan@linuxcare.com.a 21 # According to Alan Modra <alan@linuxcare.com.au>, the -fno-omit-frame-pointer is 18 # needed for x86 only. Why this used to be en 22 # needed for x86 only. Why this used to be enabled for all architectures is beyond 19 # me. I suspect most platforms don't need thi 23 # me. I suspect most platforms don't need this, but until we know that for sure 20 # I turn this off for IA-64 only. Andreas Sch 24 # I turn this off for IA-64 only. Andreas Schwab says it's also needed on m68k 21 # to get a correct value for the wait-channel 25 # to get a correct value for the wait-channel (WCHAN in ps). --davidm 22 CFLAGS_core.o := $(PROFILING) -fno-omit-frame- 26 CFLAGS_core.o := $(PROFILING) -fno-omit-frame-pointer 23 endif 27 endif 24 28 25 # !! 29 obj-y += core.o loadavg.o clock.o cputime.o 26 # Build efficiency: !! 30 obj-y += idle.o fair.o rt.o deadline.o 27 # !! 31 obj-y += wait.o wait_bit.o swait.o completion.o 28 # These compilation units have roughly the sam !! 32 29 # build parallelizes well and finishes roughly !! 33 obj-$(CONFIG_SMP) += cpupri.o cpudeadline.o topology.o stop_task.o pelt.o 30 # !! 34 obj-$(CONFIG_SCHED_AUTOGROUP) += autogroup.o 31 obj-y += core.o !! 35 obj-$(CONFIG_SCHEDSTATS) += stats.o 32 obj-y += fair.o !! 36 obj-$(CONFIG_SCHED_DEBUG) += debug.o 33 obj-y += build_policy.o !! 37 obj-$(CONFIG_CGROUP_CPUACCT) += cpuacct.o 34 obj-y += build_utility.o !! 38 obj-$(CONFIG_CPU_FREQ) += cpufreq.o >> 39 obj-$(CONFIG_CPU_FREQ_GOV_SCHEDUTIL) += cpufreq_schedutil.o >> 40 obj-$(CONFIG_MEMBARRIER) += membarrier.o >> 41 obj-$(CONFIG_CPU_ISOLATION) += isolation.o >> 42 obj-$(CONFIG_PSI) += psi.o >> 43 obj-$(CONFIG_SCHED_CORE) += core_sched.o
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.