Patchwork [v2,powerpc] Avoid debug_smp_processor_id() check in SHARED_PROCESSOR

login
register
mail settings
Submitter Li Zhong
Date Jan. 25, 2013, 7:51 a.m.
Message ID <1359100273.2666.51.camel@ThinkPad-T5421.cn.ibm.com>
Download mbox | patch
Permalink /patch/215569/
State Accepted, archived
Commit 94c95cfbfe784eca5f4b96955e41bda1318605bc
Headers show

Comments

Li Zhong - Jan. 25, 2013, 7:51 a.m.
Use local_paca directly in macro SHARED_PROCESSOR, as all processors
have the same value for the field shared_proc, so we don't need care
racy here.

Reported-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Li Zhong <zhong@linux.vnet.ibm.com>
---
 arch/powerpc/include/asm/spinlock.h |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Patch

diff --git a/arch/powerpc/include/asm/spinlock.h b/arch/powerpc/include/asm/spinlock.h
index 7124fc0..5b23f91 100644
--- a/arch/powerpc/include/asm/spinlock.h
+++ b/arch/powerpc/include/asm/spinlock.h
@@ -96,7 +96,7 @@  static inline int arch_spin_trylock(arch_spinlock_t *lock)
 
 #if defined(CONFIG_PPC_SPLPAR)
 /* We only yield to the hypervisor if we are in shared processor mode */
-#define SHARED_PROCESSOR (get_lppaca()->shared_proc)
+#define SHARED_PROCESSOR (local_paca->lppaca_ptr->shared_proc)
 extern void __spin_yield(arch_spinlock_t *lock);
 extern void __rw_yield(arch_rwlock_t *lock);
 #else /* SPLPAR */