of: unittest: kmemleak in of_unittest_platform_populate()
commit 216830d2413cc61be3f76bc02ffd905e47d2439e upstream.
kmemleak reports several memory leaks from devicetree unittest.
This is the fix for problem 2 of 5.
of_unittest_platform_populate() left an elevated reference count for
grandchild nodes (which are platform devices). Fix the platform
device reference counts so that the memory will be freed.
Fixes: fb2caa50fb
("of/selftest: add testcase for nodes with same name and address")
Reported-by: Erhard F. <erhard_f@mailbox.org>
Signed-off-by: Frank Rowand <frank.rowand@sony.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
3352cc2f7b
commit
842f7bbaf4
1 changed files with 5 additions and 2 deletions
|
@ -1059,10 +1059,13 @@ static void __init of_unittest_platform_populate(void)
|
|||
|
||||
of_platform_populate(np, match, NULL, &test_bus->dev);
|
||||
for_each_child_of_node(np, child) {
|
||||
for_each_child_of_node(child, grandchild)
|
||||
unittest(of_find_device_by_node(grandchild),
|
||||
for_each_child_of_node(child, grandchild) {
|
||||
pdev = of_find_device_by_node(grandchild);
|
||||
unittest(pdev,
|
||||
"Could not create device for node '%pOFn'\n",
|
||||
grandchild);
|
||||
of_dev_put(pdev);
|
||||
}
|
||||
}
|
||||
|
||||
of_platform_depopulate(&test_bus->dev);
|
||||
|
|
Loading…
Reference in a new issue