From 5ce2b9cbcd71af4bd14bff0ac9c62453c8bdc3ce Mon Sep 17 00:00:00 2001 From: Maarten Lankhorst Date: Thu, 31 Jan 2019 09:31:07 +0100 Subject: lib/igt_kms: Clear all non-atomic properties in legacy/universal commit correctly. We used to add them all 1 by 1, but we really only care about not handling a few. Only skip unsetting all atomic properties, instead of handling it through a whitelist. This fixes kms_busy, which was updating the VRR hint, even though we already unset it in the legacy path. Cc: Nicholas Kazlauskas Cc: Harry Wentland Cc: Leo Li Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109490 Signed-off-by: Maarten Lankhorst Reviewed-by: Petri Latvala Reviewed-by: Nicholas Kazlauskas --- lib/igt_kms.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'lib/igt_kms.c') diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 71df98d2..d45b01bd 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -3223,10 +3223,9 @@ display_commit_changed(igt_display_t *display, enum igt_commit_style s) pipe_obj->values[IGT_CRTC_OUT_FENCE_PTR] = 0; pipe_obj->changed = 0; } else { - igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_BACKGROUND); - igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_CTM); - igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_DEGAMMA_LUT); - igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_GAMMA_LUT); + for (i = 0; i < IGT_NUM_CRTC_PROPS; i++) + if (!is_atomic_prop(i)) + igt_pipe_obj_clear_prop_changed(pipe_obj, i); if (s != COMMIT_UNIVERSAL) { igt_pipe_obj_clear_prop_changed(pipe_obj, IGT_CRTC_MODE_ID); -- cgit v1.2.3