[PATCH v4 0/3] rust: workqueue: add safe cancellation and status methods
From: Aakash Bollineni via B4 Relay
Date: Tue Apr 07 2026 - 06:42:27 EST
This is the fourth version of the patch series for modernizing the Linux
kernel Rust workqueue infrastructure.
Changes in v4:
- Fixed rustfmt and formatting errors in samples/rust/rust_workqueue_test.rs
reported by the kernel test robot.
- Added Reported-by and Closes tags to the third patch for robot tracking.
- Improved the commit structure to cleanly separate API changes from tests.
- Link to v3: https://lore.kernel.org/r/20260403-workqueue-v3-final-v3-0-6ffc3950d804@xxxxxxxxxxxxxxxxxxxx
Changes in v3:
- Fixed a critical initialization bug in the DelayedWork C-helper where
the timer function was not correctly registered, causing KUnit crashes.
- Consolidated Arc refcount inspection into a shared `arc_count` helper
in `rust/kernel/workqueue.rs` (gated by CONFIG_KUNIT).
- Updated internal KUnit tests and sample module to use the shared helper.
- Split the sample test's `TestItem` into `TestWorkItem` and
`TestDelayedWorkItem` for clearer trait dispatch and safety.
- Integrated the sample stress test into the kernel build system via
the SAMPLES_RUST Kconfig.
- Improved documentation and safety comments based on feedback from
Onur and Miguel Ojeda.
Aakash Bollineni (3):
rust: helpers: add workqueue helpers
rust: workqueue: add safe cancellation and status methods
rust: workqueue: add KUnit and sample stress tests
To: Miguel Ojeda <ojeda@xxxxxxxxxx>
To: Alex Gaynor <alex.gaynor@xxxxxxxxx>
To: Wedson Almeida Filho <wedsonaf@xxxxxxxxx>
To: Boqun Feng <boqun.feng@xxxxxxxxx>
To: Gary Guo <gary@xxxxxxxxxxx>
To: Björn Roy Baron <bjorn.roy.baron@xxxxxxxxx>
To: Benno Lossin <benno.lossin@xxxxxxxxx>
To: Andreas Hindborg <a.hindborg@xxxxxxxxxxx>
To: Alice Ryhl <aliceryhl@xxxxxxxxxx>
To: Tejun Heo <tj@xxxxxxxxxx>
To: Lai Jiangshan <jiangshanlai@xxxxxxxxx>
Cc: rust-for-linux@xxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Signed-off-by: Aakash Bollineni <aakash.bollineni@xxxxxxxxxxxxxxxxxxxx>
---
Aakash Bollineni (3):
rust: helpers: add workqueue helpers
rust: workqueue: add safe cancellation and status methods
rust: workqueue: add KUnit and sample stress tests
rust/helpers/workqueue.c | 32 +++
rust/kernel/workqueue.rs | 463 +++++++++++++++++++++++++++++++++---
samples/rust/Kconfig | 10 +
samples/rust/Makefile | 2 +
samples/rust/rust_workqueue_test.rs | 192 +++++++++++++++
5 files changed, 664 insertions(+), 35 deletions(-)
---
base-commit: bf074eb6891be799174ff42e0051492681fdc045
change-id: 20260403-workqueue-v3-final-fa406defb67c
Best regards,
--
Aakash Bollineni <aakash.bollineni@xxxxxxxxxxxxxxxxxxxx>