Re: [PATCH] Define __raw_get_cpu_var and use it

From: Ingo Molnar
Date: Wed May 10 2006 - 03:09:15 EST



* Paul Mackerras <paulus@xxxxxxxxx> wrote:

> There are several instances of per_cpu(foo, raw_smp_processor_id()),
> which is semantically equivalent to __get_cpu_var(foo) but without the
> warning that smp_processor_id() can give if CONFIG_DEBUG_PREEMPT is
> enabled. For those architectures with optimized per-cpu
> implementations, namely ia64, powerpc, s390, sparc64 and x86_64,
> per_cpu() turns into more and slower code than __get_cpu_var(), so it
> would be preferable to use __get_cpu_var on those platforms.
>
> This defines a __raw_get_cpu_var(x) macro which turns into per_cpu(x,
> raw_smp_processor_id()) on architectures that use the generic per-cpu
> implementation, and turns into __get_cpu_var(x) on the architectures
> that have an optimized per-cpu implementation.
>
> Signed-off-by: Paul Mackerras <paulus@xxxxxxxxx>

i made the original raw_smp_processor_id() changes and i never liked the
per_cpu() open-coding it introduced. Your patch solves this problem
nicely.

Acked-by: Ingo Molnar <mingo@xxxxxxx>

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/