[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20260121-gpuvm-rust-v3-0-dd95c04aec35@google.com>
Date: Wed, 21 Jan 2026 11:31:16 +0000
From: Alice Ryhl <aliceryhl@...gle.com>
To: Danilo Krummrich <dakr@...nel.org>, Daniel Almeida <daniel.almeida@...labora.com>
Cc: Boris Brezillon <boris.brezillon@...labora.com>, Janne Grunau <j@...nau.net>,
Matthew Brost <matthew.brost@...el.com>,
"Thomas Hellström" <thomas.hellstrom@...ux.intel.com>, Lyude Paul <lyude@...hat.com>,
Asahi Lina <lina+kernel@...hilina.net>, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org, rust-for-linux@...r.kernel.org,
Alice Ryhl <aliceryhl@...gle.com>
Subject: [PATCH v3 0/6] Rust GPUVM immediate mode
This series provides an immediate mode GPUVM implementation.
Only immediate mode is provided for Rust code, as all planned Rust
drivers intend to use GPUVM in immediate mode.
Signed-off-by: Alice Ryhl <aliceryhl@...gle.com>
---
Changes in v3:
- C prerequisites have landed, so only Rust part is present.
- The logic for drm_exec was removed, and is for a follow-up.
- Split up into patches.
- Add lifetime to SmStepContext.
- Docs filled out.
- Mutex abstractions used for GEM gpuva lock.
- Drop 'shared data' concept for now. (Can be added back later if required.)
- Rename 'core' field to 'data'.
- GpuVmCore<T> now derefs to GpuVm<T> instead of T.
- Renamed GpuVmBoObtain to GpuVmBoResident.
- Probably more changes I forgot.
- Link to v2: https://lore.kernel.org/r/20260108-gpuvm-rust-v2-0-dbd014005a0b@google.com
Changes in v2:
- For this version, only the C prerequisites are included. Rust will be
sent as follow-up.
- Add comment to drm_gpuvm_bo_destroy_not_in_lists()
- Add Fixes: tag.
- Pick up Reviewed-by tags.
- Link to v1: https://lore.kernel.org/r/20251128-gpuvm-rust-v1-0-ebf66bf234e0@google.com
---
Alice Ryhl (4):
rust: gpuvm: add GpuVm::obtain()
rust: gpuvm: add GpuVa struct
rust: gpuvm: add GpuVmCore::sm_unmap()
rust: gpuvm: add GpuVmCore::sm_map()
Asahi Lina (2):
rust: drm: add base GPUVM immediate mode abstraction
rust: helpers: Add bindings/wrappers for dma_resv_lock
MAINTAINERS | 2 +
rust/bindings/bindings_helper.h | 2 +
rust/helpers/dma-resv.c | 13 ++
rust/helpers/drm_gpuvm.c | 18 ++
rust/helpers/helpers.c | 2 +
rust/kernel/drm/gpuvm/mod.rs | 299 +++++++++++++++++++++++++++++
rust/kernel/drm/gpuvm/sm_ops.rs | 408 ++++++++++++++++++++++++++++++++++++++++
rust/kernel/drm/gpuvm/va.rs | 148 +++++++++++++++
rust/kernel/drm/gpuvm/vm_bo.rs | 227 ++++++++++++++++++++++
rust/kernel/drm/mod.rs | 1 +
10 files changed, 1120 insertions(+)
---
base-commit: 263e9ef3f5736697483af66babb8bc72f145b3f4
change-id: 20251128-gpuvm-rust-b719cac27ad6
Best regards,
--
Alice Ryhl <aliceryhl@...gle.com>
Powered by blists - more mailing lists