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: 73cfd166e0 ("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
This commit is contained in:
Sophie D 2026-09-09 21:49:10 -04:00 committed by Ruben Wauters
parent bbb9293c9b
commit effce1cb87
No known key found for this signature in database
GPG Key ID: D27E50C050AE0CE1

View File

@ -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;