The atomic state tracking structures used to have a generic state
field to track the state to free when tearing down the
drm_atomic_commit. It has since been renamed to state_to_destroy in
__drm_planes_state, __drm_crtcs_state, __drm_connnectors_state, and
__drm_private_objs_state to better describe its purpose.

The colorop support has been added after that rename, but
__drm_colorops_state still uses the old state name. Rename it to
state_to_destroy for consistency, and add the matching kerneldoc.

Signed-off-by: Maxime Ripard <[email protected]>
---
 drivers/gpu/drm/drm_atomic.c        |  4 ++--
 drivers/gpu/drm/drm_atomic_helper.c |  2 +-
 include/drm/drm_atomic.h            | 18 +++++++++++++++++-
 3 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
index 735ab7badc2e..4bc6bdfb6f1f 100644
--- a/drivers/gpu/drm/drm_atomic.c
+++ b/drivers/gpu/drm/drm_atomic.c
@@ -341,13 +341,13 @@ void drm_atomic_commit_default_clear(struct 
drm_atomic_commit *state)
 
                if (!colorop)
                        continue;
 
                drm_colorop_atomic_destroy_state(colorop,
-                                                state->colorops[i].state);
+                                                
state->colorops[i].state_to_destroy);
                state->colorops[i].ptr = NULL;
-               state->colorops[i].state = NULL;
+               state->colorops[i].state_to_destroy = NULL;
                state->colorops[i].old_state = NULL;
                state->colorops[i].new_state = NULL;
        }
 
        for (i = 0; i < state->num_private_objs; i++) {
diff --git a/drivers/gpu/drm/drm_atomic_helper.c 
b/drivers/gpu/drm/drm_atomic_helper.c
index 285aac3554df..c4752bd7d999 100644
--- a/drivers/gpu/drm/drm_atomic_helper.c
+++ b/drivers/gpu/drm/drm_atomic_helper.c
@@ -3349,11 +3349,11 @@ int drm_atomic_helper_swap_state(struct 
drm_atomic_commit *state,
                WARN_ON(colorop->state != old_colorop_state);
 
                old_colorop_state->state = state;
                new_colorop_state->state = NULL;
 
-               state->colorops[i].state = old_colorop_state;
+               state->colorops[i].state_to_destroy = old_colorop_state;
                colorop->state = new_colorop_state;
        }
 
        drm_panic_lock(state->dev, flags);
        for_each_oldnew_plane_in_state(state, plane, old_plane_state, 
new_plane_state, i) {
diff --git a/include/drm/drm_atomic.h b/include/drm/drm_atomic.h
index 88087910ab1a..00b3e9fc429a 100644
--- a/include/drm/drm_atomic.h
+++ b/include/drm/drm_atomic.h
@@ -157,11 +157,27 @@ struct drm_crtc_commit {
        bool abort_completion;
 };
 
 struct __drm_colorops_state {
        struct drm_colorop *ptr;
-       struct drm_colorop_state *state, *old_state, *new_state;
+
+       /**
+        * @state_to_destroy:
+        *
+        * Used to track the @drm_colorop_state we will need to free
+        * when tearing down the associated &drm_atomic_commit in
+        * $drm_mode_config_funcs.atomic_state_clear or
+        * drm_atomic_commit_default_clear().
+        *
+        * Before a commit, and the call to
+        * drm_atomic_helper_swap_state() in particular, it points to
+        * the same state than @new_state. After a commit, it points to
+        * the same state than @old_state.
+        */
+       struct drm_colorop_state *state_to_destroy;
+
+       struct drm_colorop_state *old_state, *new_state;
 };
 
 struct __drm_planes_state {
        struct drm_plane *ptr;
 

-- 
2.54.0

Reply via email to