aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorSophie D <patches@scd31.com>2026-09-09 21:49:10 -0400
committerRuben Wauters <rubenru09@aol.com>2026-09-12 13:52:10 +0100
commiteffce1cb87ee0d8b3a8cbe7722968f4ea7efd360 (patch)
treeb38cd3a86e93cd4fab483255d64a233b4b7d42ba
parentdrm/nouveau/gsp: Increase delay for magic sleep in r535_gsp_fini() (diff)
drm/gud: Ignore damage clips in full update mode
When running in full update mode, previously small updates (such as moving the mouse across the screen) would cause many full frames to be generated. This would bog down the bus and lower the effective framerate significantly - I was seeing a drop from 60 FPS to 2 FPS. Set ignore_damage_clips in full update mode so the damage iterator yields a single full-plane rectangle instead of one per clip. Fixes: 73cfd166e045 ("drm/gud: Replace simple display pipe with DRM atomic helpers") Cc: <stable@vger.kernel.org> # 6.18.x Signed-off-by: Sophie D <patches@scd31.com> Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de> Acked-by: Ruben Wauters <rubenru09@aol.com> Signed-off-by: Ruben Wauters <rubenru09@aol.com> Link: https://patch.msgid.link/20260910014910.8564-1-patches@scd31.com
-rw-r--r--drivers/gpu/drm/gud/gud_pipe.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/gud/gud_pipe.c b/drivers/gpu/drm/gud/gud_pipe.c
index 5ef887d8485a..3388fdc8ea7b 100644
--- a/drivers/gpu/drm/gud/gud_pipe.c
+++ b/drivers/gpu/drm/gud/gud_pipe.c
@@ -482,6 +482,9 @@ int gud_plane_atomic_check(struct drm_plane *plane,
if (!new_plane_state->visible)
return 0;
+ if (gdrm->flags & GUD_DISPLAY_FLAG_FULL_UPDATE)
+ new_plane_state->ignore_damage_clips = true;
+
if (old_plane_state->rotation != new_plane_state->rotation)
crtc_state->mode_changed = true;