aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/percpu.h
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/include/asm/percpu.h')
-rw-r--r--arch/arm/include/asm/percpu.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/include/asm/percpu.h b/arch/arm/include/asm/percpu.h
index 209e6504922e..a89b4076cde4 100644
--- a/arch/arm/include/asm/percpu.h
+++ b/arch/arm/include/asm/percpu.h
@@ -30,14 +30,14 @@ static inline void set_my_cpu_offset(unsigned long off)
30static inline unsigned long __my_cpu_offset(void) 30static inline unsigned long __my_cpu_offset(void)
31{ 31{
32 unsigned long off; 32 unsigned long off;
33 register unsigned long *sp asm ("sp");
34 33
35 /* 34 /*
36 * Read TPIDRPRW. 35 * Read TPIDRPRW.
37 * We want to allow caching the value, so avoid using volatile and 36 * We want to allow caching the value, so avoid using volatile and
38 * instead use a fake stack read to hazard against barrier(). 37 * instead use a fake stack read to hazard against barrier().
39 */ 38 */
40 asm("mrc p15, 0, %0, c13, c0, 4" : "=r" (off) : "Q" (*sp)); 39 asm("mrc p15, 0, %0, c13, c0, 4" : "=r" (off)
40 : "Q" (*(const unsigned long *)current_stack_pointer));
41 41
42 return off; 42 return off;
43} 43}