]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
rust: drm: Improve safety comment when using `Pin::into_inner_unchecked`
authorEwan Chorynski <ewan.chorynski@ik.me>
Sun, 28 Dec 2025 16:15:23 +0000 (17:15 +0100)
committerDanilo Krummrich <dakr@kernel.org>
Tue, 6 Jan 2026 22:30:28 +0000 (23:30 +0100)
The safety requirements for `Pin::into_inner_unchecked` state that the
returned pointer must be treated as pinned until it is dropped. Such a
guarantee is provided by the `ARef` type. This patch improves the safety
comment to better reflect this.

Signed-off-by: Ewan Chorynski <ewan.chorynski@ik.me>
Link: https://patch.msgid.link/20251228-drm-gem-safety-comment-v2-1-99bb861c3371@ik.me
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
rust/kernel/drm/gem/mod.rs

index bdaac839dacc99ebe03d37604f0fb4787ee27126..d49a9ba026356c037c4b18a6be979ebd430703a4 100644 (file)
@@ -210,7 +210,7 @@ impl<T: DriverObject> Object<T> {
         // SAFETY: The arguments are all valid per the type invariants.
         to_result(unsafe { bindings::drm_gem_object_init(dev.as_raw(), obj.obj.get(), size) })?;
 
-        // SAFETY: We never move out of `Self`.
+        // SAFETY: We will never move out of `Self` as `ARef<Self>` is always treated as pinned.
         let ptr = KBox::into_raw(unsafe { Pin::into_inner_unchecked(obj) });
 
         // SAFETY: `ptr` comes from `KBox::into_raw` and hence can't be NULL.