1 // SPDX-License-Identifier: GPL-2.0-only
3 * These are the scheduling policy related scheduler files, built
4 * in a single compilation unit for build efficiency reasons.
6 * ( Incidentally, the size of the compilation unit is roughly
7 * comparable to core.c and fair.c, the other two big
8 * compilation units. This helps balance build time, while
9 * coalescing source files to amortize header inclusion
12 * core.c and fair.c are built separately.
16 #include <linux/sched/clock.h>
17 #include <linux/sched/cputime.h>
18 #include <linux/sched/hotplug.h>
19 #include <linux/sched/isolation.h>
20 #include <linux/sched/posix-timers.h>
21 #include <linux/sched/rt.h>
23 #include <linux/cpuidle.h>
24 #include <linux/jiffies.h>
25 #include <linux/kobject.h>
26 #include <linux/livepatch.h>
28 #include <linux/psi.h>
29 #include <linux/rhashtable.h>
30 #include <linux/seq_buf.h>
31 #include <linux/seqlock_api.h>
32 #include <linux/slab.h>
33 #include <linux/suspend.h>
34 #include <linux/tsacct_kern.h>
35 #include <linux/vtime.h>
36 #include <linux/sysrq.h>
37 #include <linux/percpu-rwsem.h>
39 #include <uapi/linux/sched/types.h>
44 #include "autogroup.h"
48 /* Source code modules: */
55 # include "cpudeadline.c"
62 #ifdef CONFIG_SCHED_CLASS_EXT