Clear ignore_damage_clips when duplicating struct drm_plane_state. The
flag track the state of the damage clips during atomic commits and should
not be kept across plane-state duplications.

Fixes a bug where ignore_damage_clips was not cleared. Once set, the
damage iterator would always ignore damage clips. Only happens in rare
cases in virtgpu and vmwgfx.

Signed-off-by: Thomas Zimmermann <[email protected]>
Fixes: 35ed38d58257 ("drm: Allow drivers to indicate the damage helpers to 
ignore damage clips")
Reviewed-by: Javier Martinez Canillas <[email protected]>
Acked-by: Zack Rusin <[email protected]>
Cc: [email protected]
Cc: <[email protected]> # v6.10+
---
 drivers/gpu/drm/drm_atomic_state_helper.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/drm_atomic_state_helper.c 
b/drivers/gpu/drm/drm_atomic_state_helper.c
index 07686e94aae0..3e26e208e784 100644
--- a/drivers/gpu/drm/drm_atomic_state_helper.c
+++ b/drivers/gpu/drm/drm_atomic_state_helper.c
@@ -409,6 +409,7 @@ void __drm_atomic_helper_plane_duplicate_state(struct 
drm_plane *plane,
        state->fence = NULL;
        state->commit = NULL;
        state->fb_damage_clips = NULL;
+       state->ignore_damage_clips = false;
        state->color_mgmt_changed = false;
 }
 EXPORT_SYMBOL(__drm_atomic_helper_plane_duplicate_state);
-- 
2.54.0

Reply via email to