summaryrefslogtreecommitdiffstats
path: root/drivers/of
diff options
context:
space:
mode:
authorJulia Lawall <Julia.Lawall@lip6.fr>2019-01-13 10:44:50 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-01-22 21:40:33 +0100
commita752c6d6de8038c74b5fabd7b65f3b4f37efcceb (patch)
tree067fd12e35db7a28a49e38b1b0790b4e83ba2d2d /drivers/of
parentac8b9e8e7ddd69f3efa91e8a99312de5729382c0 (diff)
downloadlinux-stable-a752c6d6de8038c74b5fabd7b65f3b4f37efcceb.tar.gz
linux-stable-a752c6d6de8038c74b5fabd7b65f3b4f37efcceb.tar.bz2
linux-stable-a752c6d6de8038c74b5fabd7b65f3b4f37efcceb.zip
OF: properties: add missing of_node_put
commit 28b170e88bc0c7509e6724717c15cb4b5686026e upstream. Add an of_node_put when the result of of_graph_get_remote_port_parent is not available. The semantic match that finds this problem is as follows (http://coccinelle.lip6.fr): // <smpl> @r exists@ local idexpression e; expression x; @@ e = of_graph_get_remote_port_parent(...); ... when != x = e when != true e == NULL when != of_node_put(e) when != of_fwnode_handle(e) ( return e; | *return ...; ) // </smpl> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Cc: stable@vger.kernel.org Signed-off-by: Rob Herring <robh@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/of')
-rw-r--r--drivers/of/property.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/of/property.c b/drivers/of/property.c
index f46828e3b082..43720c2de138 100644
--- a/drivers/of/property.c
+++ b/drivers/of/property.c
@@ -806,6 +806,7 @@ struct device_node *of_graph_get_remote_node(const struct device_node *node,
if (!of_device_is_available(remote)) {
pr_debug("not available for remote node\n");
+ of_node_put(remote);
return NULL;
}