]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
drm/amd/display: check if modeset is required before adding plane
authorShirish S <shirish.s@amd.com>
Fri, 27 Oct 2017 03:25:55 +0000 (03:25 +0000)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 27 Oct 2017 17:15:57 +0000 (13:15 -0400)
Adding affected planes without checking if modeset is requested from the user space causes performance regression in video p/b scenarios when full screen p/b is not composited.

Hence add a check before adding a plane as affected.

bug: https://bugs.freedesktop.org/show_bug.cgi?id=103408

Acked-by: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Shirish S <shirish.s@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c

index c2fefd3e657e64066a635a8c7603bea0be262b7e..fd3e995fc4266514c9cf1306d2d1da9523c48d45 100644 (file)
@@ -4653,6 +4653,9 @@ static int amdgpu_dm_atomic_check(struct drm_device *dev,
                }
        } else {
                for_each_oldnew_crtc_in_state(state, crtc, old_crtc_state, new_crtc_state, i) {
+                       if (!drm_atomic_crtc_needs_modeset(new_crtc_state))
+                               continue;
+
                        if (!new_crtc_state->enable)
                                continue;