1  // SPDX-License-Identifier: GPL-2.0-only
2  /*
3   * These are the scheduling policy related scheduler files, built
4   * in a single compilation unit for build efficiency reasons.
5   *
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
10   *   cost. )
11   *
12   * core.c and fair.c are built separately.
13   */
14  
15  /* Headers: */
16  #include <linux/sched/clock.h>
17  #include <linux/sched/cputime.h>
18  #include <linux/sched/hotplug.h>
19  #include <linux/sched/posix-timers.h>
20  #include <linux/sched/rt.h>
21  
22  #include <linux/cpuidle.h>
23  #include <linux/jiffies.h>
24  #include <linux/livepatch.h>
25  #include <linux/psi.h>
26  #include <linux/seqlock_api.h>
27  #include <linux/slab.h>
28  #include <linux/suspend.h>
29  #include <linux/tsacct_kern.h>
30  #include <linux/vtime.h>
31  
32  #include <uapi/linux/sched/types.h>
33  
34  #include "sched.h"
35  #include "smp.h"
36  
37  #include "autogroup.h"
38  #include "stats.h"
39  #include "pelt.h"
40  
41  /* Source code modules: */
42  
43  #include "idle.c"
44  
45  #include "rt.c"
46  
47  #ifdef CONFIG_SMP
48  # include "cpudeadline.c"
49  # include "pelt.c"
50  #endif
51  
52  #include "cputime.c"
53  #include "deadline.c"
54  
55