On Mon, 05 Feb 2024, Chaitanya Kumar Borah <chaitanya.kumar.borah@xxxxxxxxx> wrote: > This series is based on top of [1] floated by Maarten. > To fix regressions seen in CI, following changes were made on top of the > original series. You've sent at least three versions of this in the past 24 hours, with no indication of the version. Please use the -vN parameter in git format-patch or git send-email to indicate the series version number in patch subjects, so it's easier for people to track. Thanks, Jani. > > 1. add a check in the plane state destroy hook to not move forward if the vblank worker is scheduled. > 2. add checks before accessing frame buffer object (we are not sure yet how much this helps but we have found that this operation causes dump stacks) > 3. do not defer the intel atomic cleanup into a work queue, instead execute it at the end of atomic commit tail. > > While this series is in noway a complete or proper solution it is meant to trigger a discussion to arrive at one. > > [1] https://patchwork.freedesktop.org/series/126934/ > > v2: Add missing patch > v3: Remove misleading error log > Change condition to access fb object > > Chaitanya Kumar Borah (3): > drm/i915: do not destroy plane state if cursor unpin worker is > scheduled > drm/i915: Add sanity check before accessing fb buffer object > drm/i915: do not defer cleanup work > > 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 | 53 ++++++++++++++++++- > .../gpu/drm/i915/display/intel_atomic_plane.h | 4 ++ > drivers/gpu/drm/i915/display/intel_crtc.c | 27 ++++++++++ > 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 | 11 ++-- > .../drm/i915/display/intel_display_types.h | 3 ++ > include/drm/drm_vblank_work.h | 2 + > 9 files changed, 142 insertions(+), 9 deletions(-) -- Jani Nikula, Intel