Commit 2194e3ae authored by Roman Li's avatar Roman Li Committed by Alex Deucher
Browse files

drm/amd/display: Fix unbalanced locking in surface apply



also simplifying syntax and removing unused variable in
dce110_apply_ctx_for_surface()

Signed-off-by: default avatarRoman Li <Roman.Li@amd.com>
Reviewed-by: default avatarTony Cheng <Tony.Cheng@amd.com>
Acked-by: default avatarHarry Wentland <harry.wentland@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent 7f914a62
Loading
Loading
Loading
Loading
+2 −5
Original line number Diff line number Diff line
@@ -2849,22 +2849,19 @@ static void dce110_apply_ctx_for_surface(
		int num_planes,
		struct dc_state *context)
{
	int i, be_idx;
	int i;

	if (num_planes == 0)
		return;

	be_idx = -1;
	for (i = 0; i < dc->res_pool->pipe_count; i++) {
		struct pipe_ctx *pipe_ctx = &context->res_ctx.pipe_ctx[i];
		struct pipe_ctx *old_pipe_ctx = &dc->current_state->res_ctx.pipe_ctx[i];

		if (stream == context->res_ctx.pipe_ctx[i].stream) {
			be_idx = context->res_ctx.pipe_ctx[i].stream_res.tg->inst;
		if (stream == pipe_ctx->stream) {
			if (!pipe_ctx->top_pipe &&
				(pipe_ctx->plane_state || old_pipe_ctx->plane_state))
				dc->hwss.pipe_control_lock(dc, pipe_ctx, true);
			break;
		}
	}