Message ID | 20210930161641.2333583-1-nathan@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/amd: Initialize remove_mpcc in dcn201_update_mpcc() | expand |
Applied. Thanks! Alex On Thu, Sep 30, 2021 at 12:16 PM Nathan Chancellor <nathan@kernel.org> wrote: > > Clang warns: > > drivers/gpu/drm/amd/amdgpu/../display/dc/dcn201/dcn201_hwseq.c:505:6: error: variable 'remove_mpcc' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] > if (mpc->funcs->get_mpcc_for_dpp_from_secondary) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/amd/amdgpu/../display/dc/dcn201/dcn201_hwseq.c:509:6: note: uninitialized use occurs here > if (remove_mpcc != NULL && mpc->funcs->remove_mpcc_from_secondary) > ^~~~~~~~~~~ > drivers/gpu/drm/amd/amdgpu/../display/dc/dcn201/dcn201_hwseq.c:505:2: note: remove the 'if' if its condition is always true > if (mpc->funcs->get_mpcc_for_dpp_from_secondary) > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > drivers/gpu/drm/amd/amdgpu/../display/dc/dcn201/dcn201_hwseq.c:442:26: note: initialize the variable 'remove_mpcc' to silence this warning > struct mpcc *remove_mpcc; > ^ > = NULL > 1 error generated. > > The code already handles remove_mpcc being NULL just fine so initialize > it to NULL at the beginning of the function so it is never used > uninitialized. > > Fixes: ff7e396f822f ("drm/amd/display: add cyan_skillfish display support") > Link: https://github.com/ClangBuiltLinux/linux/issues/1469 > Signed-off-by: Nathan Chancellor <nathan@kernel.org> > --- > drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c b/drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c > index ceaaeeb8f2de..cfd09b3f705e 100644 > --- a/drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c > +++ b/drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c > @@ -439,7 +439,7 @@ void dcn201_update_mpcc(struct dc *dc, struct pipe_ctx *pipe_ctx) > bool per_pixel_alpha = pipe_ctx->plane_state->per_pixel_alpha && pipe_ctx->bottom_pipe; > int mpcc_id, dpp_id; > struct mpcc *new_mpcc; > - struct mpcc *remove_mpcc; > + struct mpcc *remove_mpcc = NULL; > struct mpc *mpc = dc->res_pool->mpc; > struct mpc_tree *mpc_tree_params = &(pipe_ctx->stream_res.opp->mpc_tree_params); > > > base-commit: 30fc33064c846df29888c3c61e30a064aad3a342 > -- > 2.33.0.591.gddb1055343 >
diff --git a/drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c b/drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c index ceaaeeb8f2de..cfd09b3f705e 100644 --- a/drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c +++ b/drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c @@ -439,7 +439,7 @@ void dcn201_update_mpcc(struct dc *dc, struct pipe_ctx *pipe_ctx) bool per_pixel_alpha = pipe_ctx->plane_state->per_pixel_alpha && pipe_ctx->bottom_pipe; int mpcc_id, dpp_id; struct mpcc *new_mpcc; - struct mpcc *remove_mpcc; + struct mpcc *remove_mpcc = NULL; struct mpc *mpc = dc->res_pool->mpc; struct mpc_tree *mpc_tree_params = &(pipe_ctx->stream_res.opp->mpc_tree_params);
Clang warns: drivers/gpu/drm/amd/amdgpu/../display/dc/dcn201/dcn201_hwseq.c:505:6: error: variable 'remove_mpcc' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] if (mpc->funcs->get_mpcc_for_dpp_from_secondary) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/dc/dcn201/dcn201_hwseq.c:509:6: note: uninitialized use occurs here if (remove_mpcc != NULL && mpc->funcs->remove_mpcc_from_secondary) ^~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/dc/dcn201/dcn201_hwseq.c:505:2: note: remove the 'if' if its condition is always true if (mpc->funcs->get_mpcc_for_dpp_from_secondary) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/../display/dc/dcn201/dcn201_hwseq.c:442:26: note: initialize the variable 'remove_mpcc' to silence this warning struct mpcc *remove_mpcc; ^ = NULL 1 error generated. The code already handles remove_mpcc being NULL just fine so initialize it to NULL at the beginning of the function so it is never used uninitialized. Fixes: ff7e396f822f ("drm/amd/display: add cyan_skillfish display support") Link: https://github.com/ClangBuiltLinux/linux/issues/1469 Signed-off-by: Nathan Chancellor <nathan@kernel.org> --- drivers/gpu/drm/amd/display/dc/dcn201/dcn201_hwseq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) base-commit: 30fc33064c846df29888c3c61e30a064aad3a342