Commit 3533533
pinctrl: single: fix refcount leak in pcs_add_gpio_func()
of_parse_phandle_with_args() returns a device_node pointer with refcount
incremented in gpiospec.np. The loop iterates through all phandles but
never releases the reference, causing a refcount leak on each iteration.
Add of_node_put() calls to release the reference after extracting the
needed arguments and on the error path when devm_kzalloc() fails.
This bug was detected by our static analysis tool and verified by my
code review.
Fixes: a1a277e ("pinctrl: single: create new gpio function range")
Signed-off-by: Wei Li <unsw.weili@gmail.com>
Signed-off-by: Linus Walleij <linusw@kernel.org>1 parent e56aa18 commit 3533533
1 file changed
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1359 | 1359 | | |
1360 | 1360 | | |
1361 | 1361 | | |
| 1362 | + | |
1362 | 1363 | | |
1363 | 1364 | | |
1364 | 1365 | | |
| |||
1368 | 1369 | | |
1369 | 1370 | | |
1370 | 1371 | | |
| 1372 | + | |
1371 | 1373 | | |
1372 | 1374 | | |
1373 | 1375 | | |
| |||
0 commit comments