Message ID | 20220823112920.352563-1-jouni.hogander@intel.com (mailing list archive) |
---|---|
Headers | show |
Series | Fixes for damage clips handling | expand |
On Tue, Aug 23, 2022 at 02:29:16PM +0300, Jouni Högander wrote: > Currently damage clips handling is broken for planes when using big > framebuffer + offset in case kms driver adjusts drm_plane_state.src > coords. This is because damage clips are using coords relative to > original coords from user-space. > > This patchset is fixing this by using original > coords from user-space instead of drm_plane_state.src when iterating > damage_clips. > > v2: Modify drm unit tests accordingly > > Cc: Daniel Vetter <daniel.vetter@ffwll.ch> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > Cc: Jani Nikula <jani.nikula@intel.com> > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > Cc: José Roberto de Souza <jose.souza@intel.com> > Cc: Mika Kahola <mika.kahola@intel.com> > Cc: Maíra Canal <mairacanal@riseup.net> > > Jouni Högander (4): > drm: Use original src rect while initializing damage iterator > drm/i915/display: Use original src in psr2 sel fetch area calculation > drm/i915/display: Use drm helper instead of own loop for damage clips > drm/tests: Set also mock plane src_x, src_y, src_w and src_h Do these need to be applied into the same tree, or can the drm vs. i915 stuff go in separately? > > drivers/gpu/drm/drm_damage_helper.c | 11 ++++++---- > drivers/gpu/drm/i915/display/intel_psr.c | 20 +++++++------------ > .../gpu/drm/tests/drm_damage_helper_test.c | 5 +++++ > 3 files changed, 19 insertions(+), 17 deletions(-) > > -- > 2.34.1
On Tue, 2022-09-13 at 12:04 +0300, Ville Syrjälä wrote: > On Tue, Aug 23, 2022 at 02:29:16PM +0300, Jouni Högander wrote: > > Currently damage clips handling is broken for planes when using big > > framebuffer + offset in case kms driver adjusts drm_plane_state.src > > coords. This is because damage clips are using coords relative to > > original coords from user-space. > > > > This patchset is fixing this by using original > > coords from user-space instead of drm_plane_state.src when > > iterating > > damage_clips. > > > > v2: Modify drm unit tests accordingly > > > > Cc: Daniel Vetter <daniel.vetter@ffwll.ch> > > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > > Cc: Jani Nikula <jani.nikula@intel.com> > > Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Cc: José Roberto de Souza <jose.souza@intel.com> > > Cc: Mika Kahola <mika.kahola@intel.com> > > Cc: Maíra Canal <mairacanal@riseup.net> > > > > Jouni Högander (4): > > drm: Use original src rect while initializing damage iterator > > drm/i915/display: Use original src in psr2 sel fetch area > > calculation > > drm/i915/display: Use drm helper instead of own loop for damage > > clips > > drm/tests: Set also mock plane src_x, src_y, src_w and src_h > > Do these need to be applied into the same tree, or can > the drm vs. i915 stuff go in separately? Patch 1 and 2 are needed to fix that bigfb handling for i915. Patch 4 is also needed to prevent breaking tests. Patch 3 is more like cleanup. I think i915 patches could go via i915 tree. This just means that i915 bigfb handling isn't fixed by either of the sets alone. > > > > > drivers/gpu/drm/drm_damage_helper.c | 11 ++++++---- > > drivers/gpu/drm/i915/display/intel_psr.c | 20 +++++++-------- > > ---- > > .../gpu/drm/tests/drm_damage_helper_test.c | 5 +++++ > > 3 files changed, 19 insertions(+), 17 deletions(-) > > > > -- > > 2.34.1 >
Hi Am 13.09.22 um 12:47 schrieb Hogander, Jouni: > On Tue, 2022-09-13 at 12:04 +0300, Ville Syrjälä wrote: >> On Tue, Aug 23, 2022 at 02:29:16PM +0300, Jouni Högander wrote: >>> Currently damage clips handling is broken for planes when using big >>> framebuffer + offset in case kms driver adjusts drm_plane_state.src >>> coords. This is because damage clips are using coords relative to >>> original coords from user-space. >>> >>> This patchset is fixing this by using original >>> coords from user-space instead of drm_plane_state.src when >>> iterating >>> damage_clips. >>> >>> v2: Modify drm unit tests accordingly >>> >>> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> >>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> >>> Cc: Jani Nikula <jani.nikula@intel.com> >>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> >>> Cc: José Roberto de Souza <jose.souza@intel.com> >>> Cc: Mika Kahola <mika.kahola@intel.com> >>> Cc: Maíra Canal <mairacanal@riseup.net> >>> >>> Jouni Högander (4): >>> drm: Use original src rect while initializing damage iterator >>> drm/i915/display: Use original src in psr2 sel fetch area >>> calculation >>> drm/i915/display: Use drm helper instead of own loop for damage >>> clips >>> drm/tests: Set also mock plane src_x, src_y, src_w and src_h >> >> Do these need to be applied into the same tree, or can >> the drm vs. i915 stuff go in separately? > > Patch 1 and 2 are needed to fix that bigfb handling for i915. Patch 4 > is also needed to prevent breaking tests. Patch 3 is more like cleanup. > > I think i915 patches could go via i915 tree. This just means that i915 > bigfb handling isn't fixed by either of the sets alone. I have a number of updates for damage handling that I want to get reviewed soon. Could you please merge your patchset via drm-misc-next? Best regards Thomas > >> >>> >>> drivers/gpu/drm/drm_damage_helper.c | 11 ++++++---- >>> drivers/gpu/drm/i915/display/intel_psr.c | 20 +++++++-------- >>> ---- >>> .../gpu/drm/tests/drm_damage_helper_test.c | 5 +++++ >>> 3 files changed, 19 insertions(+), 17 deletions(-) >>> >>> -- >>> 2.34.1 >> >
Am 13.09.22 um 12:54 schrieb Thomas Zimmermann: > Hi > > Am 13.09.22 um 12:47 schrieb Hogander, Jouni: >> On Tue, 2022-09-13 at 12:04 +0300, Ville Syrjälä wrote: >>> On Tue, Aug 23, 2022 at 02:29:16PM +0300, Jouni Högander wrote: >>>> Currently damage clips handling is broken for planes when using big >>>> framebuffer + offset in case kms driver adjusts drm_plane_state.src >>>> coords. This is because damage clips are using coords relative to >>>> original coords from user-space. >>>> >>>> This patchset is fixing this by using original >>>> coords from user-space instead of drm_plane_state.src when >>>> iterating >>>> damage_clips. >>>> >>>> v2: Modify drm unit tests accordingly >>>> >>>> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> >>>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> >>>> Cc: Jani Nikula <jani.nikula@intel.com> >>>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> >>>> Cc: José Roberto de Souza <jose.souza@intel.com> >>>> Cc: Mika Kahola <mika.kahola@intel.com> >>>> Cc: Maíra Canal <mairacanal@riseup.net> >>>> >>>> Jouni Högander (4): >>>> drm: Use original src rect while initializing damage iterator >>>> drm/i915/display: Use original src in psr2 sel fetch area >>>> calculation >>>> drm/i915/display: Use drm helper instead of own loop for damage >>>> clips >>>> drm/tests: Set also mock plane src_x, src_y, src_w and src_h >>> >>> Do these need to be applied into the same tree, or can >>> the drm vs. i915 stuff go in separately? >> >> Patch 1 and 2 are needed to fix that bigfb handling for i915. Patch 4 >> is also needed to prevent breaking tests. Patch 3 is more like cleanup. >> >> I think i915 patches could go via i915 tree. This just means that i915 >> bigfb handling isn't fixed by either of the sets alone. > > I have a number of updates for damage handling that I want to get > reviewed soon. Could you please merge your patchset via drm-misc-next? Or at least patches 1 and 4. > > Best regards > Thomas > >>> >>>> >>>> drivers/gpu/drm/drm_damage_helper.c | 11 ++++++---- >>>> drivers/gpu/drm/i915/display/intel_psr.c | 20 +++++++-------- >>>> ---- >>>> .../gpu/drm/tests/drm_damage_helper_test.c | 5 +++++ >>>> 3 files changed, 19 insertions(+), 17 deletions(-) >>>> >>>> -- >>>> 2.34.1 >>> >> >
On Tue, Sep 13, 2022 at 12:56:49PM +0200, Thomas Zimmermann wrote: > > > Am 13.09.22 um 12:54 schrieb Thomas Zimmermann: > > Hi > > > > Am 13.09.22 um 12:47 schrieb Hogander, Jouni: > >> On Tue, 2022-09-13 at 12:04 +0300, Ville Syrjälä wrote: > >>> On Tue, Aug 23, 2022 at 02:29:16PM +0300, Jouni Högander wrote: > >>>> Currently damage clips handling is broken for planes when using big > >>>> framebuffer + offset in case kms driver adjusts drm_plane_state.src > >>>> coords. This is because damage clips are using coords relative to > >>>> original coords from user-space. > >>>> > >>>> This patchset is fixing this by using original > >>>> coords from user-space instead of drm_plane_state.src when > >>>> iterating > >>>> damage_clips. > >>>> > >>>> v2: Modify drm unit tests accordingly > >>>> > >>>> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> > >>>> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > >>>> Cc: Jani Nikula <jani.nikula@intel.com> > >>>> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> > >>>> Cc: José Roberto de Souza <jose.souza@intel.com> > >>>> Cc: Mika Kahola <mika.kahola@intel.com> > >>>> Cc: Maíra Canal <mairacanal@riseup.net> > >>>> > >>>> Jouni Högander (4): > >>>> drm: Use original src rect while initializing damage iterator > >>>> drm/i915/display: Use original src in psr2 sel fetch area > >>>> calculation > >>>> drm/i915/display: Use drm helper instead of own loop for damage > >>>> clips > >>>> drm/tests: Set also mock plane src_x, src_y, src_w and src_h > >>> > >>> Do these need to be applied into the same tree, or can > >>> the drm vs. i915 stuff go in separately? > >> > >> Patch 1 and 2 are needed to fix that bigfb handling for i915. Patch 4 > >> is also needed to prevent breaking tests. Patch 3 is more like cleanup. > >> > >> I think i915 patches could go via i915 tree. This just means that i915 > >> bigfb handling isn't fixed by either of the sets alone. > > > > I have a number of updates for damage handling that I want to get > > reviewed soon. Could you please merge your patchset via drm-misc-next? > > Or at least patches 1 and 4. Went with the 50/50 split. Everything pushed now. Thanks.