diff options
Diffstat (limited to 'include/asm-generic')
-rw-r--r-- | include/asm-generic/percpu.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/include/asm-generic/percpu.h b/include/asm-generic/percpu.h index e160e04290fb..6d45ee5472af 100644 --- a/include/asm-generic/percpu.h +++ b/include/asm-generic/percpu.h | |||
@@ -14,7 +14,9 @@ extern unsigned long __per_cpu_offset[NR_CPUS]; | |||
14 | __attribute__((__section__(".data.percpu"))) __typeof__(type) per_cpu__##name | 14 | __attribute__((__section__(".data.percpu"))) __typeof__(type) per_cpu__##name |
15 | 15 | ||
16 | /* var is in discarded region: offset to particular copy we want */ | 16 | /* var is in discarded region: offset to particular copy we want */ |
17 | #define per_cpu(var, cpu) (*RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu])) | 17 | #define per_cpu(var, cpu) (*({ \ |
18 | extern int simple_indentifier_##var(void); \ | ||
19 | RELOC_HIDE(&per_cpu__##var, __per_cpu_offset[cpu]); })) | ||
18 | #define __get_cpu_var(var) per_cpu(var, smp_processor_id()) | 20 | #define __get_cpu_var(var) per_cpu(var, smp_processor_id()) |
19 | #define __raw_get_cpu_var(var) per_cpu(var, raw_smp_processor_id()) | 21 | #define __raw_get_cpu_var(var) per_cpu(var, raw_smp_processor_id()) |
20 | 22 | ||