Description
In the Linux kernel, the following vulnerability has been resolved: 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.
Product status
a1a277eb76b3507df7c41774048a644aa4dfd096 (git) before 191bfd5710d6a7f48ba4315d8d3e908dcc15243c
a1a277eb76b3507df7c41774048a644aa4dfd096 (git) before 3e3b28bb0b6ddc521a4fdd1c1ba0d35017a0796b
a1a277eb76b3507df7c41774048a644aa4dfd096 (git) before 456a60d06c09a92680dc35fabca68024badcc28e
a1a277eb76b3507df7c41774048a644aa4dfd096 (git) before 99cc7352156c65201c675f750e0e77c4c73d93f5
a1a277eb76b3507df7c41774048a644aa4dfd096 (git) before 7814b1431848854b56717086e2b61bea3c59753d
a1a277eb76b3507df7c41774048a644aa4dfd096 (git) before e2e367e56bacb93ce5ac73f0b3297d5c83d38dd4
a1a277eb76b3507df7c41774048a644aa4dfd096 (git) before 5b9e84d27e310f22c4ba45fedbc4f5baf43dd823
a1a277eb76b3507df7c41774048a644aa4dfd096 (git) before 353353309b0f7afa407df29e455f9d15b5acc296
3.10
Any version before 3.10
5.10.252 (semver)
5.15.202 (semver)
6.1.165 (semver)
6.6.128 (semver)
6.12.75 (semver)
6.18.14 (semver)
6.19.4 (semver)
7.0 (original_commit_for_fix)
References
git.kernel.org/...c/191bfd5710d6a7f48ba4315d8d3e908dcc15243c
git.kernel.org/...c/3e3b28bb0b6ddc521a4fdd1c1ba0d35017a0796b
git.kernel.org/...c/456a60d06c09a92680dc35fabca68024badcc28e
git.kernel.org/...c/99cc7352156c65201c675f750e0e77c4c73d93f5
git.kernel.org/...c/7814b1431848854b56717086e2b61bea3c59753d
git.kernel.org/...c/e2e367e56bacb93ce5ac73f0b3297d5c83d38dd4
git.kernel.org/...c/5b9e84d27e310f22c4ba45fedbc4f5baf43dd823
git.kernel.org/...c/353353309b0f7afa407df29e455f9d15b5acc296