build_utility.c 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  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. */
  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>
  17. #include <linux/sched/nohz.h>
  18. #include <linux/sched/mm.h>
  19. #include <linux/sched/rseq_api.h>
  20. #include <linux/sched/task_stack.h>
  21. #include <linux/cpufreq.h>
  22. #include <linux/cpumask_api.h>
  23. #include <linux/cpuset.h>
  24. #include <linux/ctype.h>
  25. #include <linux/debugfs.h>
  26. #include <linux/energy_model.h>
  27. #include <linux/hashtable_api.h>
  28. #include <linux/irq.h>
  29. #include <linux/kobject_api.h>
  30. #include <linux/membarrier.h>
  31. #include <linux/mempolicy.h>
  32. #include <linux/nmi.h>
  33. #include <linux/nospec.h>
  34. #include <linux/proc_fs.h>
  35. #include <linux/psi.h>
  36. #include <linux/psi.h>
  37. #include <linux/ptrace_api.h>
  38. #include <linux/sched_clock.h>
  39. #include <linux/security.h>
  40. #include <linux/spinlock_api.h>
  41. #include <linux/swait_api.h>
  42. #include <linux/timex.h>
  43. #include <linux/utsname.h>
  44. #include <linux/wait_api.h>
  45. #include <linux/workqueue_api.h>
  46. #include <uapi/linux/prctl.h>
  47. #include <uapi/linux/sched/types.h>
  48. #include <asm/switch_to.h>
  49. #include "sched.h"
  50. #include "sched-pelt.h"
  51. #include "stats.h"
  52. #include "autogroup.h"
  53. #include "clock.c"
  54. #ifdef CONFIG_CGROUP_CPUACCT
  55. # include "cpuacct.c"
  56. #endif
  57. #ifdef CONFIG_CPU_FREQ
  58. # include "cpufreq.c"
  59. #endif
  60. #ifdef CONFIG_CPU_FREQ_GOV_SCHEDUTIL
  61. # include "cpufreq_schedutil.c"
  62. #endif
  63. #ifdef CONFIG_SCHED_DEBUG
  64. # include "debug.c"
  65. #endif
  66. #ifdef CONFIG_SCHEDSTATS
  67. # include "stats.c"
  68. #endif
  69. #include "loadavg.c"
  70. #include "completion.c"
  71. #include "swait.c"
  72. #include "wait_bit.c"
  73. #include "wait.c"
  74. #ifdef CONFIG_SMP
  75. # include "cpupri.c"
  76. # include "stop_task.c"
  77. # include "topology.c"
  78. #endif
  79. #ifdef CONFIG_SCHED_CORE
  80. # include "core_sched.c"
  81. #endif
  82. #ifdef CONFIG_PSI
  83. # include "psi.c"
  84. #endif
  85. #ifdef CONFIG_MEMBARRIER
  86. # include "membarrier.c"
  87. #endif
  88. #ifdef CONFIG_CPU_ISOLATION
  89. # include "isolation.c"
  90. #endif
  91. #ifdef CONFIG_SCHED_AUTOGROUP
  92. # include "autogroup.c"
  93. #endif