diff options
author | Nishka Dasgupta <nishkadg.linux@gmail.com> | 2019-08-15 11:52:18 +0530 |
---|---|---|
committer | Rob Herring <robh@kernel.org> | 2019-08-27 11:21:54 -0500 |
commit | a7bcae591f595a727feea9a5a389756015579072 (patch) | |
tree | 1d7325f4c59ad8108f01386d658ba11cee89d824 /drivers/of/unittest.c | |
parent | 476646e09668cc85138adec726a94f76ca83740d (diff) | |
download | linux-a7bcae591f595a727feea9a5a389756015579072.tar.bz2 |
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 'drivers/of/unittest.c')
-rw-r--r-- | drivers/of/unittest.c | 4 |
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; /* |