aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sched.h
diff options
context:
space:
mode:
authorLi Zefan <lizefan@huawei.com>2013-03-05 03:06:55 -0500
committerIngo Molnar <mingo@kernel.org>2013-03-06 05:24:33 -0500
commitc82ba9fa7588dfd02d4dc99ad1af486304bc424c (patch)
tree870cdeaa3aad811645cce93b1c15646ed4b9f133 /include/linux/sched.h
parentb13095f07f25464de65f5ce5ea94e16813d67488 (diff)
sched: Move struct sched_class to kernel/sched/sched.h
It's used internally only. Signed-off-by: Li Zefan <lizefan@huawei.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/5135A79F.8090502@huawei.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/linux/sched.h')
-rw-r--r--include/linux/sched.h59
1 files changed, 0 insertions, 59 deletions
diff --git a/include/linux/sched.h b/include/linux/sched.h
index 863b505ac48e..04b834fa14bc 100644
--- a/include/linux/sched.h
+++ b/include/linux/sched.h
@@ -917,65 +917,6 @@ struct mempolicy;
917struct pipe_inode_info; 917struct pipe_inode_info;
918struct uts_namespace; 918struct uts_namespace;
919 919
920struct rq;
921struct sched_domain;
922
923#define ENQUEUE_WAKEUP 1
924#define ENQUEUE_HEAD 2
925#ifdef CONFIG_SMP
926#define ENQUEUE_WAKING 4 /* sched_class::task_waking was called */
927#else
928#define ENQUEUE_WAKING 0
929#endif
930
931#define DEQUEUE_SLEEP 1
932
933struct sched_class {
934 const struct sched_class *next;
935
936 void (*enqueue_task) (struct rq *rq, struct task_struct *p, int flags);
937 void (*dequeue_task) (struct rq *rq, struct task_struct *p, int flags);
938 void (*yield_task) (struct rq *rq);
939 bool (*yield_to_task) (struct rq *rq, struct task_struct *p, bool preempt);
940
941 void (*check_preempt_curr) (struct rq *rq, struct task_struct *p, int flags);
942
943 struct task_struct * (*pick_next_task) (struct rq *rq);
944 void (*put_prev_task) (struct rq *rq, struct task_struct *p);
945
946#ifdef CONFIG_SMP
947 int (*select_task_rq)(struct task_struct *p, int sd_flag, int flags);
948 void (*migrate_task_rq)(struct task_struct *p, int next_cpu);
949
950 void (*pre_schedule) (struct rq *this_rq, struct task_struct *task);
951 void (*post_schedule) (struct rq *this_rq);
952 void (*task_waking) (struct task_struct *task);
953 void (*task_woken) (struct rq *this_rq, struct task_struct *task);
954
955 void (*set_cpus_allowed)(struct task_struct *p,
956 const struct cpumask *newmask);
957
958 void (*rq_online)(struct rq *rq);
959 void (*rq_offline)(struct rq *rq);
960#endif
961
962 void (*set_curr_task) (struct rq *rq);
963 void (*task_tick) (struct rq *rq, struct task_struct *p, int queued);
964 void (*task_fork) (struct task_struct *p);
965
966 void (*switched_from) (struct rq *this_rq, struct task_struct *task);
967 void (*switched_to) (struct rq *this_rq, struct task_struct *task);
968 void (*prio_changed) (struct rq *this_rq, struct task_struct *task,
969 int oldprio);
970
971 unsigned int (*get_rr_interval) (struct rq *rq,
972 struct task_struct *task);
973
974#ifdef CONFIG_FAIR_GROUP_SCHED
975 void (*task_move_group) (struct task_struct *p, int on_rq);
976#endif
977};
978
979struct load_weight { 920struct load_weight {
980 unsigned long weight, inv_weight; 921 unsigned long weight, inv_weight;
981}; 922};