[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250829224116.477990-1-lyude@redhat.com>
Date: Fri, 29 Aug 2025 18:35:15 -0400
From: Lyude Paul <lyude@...hat.com>
To: dri-devel@...ts.freedesktop.org,
rust-for-linux@...r.kernel.org,
linux-kernel@...r.kernel.org
Cc: Miguel Ojeda <ojeda@...nel.org>,
Alex Gaynor <alex.gaynor@...il.com>,
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>,
Sumit Semwal <sumit.semwal@...aro.org>,
Christian König <christian.koenig@....com>,
linux-media@...r.kernel.org (open list:DMA BUFFER SHARING FRAMEWORK:Keyword:\bdma_(?:buf|fence|resv)\b),
linaro-mm-sig@...ts.linaro.org (moderated list:DMA BUFFER SHARING FRAMEWORK:Keyword:\bdma_(?:buf|fence|resv)\b)
Subject: [PATCH v3 00/14] Rust abstractions for shmem-backed GEM objects
This is the next version of the shmem backed GEM objects series
originally from Asahi, previously posted by Daniel Almeida. Along with
bindings for shmem backed GEM objects.
This applies on top of Danilo and Abdiel's sgtable patches:
https://lkml.org/lkml/2025/8/28/1018
Asahi Lina (2):
rust: helpers: Add bindings/wrappers for dma_resv_lock
rust: drm: gem: shmem: Add DRM shmem helper abstraction
Lyude Paul (12):
rust: drm: gem: Simplify use of generics
rust: drm: gem: Add DriverFile type alias
rust: drm: gem: Drop Object::SIZE
rust: drm: gem: Support driver-private GEM object types
rust: drm: gem: Add raw_dma_resv() function
drm/gem/shmem: Extract drm_gem_shmem_init() from
drm_gem_shmem_create()
drm/gem/shmem: Extract drm_gem_shmem_release() from
drm_gem_shmem_free()
rust: gem: Introduce DriverObject::Args
rust: drm: gem: Introduce SGTableRef
rust: Add dma_buf stub bindings
rust: drm: gem: Add export() callback
rust: drm: gem: Add BaseObject::prime_export()
drivers/gpu/drm/drm_gem_shmem_helper.c | 98 +++++--
drivers/gpu/drm/nova/driver.rs | 8 +-
drivers/gpu/drm/nova/gem.rs | 15 +-
include/drm/drm_gem_shmem_helper.h | 2 +
rust/bindings/bindings_helper.h | 3 +
rust/helpers/dma-resv.c | 13 +
rust/helpers/drm.c | 48 +++-
rust/helpers/helpers.c | 1 +
rust/kernel/dma_buf.rs | 39 +++
rust/kernel/drm/device.rs | 17 +-
rust/kernel/drm/driver.rs | 5 +-
rust/kernel/drm/gem/mod.rs | 274 +++++++++++++++----
rust/kernel/drm/gem/shmem.rs | 365 +++++++++++++++++++++++++
rust/kernel/lib.rs | 1 +
14 files changed, 783 insertions(+), 106 deletions(-)
create mode 100644 rust/helpers/dma-resv.c
create mode 100644 rust/kernel/dma_buf.rs
create mode 100644 rust/kernel/drm/gem/shmem.rs
base-commit: 09f90256e8902793f594517ef440698585eb3595
prerequisite-patch-id: 0e1b1f9a665317ff569a37df6ff49cd1880b04f8
prerequisite-patch-id: 178b864e6d1b88ee299dcc05d1a7a4c89ec7ed51
prerequisite-patch-id: 7f72c4bfd0e5f50b6d2f8ce96751782894a3ba81
prerequisite-patch-id: 62fa6de7d3ae99dc54c092087bd716e6749545fd
prerequisite-patch-id: 3d14d56ca93b0831837aa26b802100a250adeac6
prerequisite-patch-id: 7a12f4b0e7588874ce589b41b70671dc261b9468
prerequisite-patch-id: c44763ec35c4e4431e769df088b98424cbddf7df
prerequisite-patch-id: a9e008c179b1c2fbe76654a191e5018880383d49
prerequisite-patch-id: 1e9ce500ce25188c575be608cd39e15a59836f83
prerequisite-patch-id: 39ca3a210a6c365434924c07a0c98a074eb73b97
prerequisite-patch-id: a747e05834cdb8b8f727e1f7c8b110c636cadab8
prerequisite-patch-id: 24833689bdecd3fc7a604e13bfe203ccd2fca6f0
--
2.50.0
Powered by blists - more mailing lists