dpaa2-switch: Fix device reference count leak in MAC endpoint handling
commit 96e056ff upstream. The fsl_mc_get_endpoint() function uses device_find_child() for localization, which implicitly calls get_device() to increment the device's reference count before returning the pointer. However, the caller dpaa2_switch_port_connect_mac() fails to properly release this reference in multiple scenarios. We should call put_device() to decrement reference count properly. As comment of device_find_child() says, 'NOTE: you will need to drop the reference with put_device() after use'. Found by code review. Cc: stable@vger.kernel.org Fixes: 84cba729 ("dpaa2-switch: integrate the MAC endpoint support") Signed-off-by:Ma Ke <make24@iscas.ac.cn> Tested-by:
Ioana Ciornei <ioana.ciornei@nxp.com> Reviewed-by:
Ioana Ciornei <ioana.ciornei@nxp.com> Reviewed-by:
Simon Horman <horms@kernel.org> Link: https://patch.msgid.link/20250717022309.3339976-3-make24@iscas.ac.cn Signed-off-by:
Jakub Kicinski <kuba@kernel.org> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Loading