Commit | Line | Data |
---|---|---|
801c1419 IM |
1 | // SPDX-License-Identifier: GPL-2.0-only |
2 | /* | |
3 | * These are various utility functions of the scheduler, | |
4 | * built 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, fair.c, smp.c and policy.c, the other | |
8 | * big compilation units. This helps balance build time, while | |
9 | * coalescing source files to amortize header inclusion | |
10 | * cost. ) | |
11 | */ | |
e81daa7b IM |
12 | #include <linux/sched/clock.h> |
13 | #include <linux/sched/cputime.h> | |
14 | #include <linux/sched/debug.h> | |
15 | #include <linux/sched/isolation.h> | |
16 | #include <linux/sched/loadavg.h> | |
d664e399 | 17 | #include <linux/sched/nohz.h> |
e81daa7b IM |
18 | #include <linux/sched/mm.h> |
19 | #include <linux/sched/rseq_api.h> | |
20 | #include <linux/sched/task_stack.h> | |
21 | ||
22 | #include <linux/cpufreq.h> | |
23 | #include <linux/cpumask_api.h> | |
24 | #include <linux/cpuset.h> | |
25 | #include <linux/ctype.h> | |
26 | #include <linux/debugfs.h> | |
27 | #include <linux/energy_model.h> | |
28 | #include <linux/hashtable_api.h> | |
29 | #include <linux/irq.h> | |
30 | #include <linux/kobject_api.h> | |
31 | #include <linux/membarrier.h> | |
32 | #include <linux/mempolicy.h> | |
33 | #include <linux/nmi.h> | |
34 | #include <linux/nospec.h> | |
35 | #include <linux/proc_fs.h> | |
36 | #include <linux/psi.h> | |
37 | #include <linux/psi.h> | |
38 | #include <linux/ptrace_api.h> | |
39 | #include <linux/sched_clock.h> | |
40 | #include <linux/security.h> | |
41 | #include <linux/spinlock_api.h> | |
42 | #include <linux/swait_api.h> | |
43 | #include <linux/timex.h> | |
44 | #include <linux/utsname.h> | |
45 | #include <linux/wait_api.h> | |
46 | #include <linux/workqueue_api.h> | |
47 | ||
e81daa7b IM |
48 | #include <uapi/linux/prctl.h> |
49 | #include <uapi/linux/sched/types.h> | |
801c1419 | 50 | |
4ff8f2ca IM |
51 | #include <asm/switch_to.h> |
52 | ||
801c1419 IM |
53 | #include "sched.h" |
54 | #include "sched-pelt.h" | |
b9e9c6ca IM |
55 | #include "stats.h" |
56 | #include "autogroup.h" | |
801c1419 | 57 | |
801c1419 IM |
58 | #include "clock.c" |
59 | ||
60 | #ifdef CONFIG_CGROUP_CPUACCT | |
61 | # include "cpuacct.c" | |
62 | #endif | |
63 | ||
64 | #ifdef CONFIG_CPU_FREQ | |
65 | # include "cpufreq.c" | |
66 | #endif | |
67 | ||
68 | #ifdef CONFIG_CPU_FREQ_GOV_SCHEDUTIL | |
69 | # include "cpufreq_schedutil.c" | |
70 | #endif | |
71 | ||
72 | #ifdef CONFIG_SCHED_DEBUG | |
73 | # include "debug.c" | |
74 | #endif | |
75 | ||
76 | #ifdef CONFIG_SCHEDSTATS | |
77 | # include "stats.c" | |
78 | #endif | |
79 | ||
80 | #include "loadavg.c" | |
81 | #include "completion.c" | |
82 | #include "swait.c" | |
83 | #include "wait_bit.c" | |
84 | #include "wait.c" | |
85 | ||
86 | #ifdef CONFIG_SMP | |
87 | # include "cpupri.c" | |
88 | # include "stop_task.c" | |
89 | # include "topology.c" | |
90 | #endif | |
91 | ||
92 | #ifdef CONFIG_SCHED_CORE | |
93 | # include "core_sched.c" | |
94 | #endif | |
95 | ||
96 | #ifdef CONFIG_PSI | |
97 | # include "psi.c" | |
98 | #endif | |
99 | ||
100 | #ifdef CONFIG_MEMBARRIER | |
101 | # include "membarrier.c" | |
102 | #endif | |
103 | ||
104 | #ifdef CONFIG_CPU_ISOLATION | |
105 | # include "isolation.c" | |
106 | #endif | |
107 | ||
108 | #ifdef CONFIG_SCHED_AUTOGROUP | |
109 | # include "autogroup.c" | |
110 | #endif |