diff options
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r-- | include/linux/sched.h | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h index 8478f334d732..55e30d114477 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -247,6 +247,7 @@ extern void init_idle(struct task_struct *idle, int cpu); | |||
247 | extern void init_idle_bootup_task(struct task_struct *idle); | 247 | extern void init_idle_bootup_task(struct task_struct *idle); |
248 | 248 | ||
249 | extern int runqueue_is_locked(void); | 249 | extern int runqueue_is_locked(void); |
250 | extern void task_rq_unlock_wait(struct task_struct *p); | ||
250 | 251 | ||
251 | extern cpumask_t nohz_cpu_mask; | 252 | extern cpumask_t nohz_cpu_mask; |
252 | #if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ) | 253 | #if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ) |
@@ -629,6 +630,10 @@ struct user_struct { | |||
629 | atomic_t inotify_watches; /* How many inotify watches does this user have? */ | 630 | atomic_t inotify_watches; /* How many inotify watches does this user have? */ |
630 | atomic_t inotify_devs; /* How many inotify devs does this user have opened? */ | 631 | atomic_t inotify_devs; /* How many inotify devs does this user have opened? */ |
631 | #endif | 632 | #endif |
633 | #ifdef CONFIG_EPOLL | ||
634 | atomic_t epoll_devs; /* The number of epoll descriptors currently open */ | ||
635 | atomic_t epoll_watches; /* The number of file descriptors currently watched */ | ||
636 | #endif | ||
632 | #ifdef CONFIG_POSIX_MQUEUE | 637 | #ifdef CONFIG_POSIX_MQUEUE |
633 | /* protected by mq_lock */ | 638 | /* protected by mq_lock */ |
634 | unsigned long mq_bytes; /* How many bytes can be allocated to mqueue? */ | 639 | unsigned long mq_bytes; /* How many bytes can be allocated to mqueue? */ |
@@ -936,7 +941,6 @@ struct sched_class { | |||
936 | void (*enqueue_task) (struct rq *rq, struct task_struct *p, int wakeup); | 941 | void (*enqueue_task) (struct rq *rq, struct task_struct *p, int wakeup); |
937 | void (*dequeue_task) (struct rq *rq, struct task_struct *p, int sleep); | 942 | void (*dequeue_task) (struct rq *rq, struct task_struct *p, int sleep); |
938 | void (*yield_task) (struct rq *rq); | 943 | void (*yield_task) (struct rq *rq); |
939 | int (*select_task_rq)(struct task_struct *p, int sync); | ||
940 | 944 | ||
941 | void (*check_preempt_curr) (struct rq *rq, struct task_struct *p, int sync); | 945 | void (*check_preempt_curr) (struct rq *rq, struct task_struct *p, int sync); |
942 | 946 | ||
@@ -944,6 +948,8 @@ struct sched_class { | |||
944 | void (*put_prev_task) (struct rq *rq, struct task_struct *p); | 948 | void (*put_prev_task) (struct rq *rq, struct task_struct *p); |
945 | 949 | ||
946 | #ifdef CONFIG_SMP | 950 | #ifdef CONFIG_SMP |
951 | int (*select_task_rq)(struct task_struct *p, int sync); | ||
952 | |||
947 | unsigned long (*load_balance) (struct rq *this_rq, int this_cpu, | 953 | unsigned long (*load_balance) (struct rq *this_rq, int this_cpu, |
948 | struct rq *busiest, unsigned long max_load_move, | 954 | struct rq *busiest, unsigned long max_load_move, |
949 | struct sched_domain *sd, enum cpu_idle_type idle, | 955 | struct sched_domain *sd, enum cpu_idle_type idle, |
@@ -955,16 +961,17 @@ struct sched_class { | |||
955 | void (*pre_schedule) (struct rq *this_rq, struct task_struct *task); | 961 | void (*pre_schedule) (struct rq *this_rq, struct task_struct *task); |
956 | void (*post_schedule) (struct rq *this_rq); | 962 | void (*post_schedule) (struct rq *this_rq); |
957 | void (*task_wake_up) (struct rq *this_rq, struct task_struct *task); | 963 | void (*task_wake_up) (struct rq *this_rq, struct task_struct *task); |
958 | #endif | ||
959 | 964 | ||
960 | void (*set_curr_task) (struct rq *rq); | ||
961 | void (*task_tick) (struct rq *rq, struct task_struct *p, int queued); | ||
962 | void (*task_new) (struct rq *rq, struct task_struct *p); | ||
963 | void (*set_cpus_allowed)(struct task_struct *p, | 965 | void (*set_cpus_allowed)(struct task_struct *p, |
964 | const cpumask_t *newmask); | 966 | const cpumask_t *newmask); |
965 | 967 | ||
966 | void (*rq_online)(struct rq *rq); | 968 | void (*rq_online)(struct rq *rq); |
967 | void (*rq_offline)(struct rq *rq); | 969 | void (*rq_offline)(struct rq *rq); |
970 | #endif | ||
971 | |||
972 | void (*set_curr_task) (struct rq *rq); | ||
973 | void (*task_tick) (struct rq *rq, struct task_struct *p, int queued); | ||
974 | void (*task_new) (struct rq *rq, struct task_struct *p); | ||
968 | 975 | ||
969 | void (*switched_from) (struct rq *this_rq, struct task_struct *task, | 976 | void (*switched_from) (struct rq *this_rq, struct task_struct *task, |
970 | int running); | 977 | int running); |
@@ -1347,6 +1354,8 @@ struct task_struct { | |||
1347 | */ | 1354 | */ |
1348 | unsigned long timer_slack_ns; | 1355 | unsigned long timer_slack_ns; |
1349 | unsigned long default_timer_slack_ns; | 1356 | unsigned long default_timer_slack_ns; |
1357 | |||
1358 | struct list_head *scm_work_list; | ||
1350 | }; | 1359 | }; |
1351 | 1360 | ||
1352 | /* | 1361 | /* |