Mailing List Archive

[PATCH] MFD: dln2: fix memory leak in dln2_probe
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
Re: [PATCH] MFD: dln2: fix memory leak in dln2_probe [ In reply to ]
On Thu, 30 Mar 2023, Qiang Ning wrote:

> 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(+)

Applied, thanks

--
Lee Jones [???]