aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorLi Zefan <lizefan@huawei.com>2013-03-05 03:07:33 -0500
committerIngo Molnar <mingo@kernel.org>2013-03-06 05:24:34 -0500
commit25cc7da7e6336d3bb6a5bad3d3fa96fce9a81d5b (patch)
treef039848c9d9ef5a3baf50b3a40eaa867b013e40f /kernel
parent15f803c94bd92b17708aad9e74226fd0b2c9130c (diff)
sched: Move group scheduling functions out of include/linux/sched.h
- Make sched_group_{set_,}runtime(), sched_group_{set_,}period() and sched_rt_can_attach() static. - Move sched_{create,destroy,online,offline}_group() to kernel/sched/sched.h. - Remove declaration of sched_group_shares(). Signed-off-by: Li Zefan <lizefan@huawei.com> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/5135A7C5.3000708@huawei.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/sched/core.c10
-rw-r--r--kernel/sched/sched.h12
2 files changed, 17 insertions, 5 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c
index 7f12624a393c..9ad26c986441 100644
--- a/kernel/sched/core.c
+++ b/kernel/sched/core.c
@@ -7455,7 +7455,7 @@ unlock:
7455 return err; 7455 return err;
7456} 7456}
7457 7457
7458int sched_group_set_rt_runtime(struct task_group *tg, long rt_runtime_us) 7458static int sched_group_set_rt_runtime(struct task_group *tg, long rt_runtime_us)
7459{ 7459{
7460 u64 rt_runtime, rt_period; 7460 u64 rt_runtime, rt_period;
7461 7461
@@ -7467,7 +7467,7 @@ int sched_group_set_rt_runtime(struct task_group *tg, long rt_runtime_us)
7467 return tg_set_rt_bandwidth(tg, rt_period, rt_runtime); 7467 return tg_set_rt_bandwidth(tg, rt_period, rt_runtime);
7468} 7468}
7469 7469
7470long sched_group_rt_runtime(struct task_group *tg) 7470static long sched_group_rt_runtime(struct task_group *tg)
7471{ 7471{
7472 u64 rt_runtime_us; 7472 u64 rt_runtime_us;
7473 7473
@@ -7479,7 +7479,7 @@ long sched_group_rt_runtime(struct task_group *tg)
7479 return rt_runtime_us; 7479 return rt_runtime_us;
7480} 7480}
7481 7481
7482int sched_group_set_rt_period(struct task_group *tg, long rt_period_us) 7482static int sched_group_set_rt_period(struct task_group *tg, long rt_period_us)
7483{ 7483{
7484 u64 rt_runtime, rt_period; 7484 u64 rt_runtime, rt_period;
7485 7485
@@ -7492,7 +7492,7 @@ int sched_group_set_rt_period(struct task_group *tg, long rt_period_us)
7492 return tg_set_rt_bandwidth(tg, rt_period, rt_runtime); 7492 return tg_set_rt_bandwidth(tg, rt_period, rt_runtime);
7493} 7493}
7494 7494
7495long sched_group_rt_period(struct task_group *tg) 7495static long sched_group_rt_period(struct task_group *tg)
7496{ 7496{
7497 u64 rt_period_us; 7497 u64 rt_period_us;
7498 7498
@@ -7527,7 +7527,7 @@ static int sched_rt_global_constraints(void)
7527 return ret; 7527 return ret;
7528} 7528}
7529 7529
7530int sched_rt_can_attach(struct task_group *tg, struct task_struct *tsk) 7530static int sched_rt_can_attach(struct task_group *tg, struct task_struct *tsk)
7531{ 7531{
7532 /* Don't accept realtime tasks when there is no way for them to run */ 7532 /* Don't accept realtime tasks when there is no way for them to run */
7533 if (rt_task(tsk) && tg->rt_bandwidth.rt_runtime == 0) 7533 if (rt_task(tsk) && tg->rt_bandwidth.rt_runtime == 0)
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
index eca526d7afbd..304fc1c77143 100644
--- a/kernel/sched/sched.h
+++ b/kernel/sched/sched.h
@@ -221,6 +221,18 @@ extern void init_tg_rt_entry(struct task_group *tg, struct rt_rq *rt_rq,
221 struct sched_rt_entity *rt_se, int cpu, 221 struct sched_rt_entity *rt_se, int cpu,
222 struct sched_rt_entity *parent); 222 struct sched_rt_entity *parent);
223 223
224extern struct task_group *sched_create_group(struct task_group *parent);
225extern void sched_online_group(struct task_group *tg,
226 struct task_group *parent);
227extern void sched_destroy_group(struct task_group *tg);
228extern void sched_offline_group(struct task_group *tg);
229
230extern void sched_move_task(struct task_struct *tsk);
231
232#ifdef CONFIG_FAIR_GROUP_SCHED
233extern int sched_group_set_shares(struct task_group *tg, unsigned long shares);
234#endif
235
224#else /* CONFIG_CGROUP_SCHED */ 236#else /* CONFIG_CGROUP_SCHED */
225 237
226struct cfs_bandwidth { }; 238struct cfs_bandwidth { };