[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20260204-aref-workitem-v2-0-bec25b012d2a@collabora.com>
Date: Wed, 04 Feb 2026 17:40:38 -0300
From: Daniel Almeida <daniel.almeida@...labora.com>
To: Miguel Ojeda <ojeda@...nel.org>, Boqun Feng <boqun.feng@...il.com>,
Gary Guo <gary@...yguo.net>,
Björn Roy Baron <bjorn3_gh@...tonmail.com>,
Benno Lossin <lossin@...nel.org>, Andreas Hindborg <a.hindborg@...nel.org>,
Alice Ryhl <aliceryhl@...gle.com>, Trevor Gross <tmgross@...ch.edu>,
Danilo Krummrich <dakr@...nel.org>, David Airlie <airlied@...il.com>,
Simona Vetter <simona@...ll.ch>, Tejun Heo <tj@...nel.org>,
Lai Jiangshan <jiangshanlai@...il.com>
Cc: rust-for-linux@...r.kernel.org, linux-kernel@...r.kernel.org,
dri-devel@...ts.freedesktop.org,
Daniel Almeida <daniel.almeida@...labora.com>
Subject: [PATCH v2 0/4] rust: Add ARef support for work items
This series adds ARef<T> support for both regular and delayed work items.
- Patches 1 and 3 actually implement the support in workqueue.rs
- Patches 2 and 4 adds a corresponding implementation in drm::Device that
dispatches the calls to the underlying T::Data.
This was tested on Tyr, and is actually needed in order to obtain a
&drm::Device when handling work items. This is then needed in order to
allocate GEM objects inside the work handler that processes the tiler OOM
(out of memory) events. The current series sets the stage so that the above
is possible in the future.
This is currently based on v6.19-rc8. I hope we can land all four commits
on a single tree, but otherwise let me know whether I should split the
workqueue.rs changes from the drm::Device ones and rebase accordingly.
---
Changes in v2:
- Rebased on v6.19-rc8
- Cc workqueue maintainers
- Patch 2 kept the old import style, since drm/device.rs is not yet
converted.
- Link to v1: https://lore.kernel.org/r/20260115-aref-workitem-v1-0-9883e00f0509@collabora.com
---
Daniel Almeida (4):
rust: workqueue: add support for ARef<T>
rust: drm: dispatch work items to the private data
rust: workqueue: add delayed work support for ARef<T>
rust: drm: dispatch delayed work items to the private data
rust/kernel/drm/device.rs | 66 ++++++++++++++++++++++++++++++--
rust/kernel/workqueue.rs | 96 ++++++++++++++++++++++++++++++++++++++++++++---
2 files changed, 152 insertions(+), 10 deletions(-)
---
base-commit: 18f7fcd5e69a04df57b563360b88be72471d6b62
change-id: 20260115-aref-workitem-0f57e4fb81ca
Best regards,
--
Daniel Almeida <daniel.almeida@...labora.com>
Powered by blists - more mailing lists