--- /dev/null
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * These are the scheduling policy related scheduler files, built
+ * in a single compilation unit for build efficiency reasons.
+ *
+ * ( Incidentally, the size of the compilation unit is roughly
+ * comparable to core.c and fair.c, the other two big
+ * compilation units. This helps balance build time, while
+ * coalescing source files to amortize header inclusion
+ * cost. )
+ *
+ * core.c and fair.c are built separately.
+ */
+
+#include "sched.h"
+#include "pelt.h"
+
+#include "idle.c"
+
+#include "rt.c"
+
+#ifdef CONFIG_SMP
+# include "cpudeadline.c"
+# include "pelt.c"
+#endif
+
+#include "cputime.c"
+#include "deadline.c"
+
* (NOTE: these are not related to SCHED_IDLE batch scheduled
* tasks which are handled in sched/fair.c )
*/
-#include "sched.h"
-
-#include <trace/events/power.h>
/* Linker adds these: start and end of __cpuidle functions */
extern char __cpuidle_text_start[], __cpuidle_text_end[];
#include <linux/prctl.h>
#include <linux/ptrace_api.h>
#include <linux/gfp_api.h>
+#include <linux/posix-timers.h>
#include <linux/sched/clock.h>
#include <linux/workqueue_api.h>
#include <linux/tick.h>
#include <linux/cpumask_api.h>
#include <linux/ctype.h>
#include <linux/file.h>
+#include <linux/hrtimer_api.h>
+#include <linux/interrupt.h>
#include <linux/jiffies.h>
#include <linux/kref_api.h>
+#include <linux/ktime_api.h>
#include <linux/lockdep_api.h>
#include <linux/module.h>
#include <linux/mutex_api.h>
#include <linux/sched/loadavg.h>
#include <linux/sched/mm.h>
#include <linux/sched/rseq_api.h>
+#include <linux/sched/signal.h>
#include <linux/seq_file.h>
#include <linux/seqlock.h>
+#include <linux/softirq.h>
+#include <linux/spinlock_api.h>
#include <linux/syscalls_api.h>
#include <linux/syscalls.h>
#include <linux/topology.h>
#include <linux/types.h>
+#include <linux/u64_stats_sync_api.h>
#include <linux/uaccess.h>
#include <linux/wait_api.h>
#include <linux/workqueue_api.h>