]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - include/asm-generic/percpu.h
[PATCH] i386: Update __copy_to_user_inatomic linuxdoc description
[karo-tx-linux.git] / include / asm-generic / percpu.h
index c745211574614bfdc5f8a63c7510bbc4a79e749f..196376262240470ba6d5d3a11990e55690099629 100644 (file)
@@ -7,12 +7,16 @@
 
 extern unsigned long __per_cpu_offset[NR_CPUS];
 
+#define per_cpu_offset(x) (__per_cpu_offset[x])
+
 /* Separate out the type, so (int[3], foo) works. */
 #define DEFINE_PER_CPU(type, name) \
     __attribute__((__section__(".data.percpu"))) __typeof__(type) per_cpu__##name
 
 /* 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 per_cpu(var, cpu) (*({                         \
+       extern int simple_identifier_##var(void);       \
+       RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]); }))
 #define __get_cpu_var(var) per_cpu(var, smp_processor_id())
 #define __raw_get_cpu_var(var) per_cpu(var, raw_smp_processor_id())