From 08daec77fddf23cd246a0662c6dc0d60229caaee Mon Sep 17 00:00:00 2001 From: Dillon Varone Date: Wed, 13 Dec 2023 16:39:22 -0500 Subject: [PATCH] drm/amd/display: Deep copy dml2_context when copying dc_state [WHY&HOW] dml2_context should be deep copied from src to dst dc_state. Reviewed-by: George Shen Acked-by: Wayne Lin Signed-off-by: Dillon Varone Tested-by: Daniel Wheeler Signed-off-by: Alex Deucher --- drivers/gpu/drm/amd/display/dc/core/dc_state.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_state.c b/drivers/gpu/drm/amd/display/dc/core/dc_state.c index 66a70a60c479a..dd52cab7ecdf8 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc_state.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc_state.c @@ -212,10 +212,14 @@ struct dc_state *dc_state_create(struct dc *dc) void dc_state_copy(struct dc_state *dst_state, struct dc_state *src_state) { struct kref refcount = dst_state->refcount; +#ifdef CONFIG_DRM_AMD_DC_FP + struct dml2_context *dst_dml2 = dst_state->bw_ctx.dml2; +#endif dc_state_copy_internal(dst_state, src_state); #ifdef CONFIG_DRM_AMD_DC_FP + dst_state->bw_ctx.dml2 = dst_dml2; if (src_state->bw_ctx.dml2) dml2_copy(dst_state->bw_ctx.dml2, src_state->bw_ctx.dml2); #endif -- 2.30.2