aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sched.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-03-14 22:14:06 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2016-03-14 22:14:06 -0400
commitd4e796152a049f6a675f8b6dcf7080a9d80014e5 (patch)
tree3d7bff1541b4035f7fd06c7259032e616ea6b497 /include/linux/sched.h
parentd88bfe1d68735595d57bd071294f664c4f054435 (diff)
parentf9c904b7613b8b4c85b10cd6b33ad41b2843fa9d (diff)
Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull scheduler updates from Ingo Molnar: "The main changes in this cycle are: - Make schedstats a runtime tunable (disabled by default) and optimize it via static keys. As most distributions enable CONFIG_SCHEDSTATS=y due to its instrumentation value, this is a nice performance enhancement. (Mel Gorman) - Implement 'simple waitqueues' (swait): these are just pure waitqueues without any of the more complex features of full-blown waitqueues (callbacks, wake flags, wake keys, etc.). Simple waitqueues have less memory overhead and are faster. Use simple waitqueues in the RCU code (in 4 different places) and for handling KVM vCPU wakeups. (Peter Zijlstra, Daniel Wagner, Thomas Gleixner, Paul Gortmaker, Marcelo Tosatti) - sched/numa enhancements (Rik van Riel) - NOHZ performance enhancements (Rik van Riel) - Various sched/deadline enhancements (Steven Rostedt) - Various fixes (Peter Zijlstra) - ... and a number of other fixes, cleanups and smaller enhancements" * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (29 commits) sched/cputime: Fix steal_account_process_tick() to always return jiffies sched/deadline: Remove dl_new from struct sched_dl_entity Revert "kbuild: Add option to turn incompatible pointer check into error" sched/deadline: Remove superfluous call to switched_to_dl() sched/debug: Fix preempt_disable_ip recording for preempt_disable() sched, time: Switch VIRT_CPU_ACCOUNTING_GEN to jiffy granularity time, acct: Drop irq save & restore from __acct_update_integrals() acct, time: Change indentation in __acct_update_integrals() sched, time: Remove non-power-of-two divides from __acct_update_integrals() sched/rt: Kick RT bandwidth timer immediately on start up sched/debug: Add deadline scheduler bandwidth ratio to /proc/sched_debug sched/debug: Move sched_domain_sysctl to debug.c sched/debug: Move the /sys/kernel/debug/sched_features file setup into debug.c sched/rt: Fix PI handling vs. sched_setscheduler() sched/core: Remove duplicated sched_group_set_shares() prototype sched/fair: Consolidate nohz CPU load update code sched/fair: Avoid using decay_load_missed() with a negative value sched/deadline: Always calculate end of period on sched_yield() sched/cgroup: Fix cgroup entity load tracking tear-down rcu: Use simple wait queues where possible in rcutree ...
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r--include/linux/sched.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index a10494a94cc3..838a89a78332 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -182,8 +182,6 @@ extern void update_cpu_load_nohz(int active);
182static inline void update_cpu_load_nohz(int active) { } 182static inline void update_cpu_load_nohz(int active) { }
183#endif 183#endif
184 184
185extern unsigned long get_parent_ip(unsigned long addr);
186
187extern void dump_cpu_task(int cpu); 185extern void dump_cpu_task(int cpu);
188 186
189struct seq_file; 187struct seq_file;
@@ -920,6 +918,10 @@ static inline int sched_info_on(void)
920#endif 918#endif
921} 919}
922 920
921#ifdef CONFIG_SCHEDSTATS
922void force_schedstat_enabled(void);
923#endif
924
923enum cpu_idle_type { 925enum cpu_idle_type {
924 CPU_IDLE, 926 CPU_IDLE,
925 CPU_NOT_IDLE, 927 CPU_NOT_IDLE,
@@ -1289,6 +1291,8 @@ struct sched_rt_entity {
1289 unsigned long timeout; 1291 unsigned long timeout;
1290 unsigned long watchdog_stamp; 1292 unsigned long watchdog_stamp;
1291 unsigned int time_slice; 1293 unsigned int time_slice;
1294 unsigned short on_rq;
1295 unsigned short on_list;
1292 1296
1293 struct sched_rt_entity *back; 1297 struct sched_rt_entity *back;
1294#ifdef CONFIG_RT_GROUP_SCHED 1298#ifdef CONFIG_RT_GROUP_SCHED
@@ -1329,10 +1333,6 @@ struct sched_dl_entity {
1329 * task has to wait for a replenishment to be performed at the 1333 * task has to wait for a replenishment to be performed at the
1330 * next firing of dl_timer. 1334 * next firing of dl_timer.
1331 * 1335 *
1332 * @dl_new tells if a new instance arrived. If so we must
1333 * start executing it with full runtime and reset its absolute
1334 * deadline;
1335 *
1336 * @dl_boosted tells if we are boosted due to DI. If so we are 1336 * @dl_boosted tells if we are boosted due to DI. If so we are
1337 * outside bandwidth enforcement mechanism (but only until we 1337 * outside bandwidth enforcement mechanism (but only until we
1338 * exit the critical section); 1338 * exit the critical section);
@@ -1340,7 +1340,7 @@ struct sched_dl_entity {
1340 * @dl_yielded tells if task gave up the cpu before consuming 1340 * @dl_yielded tells if task gave up the cpu before consuming
1341 * all its available runtime during the last job. 1341 * all its available runtime during the last job.
1342 */ 1342 */
1343 int dl_throttled, dl_new, dl_boosted, dl_yielded; 1343 int dl_throttled, dl_boosted, dl_yielded;
1344 1344
1345 /* 1345 /*
1346 * Bandwidth enforcement timer. Each -deadline task has its 1346 * Bandwidth enforcement timer. Each -deadline task has its