[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <YouzmQ23tV62Ni+F@gmail.com>
Date: Mon, 23 May 2022 18:17:29 +0200
From: Ingo Molnar <mingo@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org,
Peter Zijlstra <peterz@...radead.org>,
Will Deacon <will@...nel.org>,
Waiman Long <longman@...hat.com>,
Boqun Feng <boqun.feng@...il.com>,
Thomas Gleixner <tglx@...utronix.de>,
Andrew Morton <akpm@...ux-foundation.org>
Subject: [GIT PULL] locking changes for v5.19
Linus,
Please pull the latest locking/core git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git locking-core-2022-05-23
# HEAD: 8491d1bdf5de152f27fc941e2dcdc4e66c950542 sched/clock: Use try_cmpxchg64 in sched_clock_{local,remote}
Locking changes in this cycle were:
- rwsem cleanups & optimizations/fixes:
- Conditionally wake waiters in reader/writer slowpaths
- Always try to wake waiters in out_nolock path
- Add try_cmpxchg64() implementation, with arch optimizations - and use it to
micro-optimize sched_clock_{local,remote}()
- Various force-inlining fixes to address objdump instrumentation-check warnings
- Add lock contention tracepoints:
lock:contention_begin
lock:contention_end
- Misc smaller fixes & cleanups
Thanks,
Ingo
------------------>
Borislav Petkov (3):
task_stack, x86/cea: Force-inline stack helpers
x86/kvm/svm: Force-inline GHCB accessors
x86/mm: Force-inline __phys_addr_nodebug()
Namhyung Kim (2):
locking: Add lock contention tracepoints
locking: Apply contention tracepoints in the slow path
Nick Desaulniers (1):
lockdep: Fix -Wunused-parameter for _THIS_IP_
Peter Zijlstra (1):
locking/mutex: Make contention tracepoints more consistent wrt adaptive spinning
Sebastian Andrzej Siewior (1):
futex: Remove a PREEMPT_RT_FULL reference.
Thomas Gleixner (1):
lockdep: Delete local_irq_enable_in_hardirq()
Uros Bizjak (3):
locking/atomic: Add generic try_cmpxchg64 support
locking/atomic/x86: Introduce arch_try_cmpxchg64
sched/clock: Use try_cmpxchg64 in sched_clock_{local,remote}
Waiman Long (4):
locking/rwsem: No need to check for handoff bit if wait queue empty
locking/rwsem: Conditionally wake waiters in reader/writer slowpaths
locking/rwsem: Always try to wake waiters in out_nolock path
locking/qrwlock: Change "queue rwlock" to "queued rwlock"
arch/arm64/kernel/entry-common.c | 8 +-
arch/x86/include/asm/cmpxchg_32.h | 21 +++++
arch/x86/include/asm/cmpxchg_64.h | 6 ++
arch/x86/include/asm/cpu_entry_area.h | 2 +-
arch/x86/include/asm/page_64.h | 2 +-
arch/x86/include/asm/svm.h | 8 +-
include/asm-generic/qrwlock.h | 28 +++---
include/asm-generic/qrwlock_types.h | 2 +-
include/linux/atomic/atomic-arch-fallback.h | 72 ++++++++++++++-
include/linux/atomic/atomic-instrumented.h | 40 ++++++++-
include/linux/interrupt.h | 18 ----
include/linux/irqflags.h | 4 +-
include/linux/kvm_host.h | 2 +-
include/linux/sched/task_stack.h | 2 +-
include/trace/events/lock.h | 63 +++++++++++++-
kernel/entry/common.c | 6 +-
kernel/futex/pi.c | 2 +-
kernel/locking/lockdep.c | 23 ++---
kernel/locking/mutex.c | 18 +++-
kernel/locking/percpu-rwsem.c | 5 ++
kernel/locking/qrwlock.c | 17 +++-
kernel/locking/qspinlock.c | 5 ++
kernel/locking/rtmutex.c | 11 +++
kernel/locking/rwbase_rt.c | 7 ++
kernel/locking/rwsem.c | 130 +++++++++++++++++-----------
kernel/locking/semaphore.c | 15 +++-
kernel/sched/clock.c | 4 +-
kernel/sched/idle.c | 2 +-
kernel/trace/trace_preemptirq.c | 4 +-
scripts/atomic/gen-atomic-fallback.sh | 31 ++++---
scripts/atomic/gen-atomic-instrumented.sh | 2 +-
31 files changed, 412 insertions(+), 148 deletions(-)
Powered by blists - more mailing lists