1# SPDX-License-Identifier: GPL-2.0 2 3# The compilers are complaining about unused variables inside an if(0) scope 4# block. This is daft, shut them up. 5ccflags-y += $(call cc-disable-warning, unused-but-set-variable) 6 7# These files are disabled because they produce non-interesting flaky coverage 8# that is not a function of syscall inputs. E.g. involuntary context switches. 9KCOV_INSTRUMENT := n 10 11# Disable KCSAN to avoid excessive noise and performance degradation. To avoid 12# false positives ensure barriers implied by sched functions are instrumented. 13KCSAN_SANITIZE := n 14KCSAN_INSTRUMENT_BARRIERS := y 15 16ifneq ($(CONFIG_SCHED_OMIT_FRAME_POINTER),y) 17# According to Alan Modra <alan@linuxcare.com.au>, the -fno-omit-frame-pointer is 18# needed for x86 only. Why this used to be enabled for all architectures is beyond 19# 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 Schwab says it's also needed on m68k 21# to get a correct value for the wait-channel (WCHAN in ps). --davidm 22CFLAGS_core.o := $(PROFILING) -fno-omit-frame-pointer 23endif 24 25obj-y += core.o loadavg.o clock.o cputime.o 26obj-y += idle.o fair.o rt.o deadline.o 27obj-y += wait.o wait_bit.o swait.o completion.o 28 29obj-$(CONFIG_SMP) += cpupri.o cpudeadline.o topology.o stop_task.o pelt.o 30obj-$(CONFIG_SCHED_AUTOGROUP) += autogroup.o 31obj-$(CONFIG_SCHEDSTATS) += stats.o 32obj-$(CONFIG_SCHED_DEBUG) += debug.o 33obj-$(CONFIG_CGROUP_CPUACCT) += cpuacct.o 34obj-$(CONFIG_CPU_FREQ) += cpufreq.o 35obj-$(CONFIG_CPU_FREQ_GOV_SCHEDUTIL) += cpufreq_schedutil.o 36obj-$(CONFIG_MEMBARRIER) += membarrier.o 37obj-$(CONFIG_CPU_ISOLATION) += isolation.o 38obj-$(CONFIG_PSI) += psi.o 39obj-$(CONFIG_SCHED_CORE) += core_sched.o 40