summaryrefslogtreecommitdiff
path: root/lib/smp_processor_id.c
diff options
context:
space:
mode:
authorMike Travis <travis@sgi.com>2008-07-15 14:14:35 -0700
committerIngo Molnar <mingo@elte.hu>2008-07-18 22:02:59 +0200
commit4755b9291204982ac908e069674d6e5eb45815b3 (patch)
tree9e5270d79609e3ba0888ed4fff778f3f9adf7c68 /lib/smp_processor_id.c
parentc18a41fbbc500ac0307ffd2b0ae73c2af9d0b0ab (diff)
downloadlwn-4755b9291204982ac908e069674d6e5eb45815b3.tar.gz
lwn-4755b9291204982ac908e069674d6e5eb45815b3.zip
cpumask: Optimize cpumask_of_cpu in lib/smp_processor_id.c
* Optimize various places where a pointer to the cpumask_of_cpu value will result in reducing stack pressure. Signed-off-by: Mike Travis <travis@sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'lib/smp_processor_id.c')
-rw-r--r--lib/smp_processor_id.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/smp_processor_id.c b/lib/smp_processor_id.c
index 3b4dc098181e..9fb2df0d8dfb 100644
--- a/lib/smp_processor_id.c
+++ b/lib/smp_processor_id.c
@@ -11,7 +11,7 @@ notrace unsigned int debug_smp_processor_id(void)
{
unsigned long preempt_count = preempt_count();
int this_cpu = raw_smp_processor_id();
- cpumask_t this_mask;
+ cpumask_of_cpu_ptr_declare(this_mask);
if (likely(preempt_count))
goto out;
@@ -23,9 +23,9 @@ notrace unsigned int debug_smp_processor_id(void)
* Kernel threads bound to a single CPU can safely use
* smp_processor_id():
*/
- this_mask = cpumask_of_cpu(this_cpu);
+ cpumask_of_cpu_ptr_next(this_mask, cpu);
- if (cpus_equal(current->cpus_allowed, this_mask))
+ if (cpus_equal(current->cpus_allowed, *this_mask))
goto out;
/*