On 2026-03-10 07:32, Chaitanya Kumar Borah wrote:
> __drm_atomic_helper_colorop_duplicate_state() unconditionally
> sets state->bypass = true after copying the existing state.
>
> This override causes the new atomic state to no longer reflect
> the currently committed hardware state. Since the bypass property
> directly controls whether the colorop is active in hardware,
> resetting it to true can inadvertently disable an active colorop
> during a subsequent commit, particularly for internal driver commits
> where userspace does not touch the property.
>
> Drop the unconditional assignment and preserve the duplicated
> bypass value.
>
> Fixes: 8c5ea1745f4c ("drm/colorop: Add BYPASS property")
> Cc: <[email protected]> #v6.19+
> Reviewed-by: Uma Shankar <[email protected]>
Reviewed-by: Harry Wentland <[email protected]>
Harry
> Signed-off-by: Chaitanya Kumar Borah <[email protected]>
> ---
> drivers/gpu/drm/drm_colorop.c | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_colorop.c b/drivers/gpu/drm/drm_colorop.c
> index f421c623b3f0..e44a738c4c14 100644
> --- a/drivers/gpu/drm/drm_colorop.c
> +++ b/drivers/gpu/drm/drm_colorop.c
> @@ -466,8 +466,6 @@ static void
> __drm_atomic_helper_colorop_duplicate_state(struct drm_colorop *colo
>
> if (state->data)
> drm_property_blob_get(state->data);
> -
> - state->bypass = true;
> }
>
> struct drm_colorop_state *