[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <dc6974f6c9f04ac68d0b10a427b0abd0@realtek.com>
Date: Fri, 14 Nov 2025 07:20:05 +0000
From: Ping-Ke Shih <pkshih@...ltek.com>
To: Abdun Nihaal <nihaal@....iitm.ac.in>,
"linux-wireless@...r.kernel.org"
<linux-wireless@...r.kernel.org>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH] rtl818x_pci: Fix potential memory leaks in
rtl8180_init_rx_ring()
Abdun Nihaal <nihaal@....iitm.ac.in> wrote:
> In rtl8180_init_rx_ring(), memory is allocated for skb packets and DMA
> allocations in a loop. When an allocation fails, the previously
> successful allocations are not freed on exit.
>
> Fixes: f653211197f3 ("Add rtl8180 wireless driver")
> Signed-off-by: Abdun Nihaal <nihaal@....iitm.ac.in>
> ---
> Compile tested only.
>
I'm surprised that people work on this old driver, and how did you find
this flaw?
It seems like rtl8180_free_rx_ring() does all things you are adding, so
just goto err_free_rings?
@@ -1130,7 +1131,7 @@ static int rtl8180_start(struct ieee80211_hw *dev)
ret = rtl8180_init_rx_ring(dev);
if (ret)
- return ret;
+ goto err_free_rings;
for (i = 0; i < (dev->queues + 1); i++)
if ((ret = rtl8180_init_tx_ring(dev, i, 16)))
Powered by blists - more mailing lists