[PATCH v2] drm: rcar-du: Fix memory leak in rcar_du_vsps_init()
Laurent Pinchart
laurent.pinchart at ideasonboard.com
Mon Dec 18 10:39:03 UTC 2023
Hi Biju,
Thank you for the patch.
On Thu, Nov 16, 2023 at 12:24:24PM +0000, Biju Das wrote:
> The rcar_du_vsps_init() doesn't free the np allocated by
> of_parse_phandle_with_fixed_args() for the non-error case.
>
> Fix memory leak for the non-error case.
>
> While at it, replace the label 'error'->'done' as it applies to non-error
> case as well and update the error check condition for rcar_du_vsp_init()
> to avoid breakage in future, if it returns positive value.
>
> Fixes: 3e81374e2014 ("drm: rcar-du: Support multiple sources from the same VSP")
> Signed-off-by: Biju Das <biju.das.jz at bp.renesas.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart+renesas at ideasonboard.com>
> ---
> v1->v2:
> * Replaced the label 'error'->'done' as it applies to non-error case as
> well.
> * Update the error check condition for rcar_du_vsp_init() to avoid
> breakage in future, if it returns positive value.
> ---
> drivers/gpu/drm/renesas/rcar-du/rcar_du_kms.c | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/renesas/rcar-du/rcar_du_kms.c b/drivers/gpu/drm/renesas/rcar-du/rcar_du_kms.c
> index 70d8ad065bfa..4c8fe83dd610 100644
> --- a/drivers/gpu/drm/renesas/rcar-du/rcar_du_kms.c
> +++ b/drivers/gpu/drm/renesas/rcar-du/rcar_du_kms.c
> @@ -705,7 +705,7 @@ static int rcar_du_vsps_init(struct rcar_du_device *rcdu)
> ret = of_parse_phandle_with_fixed_args(np, vsps_prop_name,
> cells, i, &args);
> if (ret < 0)
> - goto error;
> + goto done;
>
> /*
> * Add the VSP to the list or update the corresponding existing
> @@ -743,13 +743,11 @@ static int rcar_du_vsps_init(struct rcar_du_device *rcdu)
> vsp->dev = rcdu;
>
> ret = rcar_du_vsp_init(vsp, vsps[i].np, vsps[i].crtcs_mask);
> - if (ret < 0)
> - goto error;
> + if (ret)
> + goto done;
> }
>
> - return 0;
> -
> -error:
> +done:
> for (i = 0; i < ARRAY_SIZE(vsps); ++i)
> of_node_put(vsps[i].np);
>
--
Regards,
Laurent Pinchart
More information about the dri-devel
mailing list