Hi This patch causes warnings for me in a continuous loop https://bugs.freedesktop.org/show_bug.cgi?id=110949 Let me know if you'd like any more detail Cheers Mike On Fri, 7 Jun 2019 at 16:42, Francis, David <David.Francis@xxxxxxx> wrote: > > Patch is > > Reviewed-by: David Francis <David.Francis@xxxxxxx> > > ________________________________ > From: amd-gfx <amd-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> on behalf of Nicholas Kazlauskas <nicholas.kazlauskas@xxxxxxx> > Sent: June 7, 2019 11:16:55 AM > To: amd-gfx@xxxxxxxxxxxxxxxxxxxxx > Cc: Francis, David; Wentland, Harry; Kazlauskas, Nicholas > Subject: [PATCH] drm/amd/display: Enable fast plane updates when state->allow_modeset = true > > [Why] > Whenever the a modeset is allowed (but not neccessarily required) we > currently recreate all the planes in the state. Most IGT tests and > legacy IOCTLs create atomic commits with this flag set, so the pipes > are often unnecessarily reprogrammed. > > Poor performance and stuttering can occur when many of these commits > are frequently issued. > > This flag was needed when the appropriate conditions for checking > whether the planes needed a reset were not in place, but > should_reset_plane should cover everything needed now. > > [How] > Drop the check for state->allow_modeset in should_reset_plane. > > All planes on a CRTC should reset in the following conditions: > - The CRTC needs a modeset > - The CRTC degamma changes > - Planes are added or removed to the CRTC > > These conditions are all covered in should_reset_plane. > > We still can't drop the format change check in should_reset_plane since > fill_dc_plane_info_and_addr isn't called when validating the state, so > we can't tell if a FULL update is needed or not. > > Cc: David Francis <david.francis@xxxxxxx> > Cc: Harry Wentland <harry.wentland@xxxxxxx> > Signed-off-by: Nicholas Kazlauskas <nicholas.kazlauskas@xxxxxxx> > --- > drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 8 -------- > 1 file changed, 8 deletions(-) > > diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > index a698c8f272ed..45f0d5b6c468 100644 > --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c > @@ -6446,14 +6446,6 @@ static bool should_reset_plane(struct drm_atomic_state *state, > struct drm_crtc_state *new_crtc_state; > int i; > > - /* > - * TODO: Remove this hack once the checks below are sufficient > - * enough to determine when we need to reset all the planes on > - * the stream. > - */ > - if (state->allow_modeset) > - return true; > - > /* Exit early if we know that we're adding or removing the plane. */ > if (old_plane_state->crtc != new_plane_state->crtc) > return true; > -- > 2.17.1 > > _______________________________________________ > amd-gfx mailing list > amd-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/amd-gfx > _______________________________________________ > amd-gfx mailing list > amd-gfx@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/amd-gfx _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx