mbox series

[0/3] drm/i915/display: Unpin cursor worker in vblank worker series.

Message ID 20240425102604.1704520-1-maarten.lankhorst@linux.intel.com (mailing list archive)
Headers show
Series drm/i915/display: Unpin cursor worker in vblank worker series. | expand

Message

Maarten Lankhorst April 25, 2024, 10:26 a.m. UTC
Use the vblank worker to unpin fb, for the legacy cursor fastpath and atomic cursor slowpath.
This prevents pipe fault errors from the cursor plane in Xe.

A small race appears to exist in kms_universal_plane@cursor-fb-leak on dg2, not sure why. I tried reproducing it and failed.

Maarten Lankhorst (2):
  drm: Add drm_vblank_work_flush_all().
  drm/i915: Use the same vblank worker for atomic unpin

Ville Syrjälä (1):
  drm/i915: Use vblank worker to unpin old legacy cursor fb safely

 drivers/gpu/drm/drm_vblank_work.c             | 22 +++++++++++++
 .../gpu/drm/i915/display/intel_atomic_plane.c | 13 +++++++-
 .../gpu/drm/i915/display/intel_atomic_plane.h |  2 ++
 drivers/gpu/drm/i915/display/intel_crtc.c     | 31 +++++++++++++++++++
 drivers/gpu/drm/i915/display/intel_cursor.c   | 26 ++++++++++++++--
 drivers/gpu/drm/i915/display/intel_cursor.h   |  3 ++
 drivers/gpu/drm/i915/display/intel_display.c  |  3 ++
 .../drm/i915/display/intel_display_types.h    |  3 ++
 include/drm/drm_vblank_work.h                 |  2 ++
 9 files changed, 102 insertions(+), 3 deletions(-)