diff options
author | Julia Lawall <julia.lawall@lip6.fr> | 2015-11-19 22:32:15 +0100 |
---|---|---|
committer | Brian Norris <computersforpeace@gmail.com> | 2015-11-30 17:54:05 -0800 |
commit | 081976bcc0cbc84f5164fb7aa0e5cf597df6de9e (patch) | |
tree | 3b35aae88d50e0ef1bd590535fc78bc35957eba6 /tools/perf/scripts/python/call-graph-from-postgresql.py | |
parent | 0401669797488feb055521cade69b1d0e81669db (diff) |
mtd: brcmnand: improve memory management
This patch addresses two related memory management issues in the probe
function:
1. for_each_available_child_of_node performs an of_node_get on each
iteration, so a break out of the loop requires an of_node_put.
A simplified version of the semantic patch that fixes this problem is as
follows (http://coccinelle.lip6.fr):
// <smpl>
@@
expression root,e;
local idexpression child;
@@
for_each_available_child_of_node(root, child) {
... when != of_node_put(child)
when != e = child
(
return child;
|
+ of_node_put(child);
? return ...;
)
...
}
// </smpl>
2. The devm_kzalloc'd data is not used if brcmnand_init_cs fails. Free it
immediately, using devm_kfree in this case, instead of waiting for the
remove function.
Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Diffstat (limited to 'tools/perf/scripts/python/call-graph-from-postgresql.py')
0 files changed, 0 insertions, 0 deletions