Re: [PATCH v2] media: platform: mtk-mdp3: Fix return value check in mdp_probe()

From: Hans Verkuil
Date: Fri Dec 02 2022 - 03:43:12 EST


Hi Qiheng,

Can you rebase on top of the latest staging tree? (https://git.linuxtv.org/media_stage.git/)

This patch no longer applies.

Thanks!

Hans

On 01/12/2022 03:35, Qiheng Lin wrote:
> In case of error, the function mtk_mutex_get()
> returns ERR_PTR() and never returns NULL. The NULL test in the
> return value check should be replaced with IS_ERR().
> And also fix the err_return case.
>
> Fixes: 61890ccaefaf ("media: platform: mtk-mdp3: add MediaTek MDP3 driver")
> Signed-off-by: Qiheng Lin <linqiheng@xxxxxxxxxx>
> ---
>
> v2:
> - Add fix the err_return case.
>
> drivers/media/platform/mediatek/mdp3/mtk-mdp3-core.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/media/platform/mediatek/mdp3/mtk-mdp3-core.c b/drivers/media/platform/mediatek/mdp3/mtk-mdp3-core.c
> index c413e59d4286..48f3e32fe54e 100644
> --- a/drivers/media/platform/mediatek/mdp3/mtk-mdp3-core.c
> +++ b/drivers/media/platform/mediatek/mdp3/mtk-mdp3-core.c
> @@ -207,8 +207,8 @@ static int mdp_probe(struct platform_device *pdev)
> }
> for (i = 0; i < MDP_PIPE_MAX; i++) {
> mdp->mdp_mutex[i] = mtk_mutex_get(&mm_pdev->dev);
> - if (!mdp->mdp_mutex[i]) {
> - ret = -ENODEV;
> + if (IS_ERR(mdp->mdp_mutex[i])) {
> + ret = PTR_ERR(mdp->mdp_mutex[i]);
> goto err_return;
> }
> }
> @@ -288,9 +288,10 @@ static int mdp_probe(struct platform_device *pdev)
> err_deinit_comp:
> mdp_comp_destroy(mdp);
> err_return:
> - for (i = 0; i < MDP_PIPE_MAX; i++)
> - if (mdp)
> - mtk_mutex_put(mdp->mdp_mutex[i]);
> + if (mdp)
> + for (i = 0; i < MDP_PIPE_MAX; i++)
> + if (!IS_ERR_OR_NULL(mdp->mdp_mutex[i]))
> + mtk_mutex_put(mdp->mdp_mutex[i]);
> kfree(mdp);
> dev_dbg(dev, "Errno %d\n", ret);
> return ret;