[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <93788edc-541e-4f7e-afe1-02a2526be684@amd.com>
Date: Thu, 14 Nov 2024 16:16:05 +0800
From: "Chung, ChiaHsuan (Tom)" <chiahsuan.chung@....com>
To: Zicheng Qu <quzicheng@...wei.com>, harry.wentland@....com,
sunpeng.li@....com, Rodrigo.Siqueira@....com, alexander.deucher@....com,
christian.koenig@....com, Xinhui.Pan@....com, airlied@...il.com,
simona@...ll.ch, Dillon.Varone@....com, Alvin.Lee2@....com,
nicholas.kazlauskas@....com, alex.hung@....com, aurabindo.pillai@....com,
relja.vojvodic@....com, wenjing.liu@....com, george.shen@....com,
mwen@...lia.com, yi-lchen@....com, martin.leung@....com,
srinivasan.shanmugam@....com, stylon.wang@....com, jun.lei@....com,
amd-gfx@...ts.freedesktop.org, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org
Cc: tanghui20@...wei.com, zhangqiao22@...wei.com, judy.chenhui@...wei.com
Subject: Re: [PATCH 2/2] drm/amd/display: Fix null check for
pipe_ctx->plane_state in hwss_setup_dpp
Reviewed-by: Tom Chung <chiahsuan.chung@....com>
On 11/5/2024 10:01 PM, Zicheng Qu wrote:
> This commit addresses a null pointer dereference issue in
> hwss_setup_dpp(). The issue could occur when pipe_ctx->plane_state is
> null. The fix adds a check to ensure `pipe_ctx->plane_state` is not null
> before accessing. This prevents a null pointer dereference.
>
> Fixes: 0baae6246307 ("drm/amd/display: Refactor fast update to use new HWSS build sequence")
> Signed-off-by: Zicheng Qu <quzicheng@...wei.com>
> ---
> drivers/gpu/drm/amd/display/dc/core/dc_hw_sequencer.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/core/dc_hw_sequencer.c
> index 7ee2be8f82c4..bb766c2a7417 100644
> --- a/drivers/gpu/drm/amd/display/dc/core/dc_hw_sequencer.c
> +++ b/drivers/gpu/drm/amd/display/dc/core/dc_hw_sequencer.c
> @@ -881,6 +881,9 @@ void hwss_setup_dpp(union block_sequence_params *params)
> struct dpp *dpp = pipe_ctx->plane_res.dpp;
> struct dc_plane_state *plane_state = pipe_ctx->plane_state;
>
> + if (!plane_state)
> + return;
> +
> if (dpp && dpp->funcs->dpp_setup) {
> // program the input csc
> dpp->funcs->dpp_setup(dpp,
Powered by blists - more mailing lists