On Fri, 16 Jan 2026, Kaushlendra Kumar <[email protected]> wrote:
> intel_crtc_for_pipe() may return NULL in teardown/error paths.
> Add a NULL check in intel_wait_for_vblank_if_active() to avoid
> dereferencing a missing CRTC and rare NULL deref panics.

Do you have the backtrace?

BR,
Jani.

>
> Fixes: 92e9624ad946 ("drm/i915/crtc: un-inline some crtc functions and move 
> to intel_crtc.[ch]")
> Signed-off-by: Kaushlendra Kumar <[email protected]>
> ---
>  drivers/gpu/drm/i915/display/intel_crtc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_crtc.c 
> b/drivers/gpu/drm/i915/display/intel_crtc.c
> index 9d2a23c96c61..9eb158737c1c 100644
> --- a/drivers/gpu/drm/i915/display/intel_crtc.c
> +++ b/drivers/gpu/drm/i915/display/intel_crtc.c
> @@ -74,7 +74,7 @@ void intel_wait_for_vblank_if_active(struct intel_display 
> *display,
>  {
>       struct intel_crtc *crtc = intel_crtc_for_pipe(display, pipe);
>  
> -     if (crtc->active)
> +     if (crtc && crtc->active)
>               intel_crtc_wait_for_next_vblank(crtc);
>  }

-- 
Jani Nikula, Intel

Reply via email to