diff options
author | Li Zefan <lizefan@huawei.com> | 2013-03-05 03:07:33 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2013-03-06 05:24:34 -0500 |
commit | 25cc7da7e6336d3bb6a5bad3d3fa96fce9a81d5b (patch) | |
tree | f039848c9d9ef5a3baf50b3a40eaa867b013e40f /kernel | |
parent | 15f803c94bd92b17708aad9e74226fd0b2c9130c (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.c | 10 | ||||
-rw-r--r-- | kernel/sched/sched.h | 12 |
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 | ||
7458 | int sched_group_set_rt_runtime(struct task_group *tg, long rt_runtime_us) | 7458 | static 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 | ||
7470 | long sched_group_rt_runtime(struct task_group *tg) | 7470 | static 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 | ||
7482 | int sched_group_set_rt_period(struct task_group *tg, long rt_period_us) | 7482 | static 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 | ||
7495 | long sched_group_rt_period(struct task_group *tg) | 7495 | static 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 | ||
7530 | int sched_rt_can_attach(struct task_group *tg, struct task_struct *tsk) | 7530 | static 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 | ||
224 | extern struct task_group *sched_create_group(struct task_group *parent); | ||
225 | extern void sched_online_group(struct task_group *tg, | ||
226 | struct task_group *parent); | ||
227 | extern void sched_destroy_group(struct task_group *tg); | ||
228 | extern void sched_offline_group(struct task_group *tg); | ||
229 | |||
230 | extern void sched_move_task(struct task_struct *tsk); | ||
231 | |||
232 | #ifdef CONFIG_FAIR_GROUP_SCHED | ||
233 | extern 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 | ||
226 | struct cfs_bandwidth { }; | 238 | struct cfs_bandwidth { }; |