[GIT PULL] locking changes for v6.9

From: Ingo Molnar
Date: Mon Mar 11 2024 - 07:20:25 EST


Linus,

Please pull the latest locking/core git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git locking-core-2024-03-11

# HEAD: ce3576ebd62d99f79c1dc98824e2ef6d6ab68434 locking/rtmutex: Use try_cmpxchg_relaxed() in mark_rt_mutex_waiters()

Locking changes for v6.9:

- Micro-optimize local_xchg() and the rtmutex code on x86

- Fix percpu-rwsem contention tracepoints

- Simplify debugging Kconfig dependencies

- Update/clarify the documentation of atomic primitives

- Misc cleanups

Thanks,

Ingo

------------------>
Mark Rutland (1):
locking/atomic: scripts: Clarify ordering of conditional atomics

Namhyung Kim (1):
locking/percpu-rwsem: Trigger contention tracepoints only if contended

Uros Bizjak (2):
locking/x86: Implement local_xchg() using CMPXCHG without the LOCK prefix
locking/rtmutex: Use try_cmpxchg_relaxed() in mark_rt_mutex_waiters()

Waiman Long (4):
locking/qspinlock: Fix 'wait_early' set but not used warning
locking/mutex: Simplify <linux/mutex.h>
locking/rwsem: Clarify that RWSEM_READER_OWNED is just a hint
locking/rwsem: Make DEBUG_RWSEMS and PREEMPT_RT mutually exclusive


arch/x86/include/asm/local.h | 16 ++++++-
include/linux/atomic/atomic-arch-fallback.h | 46 +++++++++++++++----
include/linux/atomic/atomic-instrumented.h | 68 ++++++++++++++++++++++------
include/linux/atomic/atomic-long.h | 24 ++++++++--
include/linux/mutex.h | 8 +---
kernel/locking/percpu-rwsem.c | 11 +++--
kernel/locking/qspinlock_paravirt.h | 2 +-
kernel/locking/rtmutex.c | 9 ++--
kernel/locking/rwsem.c | 6 +--
lib/Kconfig.debug | 4 +-
scripts/atomic/kerneldoc/add_unless | 1 +
scripts/atomic/kerneldoc/cmpxchg | 1 +
scripts/atomic/kerneldoc/dec_if_positive | 1 +
scripts/atomic/kerneldoc/dec_unless_positive | 1 +
scripts/atomic/kerneldoc/inc_not_zero | 1 +
scripts/atomic/kerneldoc/inc_unless_negative | 1 +
scripts/atomic/kerneldoc/try_cmpxchg | 3 +-
17 files changed, 154 insertions(+), 49 deletions(-)