diff options
author | Peter Zijlstra <peterz@infradead.org> | 2011-06-25 15:45:46 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-10-06 12:47:00 +0200 |
commit | 4939602a2441306008c6dca38216b741d4e09a42 (patch) | |
tree | e22218b6291c934944c8860dedb9f37ffd452ac4 /kernel | |
parent | fa17b507f142d37aeac322a95f6f7c6375f25601 (diff) | |
download | linux-stable-4939602a2441306008c6dca38216b741d4e09a42.tar.gz linux-stable-4939602a2441306008c6dca38216b741d4e09a42.tar.bz2 linux-stable-4939602a2441306008c6dca38216b741d4e09a42.zip |
sched: Unify the ->cpus_allowed mask copy
Currently every sched_class::set_cpus_allowed() implementation has to
copy the cpumask into task_struct::cpus_allowed, this is pointless,
put this copy in the generic code.
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/n/tip-jhl5s9fckd9ptw1fzbqqlrd3@git.kernel.org
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/sched.c | 7 | ||||
-rw-r--r-- | kernel/sched_rt.c | 3 |
2 files changed, 3 insertions, 7 deletions
diff --git a/kernel/sched.c b/kernel/sched.c index 45174ca5c8ea..ce9a9e7db116 100644 --- a/kernel/sched.c +++ b/kernel/sched.c @@ -6161,10 +6161,9 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask) { if (p->sched_class && p->sched_class->set_cpus_allowed) p->sched_class->set_cpus_allowed(p, new_mask); - else { - cpumask_copy(&p->cpus_allowed, new_mask); - p->rt.nr_cpus_allowed = cpumask_weight(new_mask); - } + + cpumask_copy(&p->cpus_allowed, new_mask); + p->rt.nr_cpus_allowed = cpumask_weight(new_mask); } /* diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c index 57a10842afa1..3023fd1ef364 100644 --- a/kernel/sched_rt.c +++ b/kernel/sched_rt.c @@ -1608,9 +1608,6 @@ static void set_cpus_allowed_rt(struct task_struct *p, update_rt_migration(&rq->rt); } - - cpumask_copy(&p->cpus_allowed, new_mask); - p->rt.nr_cpus_allowed = weight; } /* Assumes rq->lock is held */ |