public inbox for rust-for-linux@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v19 0/5] SpinLockIrq for rust
@ 2026-03-02 23:16 Lyude Paul
  2026-03-02 23:16 ` [PATCH v19 1/5] rust: Introduce interrupt module Lyude Paul
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Lyude Paul @ 2026-03-02 23:16 UTC (permalink / raw)
  To: rust-for-linux, linux-kernel, Thomas Gleixner
  Cc: Boqun Feng, Daniel Almeida, Miguel Ojeda, Alex Gaynor, Gary Guo,
	Björn Roy Baron, Benno Lossin, Andreas Hindborg, Alice Ryhl,
	Trevor Gross, Danilo Krummrich, Andrew Morton, Peter Zijlstra,
	Ingo Molnar, Will Deacon, Waiman Long

This is the latest patch series for adding rust bindings for controlling
local processor interrupts, adding support for spinlocks in rust that
are acquired with local processor interrupts disabled, and implementing
local interrupt controls through refcounting in the kernel.

The previous version of this patch series can be found here:

  https://lore.kernel.org/all/20260205204709.528234-1-lyude@redhat.com/

This patch series applies on top of boqun's rust-sync branch:

  https://git.kernel.org/pub/scm/linux/kernel/git/boqun/linux.git/?h=rust-sync

Now that we've gotten the C-side of these changes in, this patch series
is now exclusively concerned with the rust side of these changes. For
more information on how we came to the design for the C side of the API,
see the explanation in the previous version of the patch series.

Boqun Feng (1):
  rust: helper: Add spin_{un,}lock_irq_{enable,disable}() helpers

Lyude Paul (4):
  rust: Introduce interrupt module
  rust: sync: use super::* in spinlock.rs
  rust: sync: Add SpinLockIrq
  rust: sync: Introduce SpinLockIrq::lock_with() and friends

FULL CHANGELOG FOR EACH PATCH AVAILABLE IN THE PATCH UNDER THE CUT LINE

 rust/helpers/helpers.c            |   1 +
 rust/helpers/interrupt.c          |  18 ++
 rust/helpers/spinlock.c           |  15 ++
 rust/helpers/sync.c               |   5 +
 rust/kernel/interrupt.rs          |  89 ++++++++
 rust/kernel/lib.rs                |   1 +
 rust/kernel/sync.rs               |   9 +-
 rust/kernel/sync/lock/global.rs   |   3 +
 rust/kernel/sync/lock/spinlock.rs | 331 +++++++++++++++++++++++++++++-
 9 files changed, 466 insertions(+), 6 deletions(-)
 create mode 100644 rust/helpers/interrupt.c
 create mode 100644 rust/kernel/interrupt.rs


base-commit: 4a653dbaf6f3a8c950a72e4b78e93576e1916381
-- 
2.53.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-03-13 13:30 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-02 23:16 [PATCH v19 0/5] SpinLockIrq for rust Lyude Paul
2026-03-02 23:16 ` [PATCH v19 1/5] rust: Introduce interrupt module Lyude Paul
2026-03-13 13:30   ` Gary Guo
2026-03-02 23:16 ` [PATCH v19 2/5] rust: helper: Add spin_{un,}lock_irq_{enable,disable}() helpers Lyude Paul
2026-03-02 23:16 ` [PATCH v19 3/5] rust: sync: use super::* in spinlock.rs Lyude Paul
2026-03-02 23:16 ` [PATCH v19 4/5] rust: sync: Add SpinLockIrq Lyude Paul
2026-03-02 23:16 ` [PATCH v19 5/5] rust: sync: Introduce SpinLockIrq::lock_with() and friends Lyude Paul

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox