aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sched.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r--include/linux/sched.h27
1 files changed, 17 insertions, 10 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 4ac2c0578e0f..1c4f3e9b9bc5 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -90,6 +90,7 @@ struct sched_param {
90#include <linux/task_io_accounting.h> 90#include <linux/task_io_accounting.h>
91#include <linux/latencytop.h> 91#include <linux/latencytop.h>
92#include <linux/cred.h> 92#include <linux/cred.h>
93#include <linux/llist.h>
93 94
94#include <asm/processor.h> 95#include <asm/processor.h>
95 96
@@ -270,7 +271,6 @@ extern void init_idle_bootup_task(struct task_struct *idle);
270 271
271extern int runqueue_is_locked(int cpu); 272extern int runqueue_is_locked(int cpu);
272 273
273extern cpumask_var_t nohz_cpu_mask;
274#if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ) 274#if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ)
275extern void select_nohz_load_balancer(int stop_tick); 275extern void select_nohz_load_balancer(int stop_tick);
276extern int get_nohz_timer_target(void); 276extern int get_nohz_timer_target(void);
@@ -510,7 +510,7 @@ struct task_cputime {
510struct thread_group_cputimer { 510struct thread_group_cputimer {
511 struct task_cputime cputime; 511 struct task_cputime cputime;
512 int running; 512 int running;
513 spinlock_t lock; 513 raw_spinlock_t lock;
514}; 514};
515 515
516#include <linux/rwsem.h> 516#include <linux/rwsem.h>
@@ -1225,7 +1225,7 @@ struct task_struct {
1225 unsigned int ptrace; 1225 unsigned int ptrace;
1226 1226
1227#ifdef CONFIG_SMP 1227#ifdef CONFIG_SMP
1228 struct task_struct *wake_entry; 1228 struct llist_node wake_entry;
1229 int on_cpu; 1229 int on_cpu;
1230#endif 1230#endif
1231 int on_rq; 1231 int on_rq;
@@ -1260,9 +1260,6 @@ struct task_struct {
1260#ifdef CONFIG_PREEMPT_RCU 1260#ifdef CONFIG_PREEMPT_RCU
1261 int rcu_read_lock_nesting; 1261 int rcu_read_lock_nesting;
1262 char rcu_read_unlock_special; 1262 char rcu_read_unlock_special;
1263#if defined(CONFIG_RCU_BOOST) && defined(CONFIG_TREE_PREEMPT_RCU)
1264 int rcu_boosted;
1265#endif /* #if defined(CONFIG_RCU_BOOST) && defined(CONFIG_TREE_PREEMPT_RCU) */
1266 struct list_head rcu_node_entry; 1263 struct list_head rcu_node_entry;
1267#endif /* #ifdef CONFIG_PREEMPT_RCU */ 1264#endif /* #ifdef CONFIG_PREEMPT_RCU */
1268#ifdef CONFIG_TREE_PREEMPT_RCU 1265#ifdef CONFIG_TREE_PREEMPT_RCU
@@ -1524,7 +1521,13 @@ struct task_struct {
1524#ifdef CONFIG_FAULT_INJECTION 1521#ifdef CONFIG_FAULT_INJECTION
1525 int make_it_fail; 1522 int make_it_fail;
1526#endif 1523#endif
1527 struct prop_local_single dirties; 1524 /*
1525 * when (nr_dirtied >= nr_dirtied_pause), it's time to call
1526 * balance_dirty_pages() for some dirty throttling pause
1527 */
1528 int nr_dirtied;
1529 int nr_dirtied_pause;
1530
1528#ifdef CONFIG_LATENCYTOP 1531#ifdef CONFIG_LATENCYTOP
1529 int latency_record_count; 1532 int latency_record_count;
1530 struct latency_record latency_record[LT_SAVECOUNT]; 1533 struct latency_record latency_record[LT_SAVECOUNT];
@@ -1956,7 +1959,6 @@ static inline void disable_sched_clock_irqtime(void) {}
1956 1959
1957extern unsigned long long 1960extern unsigned long long
1958task_sched_runtime(struct task_struct *task); 1961task_sched_runtime(struct task_struct *task);
1959extern unsigned long long thread_group_sched_runtime(struct task_struct *task);
1960 1962
1961/* sched_exec is called by processes performing an exec */ 1963/* sched_exec is called by processes performing an exec */
1962#ifdef CONFIG_SMP 1964#ifdef CONFIG_SMP
@@ -2040,6 +2042,10 @@ static inline void sched_autogroup_fork(struct signal_struct *sig) { }
2040static inline void sched_autogroup_exit(struct signal_struct *sig) { } 2042static inline void sched_autogroup_exit(struct signal_struct *sig) { }
2041#endif 2043#endif
2042 2044
2045#ifdef CONFIG_CFS_BANDWIDTH
2046extern unsigned int sysctl_sched_cfs_bandwidth_slice;
2047#endif
2048
2043#ifdef CONFIG_RT_MUTEXES 2049#ifdef CONFIG_RT_MUTEXES
2044extern int rt_mutex_getprio(struct task_struct *p); 2050extern int rt_mutex_getprio(struct task_struct *p);
2045extern void rt_mutex_setprio(struct task_struct *p, int prio); 2051extern void rt_mutex_setprio(struct task_struct *p, int prio);
@@ -2166,7 +2172,8 @@ extern int force_sigsegv(int, struct task_struct *);
2166extern int force_sig_info(int, struct siginfo *, struct task_struct *); 2172extern int force_sig_info(int, struct siginfo *, struct task_struct *);
2167extern int __kill_pgrp_info(int sig, struct siginfo *info, struct pid *pgrp); 2173extern int __kill_pgrp_info(int sig, struct siginfo *info, struct pid *pgrp);
2168extern int kill_pid_info(int sig, struct siginfo *info, struct pid *pid); 2174extern int kill_pid_info(int sig, struct siginfo *info, struct pid *pid);
2169extern int kill_pid_info_as_uid(int, struct siginfo *, struct pid *, uid_t, uid_t, u32); 2175extern int kill_pid_info_as_cred(int, struct siginfo *, struct pid *,
2176 const struct cred *, u32);
2170extern int kill_pgrp(struct pid *pid, int sig, int priv); 2177extern int kill_pgrp(struct pid *pid, int sig, int priv);
2171extern int kill_pid(struct pid *pid, int sig, int priv); 2178extern int kill_pid(struct pid *pid, int sig, int priv);
2172extern int kill_proc_info(int, struct siginfo *, pid_t); 2179extern int kill_proc_info(int, struct siginfo *, pid_t);
@@ -2566,7 +2573,7 @@ void thread_group_cputimer(struct task_struct *tsk, struct task_cputime *times);
2566 2573
2567static inline void thread_group_cputime_init(struct signal_struct *sig) 2574static inline void thread_group_cputime_init(struct signal_struct *sig)
2568{ 2575{
2569 spin_lock_init(&sig->cputimer.lock); 2576 raw_spin_lock_init(&sig->cputimer.lock);
2570} 2577}
2571 2578
2572/* 2579/*