[PATCH 07/12] drm: omapdrm: add missing of_node_put after of_device_is_available

Mukesh Ojha mojha at codeaurora.org
Mon Apr 1 12:58:23 UTC 2019


On 2/23/2019 6:50 PM, Julia Lawall wrote:
> Add an of_node_put when a tested device node is not available.
>
> The semantic patch that fixes this problem is as follows
> (http://coccinelle.lip6.fr):
>
> // <smpl>
> @@
> identifier f;
> local idexpression e;
> expression x;
> @@
>
> e = f(...);
> ... when != of_node_put(e)
>      when != x = e
>      when != e = x
>      when any
> if (<+...of_device_is_available(e)...+>) {
>    ... when != of_node_put(e)
> (
>    return e;
> |
> + of_node_put(e);
>    return ...;
> )
> }
> // </smpl>
>
> Fixes: f2dd36ac9974c ("OMAPDSS: move 'compatible' converter to omapdss driver")
> Signed-off-by: Julia Lawall <Julia.Lawall at lip6.fr>


Reviewed-by: Mukesh Ojha <mojha at codeaurora.org>

Cheers,
-Mukesh

>
> ---
>   drivers/gpu/drm/omapdrm/dss/omapdss-boot-init.c |    4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff -u -p a/drivers/gpu/drm/omapdrm/dss/omapdss-boot-init.c b/drivers/gpu/drm/omapdrm/dss/omapdss-boot-init.c
> --- a/drivers/gpu/drm/omapdrm/dss/omapdss-boot-init.c
> +++ b/drivers/gpu/drm/omapdrm/dss/omapdss-boot-init.c
> @@ -192,8 +192,10 @@ static int __init omapdss_boot_init(void
>   
>   	dss = of_find_matching_node(NULL, omapdss_of_match);
>   
> -	if (dss == NULL || !of_device_is_available(dss))
> +	if (dss == NULL || !of_device_is_available(dss)) {
> +		of_node_put(dss);
>   		return 0;
> +	}
>   
>   	omapdss_walk_device(dss, true);
>   
>


More information about the dri-devel mailing list