[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z955ZyIi-tum55pL@gmail.com>
Date: Sat, 22 Mar 2025 09:48:39 +0100
From: Ingo Molnar <mingo@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, Peter Zijlstra <peterz@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>, Will Deacon <will@...nel.org>,
Waiman Long <longman@...hat.com>, Boqun Feng <boqun.feng@...il.com>,
Borislav Petkov <bp@...en8.de>, Uros Bizjak <ubizjak@...il.com>
Subject: [GIT PULL] locking changes for v6.15
Linus,
Please pull the latest locking/core Git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git locking-core-2025-03-22
# HEAD: 35e6b537af85d97e0aafd8f2829dfa884a22df20 lockdep: Remove disable_irq_lockdep()
Locking changes for v6.15:
Locking primitives:
- Micro-optimize percpu_{,try_}cmpxchg{64,128}_op() and {,try_}cmpxchg{64,128}
on x86 (Uros Bizjak)
- mutexes: extend debug checks in mutex_lock() (Yunhui Cui)
- Misc cleanups (Uros Bizjak)
Lockdep:
- Fix might_fault() lockdep check of current->mm->mmap_lock (Peter Zijlstra)
- Don't disable interrupts on RT in disable_irq_nosync_lockdep.*()
(Sebastian Andrzej Siewior)
- Disable KASAN instrumentation of lockdep.c (Waiman Long)
- Add kasan_check_byte() check in lock_acquire() (Waiman Long)
- Misc cleanups (Sebastian Andrzej Siewior)
Rust runtime integration:
- Use Pin for all LockClassKey usages (Mitchell Levy)
- sync: Add accessor for the lock behind a given guard (Alice Ryhl)
- sync: condvar: Add wait_interruptible_freezable() (Alice Ryhl)
- sync: lock: Add an example for Guard:: Lock_ref() (Boqun Feng)
Split-lock detection feature (x86):
- Fix warning mode with disabled mitigation mode (Maksim Davydov)
Locking events:
- Add locking events for rtmutex slow paths (Waiman Long)
- Add locking events for lockdep (Waiman Long)
Thanks,
Ingo
------------------>
Alice Ryhl (2):
rust: sync: Add accessor for the lock behind a given guard
rust: sync: condvar: Add wait_interruptible_freezable()
Boqun Feng (1):
rust: sync: lock: Add an example for Guard:: Lock_ref()
Maksim Davydov (1):
x86/split_lock: Fix the delayed detection logic
Mitchell Levy (1):
rust: lockdep: Use Pin for all LockClassKey usages
Peter Zijlstra (1):
lockdep/mm: Fix might_fault() lockdep check of current->mm->mmap_lock
Sebastian Andrzej Siewior (2):
lockdep: Don't disable interrupts on RT in disable_irq_nosync_lockdep.*()
lockdep: Remove disable_irq_lockdep()
Uros Bizjak (3):
x86/locking: Use ALT_OUTPUT_SP() for percpu_{,try_}cmpxchg{64,128}_op()
x86/locking: Use asm_inline for {,try_}cmpxchg{64,128} emulations
x86/locking: Remove semicolon from "lock" prefix
Waiman Long (4):
locking/lock_events: Add locking events for rtmutex slow paths
locking/lock_events: Add locking events for lockdep
locking/lockdep: Disable KASAN instrumentation of lockdep.c
locking/lockdep: Add kasan_check_byte() check in lock_acquire()
Yunhui Cui (1):
locking/mutex: Add MUTEX_WARN_ON() into fast path
arch/x86/include/asm/alternative.h | 2 +-
arch/x86/include/asm/barrier.h | 8 ++--
arch/x86/include/asm/cmpxchg.h | 4 +-
arch/x86/include/asm/cmpxchg_32.h | 36 ++++++++++--------
arch/x86/include/asm/edac.h | 2 +-
arch/x86/include/asm/percpu.h | 77 ++++++++++++++++++--------------------
arch/x86/include/asm/sync_bitops.h | 12 +++---
arch/x86/kernel/cpu/bus_lock.c | 20 ++++++++--
include/linux/interrupt.h | 16 ++------
kernel/locking/Makefile | 3 +-
kernel/locking/lock_events_list.h | 28 ++++++++++++++
kernel/locking/lockdep.c | 17 ++++++++-
kernel/locking/mutex.c | 2 +
kernel/locking/rtmutex.c | 29 +++++++++++---
mm/memory.c | 2 -
rust/helpers/helpers.c | 1 +
rust/helpers/sync.c | 13 +++++++
rust/kernel/sync.rs | 57 ++++++++++++++++++++++++++--
rust/kernel/sync/condvar.rs | 28 ++++++++++++--
rust/kernel/sync/lock.rs | 35 +++++++++++++++--
rust/kernel/sync/lock/global.rs | 5 ++-
rust/kernel/sync/poll.rs | 2 +-
rust/kernel/task.rs | 2 +
rust/kernel/workqueue.rs | 2 +-
24 files changed, 294 insertions(+), 109 deletions(-)
create mode 100644 rust/helpers/sync.c
Powered by blists - more mailing lists