Return-path: Received: from mail-pf0-f195.google.com ([209.85.192.195]:34748 "EHLO mail-pf0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753281AbcIUImY (ORCPT ); Wed, 21 Sep 2016 04:42:24 -0400 Received: by mail-pf0-f195.google.com with SMTP id 21so2107534pfy.1 for ; Wed, 21 Sep 2016 01:42:23 -0700 (PDT) From: Prameela Rani Garnepudi To: linux-wireless@vger.kernel.org Cc: kvalo@codeaurora.org, johannes.berg@intel.com, hofrat@osadl.org, xypron.glpk@gmx.de, prameela.garnepudi@redpinesignals.com, Prameela Rani Garnepudi Subject: [PATCH] rsi: fix memory leak in module unload Date: Wed, 21 Sep 2016 14:09:22 +0530 Message-Id: <1474447162-19956-1-git-send-email-prameela.j04cs@gmail.com> (sfid-20160921_104228_085150_64ABFC18) Sender: linux-wireless-owner@vger.kernel.org List-ID: debugfs entry removal statement moved inside CONFIG_RSI_DEBUGSFS flag added freeing of below structures * channel list for each supported band * rsi debugfs info Signed-off-by: Prameela Rani Garnepudi --- drivers/net/wireless/rsi/rsi_91x_mac80211.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/drivers/net/wireless/rsi/rsi_91x_mac80211.c b/drivers/net/wireless/rsi/rsi_91x_mac80211.c index dbb2389..f4bbf15 100644 --- a/drivers/net/wireless/rsi/rsi_91x_mac80211.c +++ b/drivers/net/wireless/rsi/rsi_91x_mac80211.c @@ -194,6 +194,7 @@ static void rsi_register_rates_channels(struct rsi_hw *adapter, int band) void rsi_mac80211_detach(struct rsi_hw *adapter) { struct ieee80211_hw *hw = adapter->hw; + enum nl80211_band band; if (hw) { ieee80211_stop_queues(hw); @@ -201,7 +202,17 @@ void rsi_mac80211_detach(struct rsi_hw *adapter) ieee80211_free_hw(hw); } + for (band = 0; band < 2; band++) { + struct ieee80211_supported_band *sband = + &adapter->sbands[band]; + + kfree(sband->channels); + } + +#ifdef CONFIG_RSI_DEBUGFS rsi_remove_dbgfs(adapter); + kfree(adapter->dfsentry); +#endif } EXPORT_SYMBOL_GPL(rsi_mac80211_detach); -- 2.4.11