From: Kumar Kartikeya Dwivedi Date: Sun, 16 Mar 2025 04:05:19 +0000 (-0700) Subject: locking: Allow obtaining result of arch_mcs_spin_lock_contended X-Git-Tag: v6.15-rc1~98^2^2~21 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c0149a034540ed24de0581a09983710c88253697;p=thirdparty%2Fkernel%2Flinux.git locking: Allow obtaining result of arch_mcs_spin_lock_contended To support upcoming changes that require inspecting the return value once the conditional waiting loop in arch_mcs_spin_lock_contended terminates, modify the macro to preserve the result of smp_cond_load_acquire. This enables checking the return value as needed, which will help disambiguate the MCS node’s locked state in future patches. Reviewed-by: Barret Rhoden Signed-off-by: Kumar Kartikeya Dwivedi Link: https://lore.kernel.org/r/20250316040541.108729-4-memxor@gmail.com Signed-off-by: Alexei Starovoitov --- diff --git a/kernel/locking/mcs_spinlock.h b/kernel/locking/mcs_spinlock.h index 16160ca8907fb..5c92ba199b90b 100644 --- a/kernel/locking/mcs_spinlock.h +++ b/kernel/locking/mcs_spinlock.h @@ -24,9 +24,7 @@ * spinning, and smp_cond_load_acquire() provides that behavior. */ #define arch_mcs_spin_lock_contended(l) \ -do { \ - smp_cond_load_acquire(l, VAL); \ -} while (0) + smp_cond_load_acquire(l, VAL) #endif #ifndef arch_mcs_spin_unlock_contended