From 7091b52645f30d7cc32d04fce5810cf9cd4fa6d0 Mon Sep 17 00:00:00 2001 From: Lyude Paul <lyude@redhat.com> Date: Mon, 2 Dec 2024 14:58:09 -0500 Subject: [PATCH] squash! WIP: rust: drm/kms: Add OpaquePlane and OpaquePlaneState V3: * Add safety comment to implementation of ModeObject --- rust/kernel/drm/kms/plane.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rust/kernel/drm/kms/plane.rs b/rust/kernel/drm/kms/plane.rs index c7dcc799d91f8..f12cfd708d26c 100644 --- a/rust/kernel/drm/kms/plane.rs +++ b/rust/kernel/drm/kms/plane.rs @@ -404,7 +404,10 @@ impl<T: KmsDriver> AsRawPlane for OpaquePlane<T> { } } -impl<T: KmsDriver> ModeObject for OpaquePlane<T> { +// SAFETY: We don't expose OpaquePlane<T> to users before `base` is initialized in +// Plane::<T>::new(), so `raw_mode_obj` always returns a valid poiner to a +// bindings::drm_mode_object. +unsafe impl<T: KmsDriver> ModeObject for OpaquePlane<T> { type Driver = T; fn drm_dev(&self) -> &Device<Self::Driver> { -- GitLab