RE: [PATCH v2] wifi: rtw88: fix memory leak in rtw_usb_probe()

From: Ping-Ke Shih
Date: Wed Mar 08 2023 - 22:56:26 EST




> -----Original Message-----
> From: Dongliang Mu <dzm91@xxxxxxxxxxx>
> Sent: Thursday, March 9, 2023 11:53 AM
> To: Ping-Ke Shih <pkshih@xxxxxxxxxxx>
> Cc: Yan-Hsuan Chuang <tony0620emma@xxxxxxxxx>; Kalle Valo <kvalo@xxxxxxxxxx>; David S. Miller
> <davem@xxxxxxxxxxxxx>; Eric Dumazet <edumazet@xxxxxxxxxx>; Jakub Kicinski <kuba@xxxxxxxxxx>; Paolo Abeni
> <pabeni@xxxxxxxxxx>; linux-wireless@xxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx;
> linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH v2] wifi: rtw88: fix memory leak in rtw_usb_probe()
>
> > On Mar 9, 2023, at 11:47, Ping-Ke Shih <pkshih@xxxxxxxxxxx> wrote:
> >
> >
> >
> >> -----Original Message-----
> >> From: Dongliang Mu <dzm91@xxxxxxxxxxx>
> >> Sent: Thursday, March 9, 2023 10:17 AM
> >> To: Yan-Hsuan Chuang <tony0620emma@xxxxxxxxx>; Kalle Valo <kvalo@xxxxxxxxxx>; David S. Miller
> >> <davem@xxxxxxxxxxxxx>; Eric Dumazet <edumazet@xxxxxxxxxx>; Jakub Kicinski <kuba@xxxxxxxxxx>; Paolo
> Abeni
> >> <pabeni@xxxxxxxxxx>
> >> Cc: Dongliang Mu <dzm91@xxxxxxxxxxx>; linux-wireless@xxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx;
> >> linux-kernel@xxxxxxxxxxxxxxx
> >> Subject: [PATCH v2] wifi: rtw88: fix memory leak in rtw_usb_probe()
> >>
> >> drivers/net/wireless/realtek/rtw88/usb.c:876 rtw_usb_probe()
> >> warn: 'hw' from ieee80211_alloc_hw() not released on lines: 811
> >
> > Can I know which tool can detect this? It would be good to mention the tool
> > in commit message.
> >
>
> Oh, Smatch, I forget to mention it.

Thanks. It seems like my smatch is too old.

>
> >>
> >> Fix this by modifying return to a goto statement.
> >>
> >> Signed-off-by: Dongliang Mu <dzm91@xxxxxxxxxxx>
> >> ---
> >> v1->v2: modify the commit title
> >> drivers/net/wireless/realtek/rtw88/usb.c | 2 +-
> >> 1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/net/wireless/realtek/rtw88/usb.c b/drivers/net/wireless/realtek/rtw88/usb.c
> >> index 2a8336b1847a..68e1b782d199 100644
> >> --- a/drivers/net/wireless/realtek/rtw88/usb.c
> >> +++ b/drivers/net/wireless/realtek/rtw88/usb.c
> >> @@ -808,7 +808,7 @@ int rtw_usb_probe(struct usb_interface *intf, const struct usb_device_id *id)
> >>
> >> ret = rtw_usb_alloc_rx_bufs(rtwusb);
> >> if (ret)
> >> - return ret;
> >> + goto err_release_hw;
> >>
> >> ret = rtw_core_init(rtwdev);
> >> if (ret)
> >> --
> >> 2.39.2
>
>
> ------Please consider the environment before printing this e-mail.