[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180926191704.16322-14-johnfwhitmore@gmail.com>
Date: Wed, 26 Sep 2018 20:17:04 +0100
From: John Whitmore <johnfwhitmore@...il.com>
To: linux-kernel@...r.kernel.org
Cc: devel@...verdev.osuosl.org, gregkh@...uxfoundation.org,
John Whitmore <johnfwhitmore@...il.com>
Subject: [PATCH 13/13] staging:rtl8192u: Remove potential memory leak
Add call to ieee80211_networks_free() to avoid potential memory
leak if allocation of pHTInfo fails.
If the third allocation fails only the first successful allocation
is freed, not the second.
Signed-off-by: John Whitmore <johnfwhitmore@...il.com>
---
drivers/staging/rtl8192u/ieee80211/ieee80211_module.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/drivers/staging/rtl8192u/ieee80211/ieee80211_module.c b/drivers/staging/rtl8192u/ieee80211/ieee80211_module.c
index 90a097f2cd4e..aada077ced0f 100644
--- a/drivers/staging/rtl8192u/ieee80211/ieee80211_module.c
+++ b/drivers/staging/rtl8192u/ieee80211/ieee80211_module.c
@@ -159,6 +159,11 @@ struct net_device *alloc_ieee80211(int sizeof_priv)
ieee->pHTInfo = kzalloc(sizeof(RT_HIGH_THROUGHPUT), GFP_KERNEL);
if (ieee->pHTInfo == NULL) {
IEEE80211_DEBUG(IEEE80211_DL_ERR, "can't alloc memory for HTInfo\n");
+
+ /* By this point in code ieee80211_networks_allocate() has been
+ * successfully called so the memory allocated should be freed
+ */
+ ieee80211_networks_free(ieee);
goto failed;
}
HTUpdateDefaultSetting(ieee);
--
2.18.0
Powered by blists - more mailing lists