summaryrefslogtreecommitdiff
path: root/rust/kernel/drm
diff options
context:
space:
mode:
authorYilin Chen <1479826151@qq.com>2026-07-07 16:33:33 +0000
committerAlice Ryhl <aliceryhl@google.com>2026-07-13 08:18:37 +0000
commit9a80ddbf66e4fb549fe1e94858da659619333dda (patch)
treef4748fa2cf30ee89ee19d85278b9ab76ab5c3231 /rust/kernel/drm
parentaea0aeeff1502c8dfffc52fc1f3db706388c948c (diff)
downloadlinux-next-9a80ddbf66e4fb549fe1e94858da659619333dda.tar.gz
linux-next-9a80ddbf66e4fb549fe1e94858da659619333dda.zip
rust: drm: fix GEM object pointer safety docs
IntoGEMObject::from_raw() receives a pointer to struct drm_gem_object, not a pointer to Self. The previous documentation used Self even though the function argument is the embedded GEM object pointer. However, the pointer must not be any arbitrary valid drm_gem_object. The implementations recover Self with container_of(), so the GEM object must be embedded in a valid Self instance. This patch documents that requirement explicitly. Assisted-by: Codex:GPT-5 Signed-off-by: Yilin Chen <1479826151@qq.com> Link: https://patch.msgid.link/tencent_4426892E62B77DEA2AE898E899A871940005@qq.com Signed-off-by: Alice Ryhl <aliceryhl@google.com>
Diffstat (limited to 'rust/kernel/drm')
-rw-r--r--rust/kernel/drm/gem/mod.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/rust/kernel/drm/gem/mod.rs b/rust/kernel/drm/gem/mod.rs
index b03b5f9ccd7e..80d8f524f9d5 100644
--- a/rust/kernel/drm/gem/mod.rs
+++ b/rust/kernel/drm/gem/mod.rs
@@ -117,7 +117,8 @@ pub trait IntoGEMObject: Sized + super::private::Sealed {
///
/// # Safety
///
- /// - `self_ptr` must be a valid pointer to `Self`.
+ /// - `self_ptr` must be a valid pointer to the `struct drm_gem_object` embedded in a
+ /// valid instance of `Self`.
/// - The caller promises that holding the immutable reference returned by this function does
/// not violate rust's data aliasing rules and remains valid throughout the lifetime of `'a`.
unsafe fn from_raw<'a>(self_ptr: *mut bindings::drm_gem_object) -> &'a Self;