generic: reduce stack pressure in sched_affinity

* Modify sched_affinity functions to pass cpumask_t variables by reference
    instead of by value.

  * Use new set_cpus_allowed_ptr function.

Depends on:
	[sched-devel]: sched: add new set_cpus_allowed_ptr function

Cc: Paul Jackson <pj@sgi.com>
Cc: Cliff Wickman <cpw@sgi.com>
Signed-off-by: Mike Travis <travis@sgi.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Mike Travis
2008-04-04 18:11:08 -07:00
committed by Ingo Molnar
parent f9a86fcbbb
commit b53e921ba1
5 changed files with 30 additions and 29 deletions

View File

@@ -4908,9 +4908,10 @@ out_unlock:
return retval;
}
long sched_setaffinity(pid_t pid, cpumask_t new_mask)
long sched_setaffinity(pid_t pid, const cpumask_t *in_mask)
{
cpumask_t cpus_allowed;
cpumask_t new_mask = *in_mask;
struct task_struct *p;
int retval;
@@ -4991,7 +4992,7 @@ asmlinkage long sys_sched_setaffinity(pid_t pid, unsigned int len,
if (retval)
return retval;
return sched_setaffinity(pid, new_mask);
return sched_setaffinity(pid, &new_mask);
}
/*