Browse Source

sched: add cfs_rq ops

add the set_task_cfs_rq() abstraction needed by CONFIG_FAIR_GROUP_SCHED.

(not activated yet)

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Ingo Molnar 18 years ago
parent
commit
138a8aeb5b
1 changed files with 12 additions and 0 deletions
  1. 12 0
      kernel/sched.c

+ 12 - 0
kernel/sched.c

@@ -449,6 +449,18 @@ static inline unsigned long long rq_clock(struct rq *rq)
 #define task_rq(p)		cpu_rq(task_cpu(p))
 #define task_rq(p)		cpu_rq(task_cpu(p))
 #define cpu_curr(cpu)		(cpu_rq(cpu)->curr)
 #define cpu_curr(cpu)		(cpu_rq(cpu)->curr)
 
 
+#ifdef CONFIG_FAIR_GROUP_SCHED
+/* Change a task's ->cfs_rq if it moves across CPUs */
+static inline void set_task_cfs_rq(struct task_struct *p)
+{
+	p->se.cfs_rq = &task_rq(p)->cfs;
+}
+#else
+static inline void set_task_cfs_rq(struct task_struct *p)
+{
+}
+#endif
+
 #ifndef prepare_arch_switch
 #ifndef prepare_arch_switch
 # define prepare_arch_switch(next)	do { } while (0)
 # define prepare_arch_switch(next)	do { } while (0)
 #endif
 #endif