[patch 07/10] Powerpc: Use generic per cpu

From: Christoph Lameter
Date: Wed Nov 28 2007 - 16:17:29 EST


V1->V2:
- add missing #endif

Powerpc has a way to determine the address of the per cpu area of the
currently executing processor via the paca and the array of per cpu
offsets is avoided by looking up the per cpu area from the remote
paca's (copying x86_64).

Cc: Paul Mackerras <paulus@xxxxxxxxx>
Signed-off-by: Christoph Lameter <clameter@xxxxxxx>

---
include/asm-powerpc/percpu.h | 20 +-------------------
1 file changed, 1 insertion(+), 19 deletions(-)

Index: linux-2.6.24-rc3-mm2/include/asm-powerpc/percpu.h
===================================================================
--- linux-2.6.24-rc3-mm2.orig/include/asm-powerpc/percpu.h 2007-11-28 12:51:42.448213150 -0800
+++ linux-2.6.24-rc3-mm2/include/asm-powerpc/percpu.h 2007-11-28 12:51:57.612463251 -0800
@@ -16,25 +16,7 @@
#define __my_cpu_offset() get_paca()->data_offset
#define per_cpu_offset(x) (__per_cpu_offset(x))

-/* var is in discarded region: offset to particular copy we want */
-#define per_cpu(var, cpu) (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset(cpu)))
-#define __get_cpu_var(var) (*RELOC_HIDE(&per_cpu__##var, __my_cpu_offset()))
-#define __raw_get_cpu_var(var) (*RELOC_HIDE(&per_cpu__##var, local_paca->data_offset))
-
-extern void setup_per_cpu_areas(void);
-
-#else /* ! SMP */
-
-#define per_cpu(var, cpu) (*((void)(cpu), &per_cpu__##var))
-#define __get_cpu_var(var) per_cpu__##var
-#define __raw_get_cpu_var(var) per_cpu__##var
-
#endif /* SMP */
-
-#define DECLARE_PER_CPU(type, name) extern __typeof__(type) per_cpu__##name
-
-#else
-#include <asm-generic/percpu.h>
#endif
-
+#include <asm-generic/percpu.h>
#endif /* _ASM_POWERPC_PERCPU_H_ */

--
-
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/