staging: media: imx: fix OF node leak in imx_media_add_of_subdevs()
authorJoe Hattori <joe@pf.is.s.u-tokyo.ac.jp>
Tue, 24 Dec 2024 03:54:11 +0000 (12:54 +0900)
committerHans Verkuil <hverkuil@xs4all.nl>
Tue, 7 Jan 2025 11:21:40 +0000 (12:21 +0100)
commit094f5c315f756b19198e6c401aa821ac0e868750
tree85000762728155ab7e7b6ccea17f5174d8b99e23
parent9f2ce86a2c271b0ad4aa0af4a983fcadb1594c38
staging: media: imx: fix OF node leak in imx_media_add_of_subdevs()

imx_media_add_of_subdevs() calls of_parse_phandle() and passes the
obtained node to imx_media_of_add_csi(). The passed node is used in
v4l2_async_nf_add_fwnode(), which increments the refcount of the node.
Therefore, while the current implementation only releases the node when
imx_media_of_add_csi() fails, but should always release it. Call
of_node_put() right after imx_media_of_add_csi().

Fixes: dee747f88167 ("media: imx: Don't register IPU subdevs/links if CSI port missing")
Signed-off-by: Joe Hattori <joe@pf.is.s.u-tokyo.ac.jp>
Reviewed-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
drivers/staging/media/imx/imx-media-of.c