From: Ingo Molnar <mingo@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org,
Peter Zijlstra <peterz@infradead.org>,
Thomas Gleixner <tglx@linutronix.de>,
Will Deacon <will@kernel.org>, Waiman Long <longman@redhat.com>,
Boqun Feng <boqun.feng@gmail.com>
Subject: [GIT PULL] locking updates for v7.3
Date: Mon, 17 Aug 2026 11:50:00 +0200 [thread overview]
Message-ID: <aoLZSB-ztyLJCm_c@gmail.com> (raw)
Linus,
Please pull the latest locking/core Git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git locking-core-2026-08-17
for you to fetch changes up to ec4fad7c2bdc80c62fa73f799b77ad299f73dcc3:
Locking updates for v7.3:
Futexes:
- Use runtime constants for futex_hash computation
(K Prateek Nayak, Peter Zijlstra)
- Optimise the size check get_futex_key() (Sebastian Andrzej Siewior)
- Avoid private hash use-after-free on final put (Felix Hoffmann)
- Tell kmemleak we're not leaking __futex_queues (Peter Zijlstra)
Rust integration updates:
- Implement refcounted interrupt disable and SpinLockIrq for Rust
(Boqun Feng, Heiko Carstens, Joel Fernandes, Lyude Paul)
- Rust sync: add helpers for mb, dma_mb and friends;
add generic memory barriers and use LKMM atomics
instead of Rust atomics in the revocable code (Gary Guo)
- Add abstraction and integrate synchronize_rcu() (Philipp Stanner)
Lock debugging:
- Add qspinlock contended_release tracepoint
(Dmitry Ilvokhin, Peter Zijlstra)
- Enable the printing of held locks of remote running tasks and print
task CPU (Ingo Molnar)
- percpu-rwsem: Annotate intentional data race in readers_active_check()
(Sun Shaojie)
Misc fixes and updates by Boqun Feng, Peter Zijlstra, Fangrui Song,
Naveen Kumar Chaudhary and Thomas Huth.
Thanks,
Ingo
------------------>
Boqun Feng (9):
preempt: Introduce HARDIRQ_DISABLE_BITS
preempt: Introduce __preempt_count_{sub,add}_return()
irq,spin_lock: Add counted interrupt disabling/enabling
locking: Switch to _irq_{disable,enable}() variants in cleanup guards
sched: Remove the unused preempt_offset parameter of __cant_sleep()
sched: Avoid signed comparison of preempt_count() in __cant_migrate()
preempt: Introduce HAS_SEPARATE_PREEMPT_RESCHED_BITS
arm64: sched/preempt: Enable HAS_SEPARATE_PREEMPT_RESCHED_BITS
rust: helper: Add spin_{un,}lock_irq_{enable,disable}() helpers
Dmitry Ilvokhin (4):
locking: Factor out queued_spin_release()
locking/qspinlock: Add contended_release tracepoint
tracing/lock: Use TRACE_EVENT_FN() for contended_release
x86/paravirt: Trace contended_release on unlock
Fangrui Song (1):
riscv/runtime-const: Disable linker relaxation for RUNTIME_MAGIC
Felix Hoffmann (1):
futex: Avoid private hash use-after-free on final put
Gary Guo (3):
rust: sync: Add helpers for mb, dma_mb and friends
rust: sync: Add generic memory barriers
rust: revocable: Use LKMM atomics instead of Rust atomics
Heiko Carstens (1):
s390/preempt: Enable HAS_SEPARATE_PREEMPT_RESCHED_BITS
Ingo Molnar (1):
lockdep: Enable the printing of held locks of remote running tasks and print task CPU
Joel Fernandes (1):
preempt: Track NMI nesting to separate per-CPU counter
K Prateek Nayak (5):
arm64/runtime-const: Use aarch64_insn_patch_text_nosync() for patching
arm64/runtime-const: Introduce runtime_const_mask_32()
riscv/runtime-const: Replace open-coded placeholder with RUNTIME_MAGIC
riscv/runtime-const: Introduce runtime_const_mask_32()
s390/runtime-const: Introduce runtime_const_mask_32()
Lyude Paul (6):
openrisc: Include <linux/cpumask.h> in smp.h
irq: Add KUnit test for refcounted interrupt enable/disable
rust: Introduce interrupt module
rust: sync: Use super::* in spinlock.rs
rust: sync: Add SpinLockIrq
rust: sync: Introduce SpinLockIrq::lock_with() and friends
Naveen Kumar Chaudhary (1):
locking/lockdep: Fix NULL pointer dereference in __lock_set_class()
Peter Zijlstra (5):
x86/runtime-const: Introduce runtime_const_mask_32()
asm-generic/runtime-const: Add dummy runtime_const_mask_32()
futex: Use runtime constants for __futex_hash() hot path
x86/paravirt: Use static_call() for the paravirt spinlock ops
futex: Tell kmemleak we're not leaking __futex_queues
Philipp Stanner (3):
rust: sync: Add abstraction for synchronize_rcu()
rust: revocable: Use safe synchronize_rcu() abstraction
rust: sync: Use safe synchronize_rcu() abstraction in poll
Sebastian Andrzej Siewior (1):
futex: Optimise the size check get_futex_key()
Sun Shaojie (1):
locking/percpu-rwsem: Annotate intentional data race in readers_active_check()
Thomas Huth (1):
static_call / jump_label: Replace __ASSEMBLY__ with __ASSEMBLER__ in headers
arch/arm/include/asm/jump_label.h | 4 +-
arch/arm64/Kconfig | 1 +
arch/arm64/include/asm/preempt.h | 20 ++
arch/arm64/include/asm/runtime-const.h | 63 ++++-
arch/mips/include/asm/spinlock.h | 6 +-
arch/openrisc/include/asm/smp.h | 2 +
arch/riscv/include/asm/asm.h | 1 +
arch/riscv/include/asm/runtime-const.h | 84 +++++--
arch/s390/Kconfig | 1 +
arch/s390/include/asm/lowcore.h | 13 +-
arch/s390/include/asm/preempt.h | 51 ++--
arch/s390/include/asm/runtime-const.h | 22 +-
arch/x86/Kconfig | 1 +
arch/x86/hyperv/hv_spinlock.c | 4 +-
arch/x86/include/asm/cpufeatures.h | 2 +-
arch/x86/include/asm/paravirt-spinlock.h | 21 +-
arch/x86/include/asm/preempt.h | 61 +++--
arch/x86/include/asm/runtime-const.h | 14 ++
arch/x86/kernel/cpu/common.c | 2 +-
arch/x86/kernel/kvm.c | 5 +-
arch/x86/kernel/paravirt-spinlocks.c | 63 ++++-
arch/x86/kernel/static_call.c | 27 ++
arch/x86/xen/spinlock.c | 5 +-
include/asm-generic/preempt.h | 14 ++
include/asm-generic/qspinlock.h | 38 ++-
include/asm-generic/runtime-const.h | 1 +
include/asm-generic/vmlinux.lds.h | 5 +-
include/linux/hardirq.h | 40 ++-
include/linux/interrupt_rc.h | 82 ++++++
include/linux/jump_label.h | 10 +-
include/linux/kernel.h | 4 +-
include/linux/preempt.h | 44 +++-
include/linux/spinlock.h | 49 ++--
include/linux/spinlock_api_smp.h | 41 +++
include/linux/spinlock_api_up.h | 15 ++
include/linux/spinlock_rt.h | 18 ++
include/linux/static_call_types.h | 4 +-
include/trace/events/lock.h | 10 +-
kernel/Kconfig.locks | 20 ++
kernel/Kconfig.preempt | 4 +
kernel/futex/core.c | 58 +++--
kernel/irq/Makefile | 1 +
kernel/irq/refcount_interrupt_test.c | 109 ++++++++
kernel/locking/lockdep.c | 36 ++-
kernel/locking/mutex.c | 4 +
kernel/locking/percpu-rwsem.c | 2 +-
kernel/locking/qspinlock.c | 22 ++
kernel/locking/spinlock.c | 31 +++
kernel/sched/core.c | 18 +-
kernel/sched/fair.c | 12 +-
kernel/softirq.c | 36 ++-
lib/locking-selftest.c | 2 +-
rust/helpers/barrier.c | 30 +++
rust/helpers/helpers.c | 1 +
rust/helpers/interrupt.c | 13 +
rust/helpers/spinlock.c | 15 ++
rust/helpers/sync.c | 5 +
rust/kernel/interrupt.rs | 89 +++++++
rust/kernel/lib.rs | 1 +
rust/kernel/revocable.rs | 28 ++-
rust/kernel/sync.rs | 9 +-
rust/kernel/sync/atomic/ordering.rs | 2 +-
rust/kernel/sync/barrier.rs | 127 +++++++---
rust/kernel/sync/lock/global.rs | 3 +
rust/kernel/sync/lock/spinlock.rs | 329 ++++++++++++++++++++++++-
rust/kernel/sync/poll.rs | 10 +-
rust/kernel/sync/rcu.rs | 16 ++
tools/arch/x86/include/asm/cpufeatures.h | 2 +-
tools/include/linux/static_call_types.h | 4 +-
tools/testing/selftests/bpf/bpf_experimental.h | 7 +-
70 files changed, 1653 insertions(+), 241 deletions(-)
create mode 100644 include/linux/interrupt_rc.h
create mode 100644 kernel/irq/refcount_interrupt_test.c
create mode 100644 rust/helpers/interrupt.c
create mode 100644 rust/kernel/interrupt.rs
reply other threads:[~2026-08-17 9:50 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aoLZSB-ztyLJCm_c@gmail.com \
--to=mingo@kernel.org \
--cc=boqun.feng@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=longman@redhat.com \
--cc=peterz@infradead.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.org \
--cc=will@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®