Re: [PATCH v6 13/13] media: platform: mtk-mdp3: fix uninitialized variable in mdp_path_config()

From: Hans Verkuil
Date: Mon Oct 02 2023 - 06:57:29 EST


On 22/09/2023 09:41, Moudy Ho wrote:
> Fix the build warnings that were detected by the linux-media
> build scripts tool:
>
> drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:
> In function 'mdp_path_config.isra':
> drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:443:51:
> warning: 'ctx' may be used uninitialized [-Wmaybe-uninitialized]
> 443 | out = CFG_COMP(MT8195, ctx->param, outputs[0]);
> | ~~~^~~~~~~
> drivers/media/platform/mediatek/mdp3/mtk-img-ipi.h:137:25: note:
> in definition of macro 'CFG_COMP'
> 137 | (IS_ERR_OR_NULL(comp) ? 0 : _CFG_COMP(plat, comp, mem))
> | ^~~~
> drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c:396:30:
> note: 'ctx' was declared here
> 396 | struct mdp_comp_ctx *ctx;
> |
>
> Fixes: 61890ccaefaf ("media: platform: mtk-mdp3: add MediaTek MDP3 driver")
> Signed-off-by: Moudy Ho <moudy.ho@xxxxxxxxxxxx>
> ---
> drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c b/drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c
> index 15a0b944745e..4a8d941178aa 100644
> --- a/drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c
> +++ b/drivers/media/platform/mediatek/mdp3/mtk-mdp3-cmdq.c
> @@ -436,13 +436,13 @@ static int mdp_path_config(struct mdp_dev *mdp, struct mdp_cmdq_cmd *cmd,
> if (mdp_cfg_comp_is_dummy(path->mdp_dev, inner_id))
> continue;
>
> + ctx = &path->comps[index];
> if (CFG_CHECK(MT8183, p_id))
> out = CFG_COMP(MT8183, ctx->param, outputs[0]);
> else if (CFG_CHECK(MT8195, p_id))
> out = CFG_COMP(MT8195, ctx->param, outputs[0]);
>
> compose = path->composes[out];
> - ctx = &path->comps[index];
> ret = call_op(ctx, config_frame, cmd, compose);
> if (ret)
> return ret;

Hmm, this patch really should be a separate patch on top of the media
staging branch: it is wrong there as well, except you don't get a build
warning. Other changes in this patch series caused this warning to appear,
but the actual bug is already present in the current staging code.

Regards,

Hans