Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/i915: Use the proper (hw.crtc) for the cursor unpin vblank worker

uapi.crtc is NULL for joiner secondary pipes, so using that is
nonsense in most places. Switch to hw.crtc so that we use the
deferred cursor unpin also on joiner secondary pipes.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patch.msgid.link/20251119181606.17129-2-ville.syrjala@linux.intel.com
Reviewed-by: Jani Nikula <jani.nikula@intel.com>

+3 -3
+2 -2
drivers/gpu/drm/i915/display/intel_crtc.c
··· 552 552 553 553 for_each_oldnew_intel_plane_in_state(state, plane, old_plane_state, 554 554 new_plane_state, i) { 555 - if (old_plane_state->uapi.crtc == &crtc->base) 555 + if (old_plane_state->hw.crtc == &crtc->base) 556 556 intel_plane_init_cursor_vblank_work(old_plane_state, 557 557 new_plane_state); 558 558 } ··· 704 704 int i; 705 705 706 706 for_each_old_intel_plane_in_state(state, plane, old_plane_state, i) { 707 - if (old_plane_state->uapi.crtc == &crtc->base && 707 + if (old_plane_state->hw.crtc == &crtc->base && 708 708 old_plane_state->unpin_work.vblank) { 709 709 drm_vblank_work_schedule(&old_plane_state->unpin_work, 710 710 drm_crtc_accurate_vblank_count(&crtc->base) + 1,
+1 -1
drivers/gpu/drm/i915/display/intel_plane.c
··· 1408 1408 old_plane_state->ggtt_vma == new_plane_state->ggtt_vma) 1409 1409 return; 1410 1410 1411 - drm_vblank_work_init(&old_plane_state->unpin_work, old_plane_state->uapi.crtc, 1411 + drm_vblank_work_init(&old_plane_state->unpin_work, old_plane_state->hw.crtc, 1412 1412 intel_cursor_unpin_work); 1413 1413 } 1414 1414