From: Yongqiang Sun Date: Wed, 21 Dec 2016 21:48:51 +0000 (-0500) Subject: drm/amd/display: Fixed crash X-Git-Tag: v4.15-rc1~56^2~23^2~822 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6680b6a1377f944e5369f456fe1b9d193dd4624b;p=thirdparty%2Fkernel%2Flinux.git drm/amd/display: Fixed crash Signed-off-by: Yongqiang Sun Reviewed-by: Tony Cheng Acked-by: Harry Wentland Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/display/dc/core/dc.c b/drivers/gpu/drm/amd/display/dc/core/dc.c index 891075e39ecfd..e6010abc9e0d8 100644 --- a/drivers/gpu/drm/amd/display/dc/core/dc.c +++ b/drivers/gpu/drm/amd/display/dc/core/dc.c @@ -167,24 +167,20 @@ static bool stream_adjust_vmin_vmax(struct dc *dc, struct core_stream *core_stream = DC_STREAM_TO_CORE(stream[0]); int i = 0; bool ret = false; - struct pipe_ctx *pipes; - unsigned int underlay_idx = core_dc->res_pool->underlay_pipe_index; for (i = 0; i < MAX_PIPES; i++) { - if (core_dc->current_context->res_ctx.pipe_ctx[i].stream == core_stream - && i != underlay_idx) { + struct pipe_ctx *pipe = &core_dc->current_context->res_ctx.pipe_ctx[i]; - pipes = &core_dc->current_context->res_ctx.pipe_ctx[i]; - core_dc->hwss.set_drr(&pipes, 1, vmin, vmax); + if (pipe->stream == core_stream && pipe->stream_enc) { + core_dc->hwss.set_drr(&pipe, 1, vmin, vmax); /* build and update the info frame */ - resource_build_info_frame(pipes); - core_dc->hwss.update_info_frame(pipes); + resource_build_info_frame(pipe); + core_dc->hwss.update_info_frame(pipe); ret = true; } } - return ret; }