[PATCH] MFD: dln2: fix memory leak in dln2_probe

Qiang Ning
2023-03-30T03:14:30Z

When dln2_setup_rx_urbs() in dln2_probe() fails, error out_free
forgets to call usb_put_dev to decrease the refcount of
dln2->usb_dev.

Fix this by adding usb_put_dev() in the error handling code
of dln2_probe().

Signed-off-by: Qiang Ning <qning0106@126.com>
---
drivers/mfd/dln2.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/mfd/dln2.c b/drivers/mfd/dln2.c
index 6cd0b0c752d6..c3149729cec2 100644
--- a/drivers/mfd/dln2.c
+++ b/drivers/mfd/dln2.c
@@ -827,6 +827,7 @@ static int dln2_probe(struct usb_interface *interface,
dln2_stop_rx_urbs(dln2);

out_free:
+ usb_put_dev(dln2->usb_dev);
dln2_free(dln2);

return ret;
--
2.25.1