mirror of
https://github.com/genesi/linux-legacy.git
synced 2026-05-18 18:37:29 +00:00
cpuset: modify cpuset_set_cpus_allowed to use cpumask pointer
* Modify cpuset_cpus_allowed to return the currently allowed cpuset
via a pointer argument instead of as the function return value.
* Use new set_cpus_allowed_ptr function.
* Cleanup CPU_MASK_ALL and NODE_MASK_ALL uses.
Depends on:
[sched-devel]: sched: add new set_cpus_allowed_ptr function
Signed-off-by: Mike Travis <travis@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
@@ -4941,13 +4941,13 @@ long sched_setaffinity(pid_t pid, cpumask_t new_mask)
|
||||
if (retval)
|
||||
goto out_unlock;
|
||||
|
||||
cpus_allowed = cpuset_cpus_allowed(p);
|
||||
cpuset_cpus_allowed(p, &cpus_allowed);
|
||||
cpus_and(new_mask, new_mask, cpus_allowed);
|
||||
again:
|
||||
retval = set_cpus_allowed(p, new_mask);
|
||||
|
||||
if (!retval) {
|
||||
cpus_allowed = cpuset_cpus_allowed(p);
|
||||
cpuset_cpus_allowed(p, &cpus_allowed);
|
||||
if (!cpus_subset(new_mask, cpus_allowed)) {
|
||||
/*
|
||||
* We must have raced with a concurrent cpuset
|
||||
@@ -5661,7 +5661,9 @@ static void move_task_off_dead_cpu(int dead_cpu, struct task_struct *p)
|
||||
|
||||
/* No more Mr. Nice Guy. */
|
||||
if (dest_cpu >= nr_cpu_ids) {
|
||||
cpumask_t cpus_allowed = cpuset_cpus_allowed_locked(p);
|
||||
cpumask_t cpus_allowed;
|
||||
|
||||
cpuset_cpus_allowed_locked(p, &cpus_allowed);
|
||||
/*
|
||||
* Try to stay on the same cpuset, where the
|
||||
* current cpuset may be a subset of all cpus.
|
||||
|
||||
Reference in New Issue
Block a user