]> err.no Git - linux-2.6/blobdiff - include/asm-x86_64/percpu.h
[POWERPC] Uartlite: Separate the bus binding from the driver proper
[linux-2.6] / include / asm-x86_64 / percpu.h
index bffb2f886a510256974c679095186af021537c3c..5abd48270101e9e11f1540b3084bd69cb2e5c573 100644 (file)
 #define DEFINE_PER_CPU(type, name) \
     __attribute__((__section__(".data.percpu"))) __typeof__(type) per_cpu__##name
 
+#define DEFINE_PER_CPU_SHARED_ALIGNED(type, name)              \
+    __attribute__((__section__(".data.percpu.shared_aligned"))) \
+    __typeof__(type) per_cpu__##name                           \
+    ____cacheline_internodealigned_in_smp
+
 /* var is in discarded region: offset to particular copy we want */
 #define per_cpu(var, cpu) (*({                         \
-       extern int simple_indentifier_##var(void);      \
+       extern int simple_identifier_##var(void);       \
        RELOC_HIDE(&per_cpu__##var, __per_cpu_offset(cpu)); }))
 #define __get_cpu_var(var) (*({                                \
-       extern int simple_indentifier_##var(void);      \
+       extern int simple_identifier_##var(void);       \
        RELOC_HIDE(&per_cpu__##var, __my_cpu_offset()); }))
 #define __raw_get_cpu_var(var) (*({                    \
-       extern int simple_indentifier_##var(void);      \
+       extern int simple_identifier_##var(void);       \
        RELOC_HIDE(&per_cpu__##var, __my_cpu_offset()); }))
 
 /* A macro to avoid #include hell... */
@@ -46,6 +51,8 @@ extern void setup_per_cpu_areas(void);
 
 #define DEFINE_PER_CPU(type, name) \
     __typeof__(type) per_cpu__##name
+#define DEFINE_PER_CPU_SHARED_ALIGNED(type, name)      \
+    DEFINE_PER_CPU(type, name)
 
 #define per_cpu(var, cpu)                      (*((void)(cpu), &per_cpu__##var))
 #define __get_cpu_var(var)                     per_cpu__##var