Re: [PATCH v3 2/2] powerpc/shared: Use static key to detect shared processor
From: Phil Auld <hidden>
Date: 2019-12-05 20:35:17
On Thu, Dec 05, 2019 at 02:02:18PM +0530 Srikar Dronamraju wrote:
quoted hunk ↗ jump to hunk
With the static key shared processor available, is_shared_processor() can return without having to query the lppaca structure. Cc: Parth Shah <redacted> Cc: Ihor Pasichnyk <redacted> Cc: Juri Lelli <juri.lelli@redhat.com> Cc: Phil Auld <redacted> Cc: Waiman Long <longman@redhat.com> Signed-off-by: Srikar Dronamraju <redacted> --- Changelog v1 (https://patchwork.ozlabs.org/patch/1204192/) ->v2: Now that we no more refer to lppaca, remove the comment. Changelog v2->v3: Code is now under CONFIG_PPC_SPLPAR as it depends on CONFIG_PPC_PSERIES. This was suggested by Waiman Long. arch/powerpc/include/asm/spinlock.h | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-)diff --git a/arch/powerpc/include/asm/spinlock.h b/arch/powerpc/include/asm/spinlock.h index de817c25deff..e83d57f27566 100644 --- a/arch/powerpc/include/asm/spinlock.h +++ b/arch/powerpc/include/asm/spinlock.h@@ -111,13 +111,8 @@ static inline void splpar_rw_yield(arch_rwlock_t *lock) {}; static inline bool is_shared_processor(void) { -/* - * LPPACA is only available on Pseries so guard anything LPPACA related to - * allow other platforms (which include this common header) to compile. - */ -#ifdef CONFIG_PPC_PSERIES - return (IS_ENABLED(CONFIG_PPC_SPLPAR) && - lppaca_shared_proc(local_paca->lppaca_ptr)); +#ifdef CONFIG_PPC_SPLPAR + return static_branch_unlikely(&shared_processor); #else return false; #endif-- 2.18.1
Fwiw, Acked-by: Phil Auld <redacted> --