summaryrefslogtreecommitdiffstats
path: root/drivers/of/unittest.c
diff options
context:
space:
mode:
authorNishka Dasgupta <nishkadg.linux@gmail.com>2019-08-15 08:22:18 +0200
committerRob Herring <robh@kernel.org>2019-08-27 18:21:54 +0200
commita7bcae591f595a727feea9a5a389756015579072 (patch)
tree1d7325f4c59ad8108f01386d658ba11cee89d824 /drivers/of/unittest.c
parentdt-bindings: smiapp: Align documentation with current practices (diff)
downloadlinux-a7bcae591f595a727feea9a5a389756015579072.tar.xz
linux-a7bcae591f595a727feea9a5a389756015579072.zip
of: unittest: Add of_node_put() before return
The local variable np in function of_unittest_platform_populate takes the return value of of_find_node_by_path, which gets a node but does not put it. If np is not put before return it may cause a memory leak. Hence put np before a return statement. Issue found with Coccinelle. Signed-off-by: Nishka Dasgupta <nishkadg.linux@gmail.com> Signed-off-by: Rob Herring <robh@kernel.org>
Diffstat (limited to '')
-rw-r--r--drivers/of/unittest.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/of/unittest.c b/drivers/of/unittest.c
index e6b175370f2e..480a21e2ed39 100644
--- a/drivers/of/unittest.c
+++ b/drivers/of/unittest.c
@@ -1044,8 +1044,10 @@ static void __init of_unittest_platform_populate(void)
test_bus = platform_device_register_full(&test_bus_info);
rc = PTR_ERR_OR_ZERO(test_bus);
unittest(!rc, "testbus registration failed; rc=%i\n", rc);
- if (rc)
+ if (rc) {
+ of_node_put(np);
return;
+ }
test_bus->dev.of_node = np;
/*