[RESEND Patch 2/4] gpu: drm: omapdrm: dss-of: add missing of_node_put after calling of_parse_phandle

Tomi Valkeinen tomi.valkeinen at ti.com
Thu Aug 11 09:21:02 UTC 2016


Hi,

On 15/07/16 06:17, Peter Chen wrote:
> of_node_put needs to be called when the device node which is got
> from of_parse_phandle has finished using.
> 
> Cc: Tomi Valkeinen <tomi.valkeinen at ti.com>
> Signed-off-by: Peter Chen <peter.chen at nxp.com>
> ---
>  drivers/gpu/drm/omapdrm/dss/dss-of.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/omapdrm/dss/dss-of.c b/drivers/gpu/drm/omapdrm/dss/dss-of.c
> index dfd4e96..e256d87 100644
> --- a/drivers/gpu/drm/omapdrm/dss/dss-of.c
> +++ b/drivers/gpu/drm/omapdrm/dss/dss-of.c
> @@ -125,15 +125,16 @@ u32 dss_of_port_get_port_number(struct device_node *port)
>  
>  static struct device_node *omapdss_of_get_remote_port(const struct device_node *node)
>  {
> -	struct device_node *np;
> +	struct device_node *np, *np_parent;
>  
>  	np = of_parse_phandle(node, "remote-endpoint", 0);
>  	if (!np)
>  		return NULL;
>  
> -	np = of_get_next_parent(np);
> +	np_parent = of_get_next_parent(np);
> +	of_node_put(np);
>  
> -	return np;
> +	return np_parent;
>  }

The doc for of_get_next_parent() says:

"This is like of_get_parent() except that it drops the
refcount on the passed node, making it suitable for iterating".

So this patch breaks omapdrm.

 Tomi

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20160811/992cd2b8/attachment.sig>


More information about the dri-devel mailing list