Observed crash when module is unloaded if CONFIG_RSI_DEBUGSFS is not set.
Fix: Debugfs entry removal moved inside CONFIG_RSI_DEBUGSFS flag in
function rsi_mac80211_detach()
Memory leak found and fixed for below structures in function rsi_mac80211_detach()
* channel list for each supported band
* rsi debugfs info
Signed-off-by: Prameela Rani Garnepudi <[email protected]>
---
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..58779c0 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 < NUM_NL80211_BANDS; 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
Prameela Rani Garnepudi <[email protected]> writes:
> Observed crash when module is unloaded if CONFIG_RSI_DEBUGSFS is not set.
> Fix: Debugfs entry removal moved inside CONFIG_RSI_DEBUGSFS flag in
> function rsi_mac80211_detach()
> Memory leak found and fixed for below structures in function rsi_mac80211_detach()
> * channel list for each supported band
> * rsi debugfs info
>
> Signed-off-by: Prameela Rani Garnepudi <[email protected]>
BTW, I don't see patch 2 in patchwork nor in linux-wireless, but I do
see it on my inbox. Either it's slow or there was a problem with the
delivery.
--
Kalle Valo
Kalle Valo <[email protected]> writes:
> Prameela Rani Garnepudi <[email protected]> writes:
>
>> Observed crash when module is unloaded if CONFIG_RSI_DEBUGSFS is not set.
>> Fix: Debugfs entry removal moved inside CONFIG_RSI_DEBUGSFS flag in
>> function rsi_mac80211_detach()
>> Memory leak found and fixed for below structures in function rsi_mac80211_detach()
>> * channel list for each supported band
>> * rsi debugfs info
>>
>> Signed-off-by: Prameela Rani Garnepudi <[email protected]>
>
> BTW, I don't see patch 2 in patchwork nor in linux-wireless, but I do
> see it on my inbox. Either it's slow or there was a problem with the
> delivery.
It was just slow, I see it now:
https://patchwork.kernel.org/patch/9374987/
--
Kalle Valo
Prameela Rani Garnepudi <[email protected]> wrote:
> Observed crash when module is unloaded if CONFIG_RSI_DEBUGSFS is not set.
> Fix: Debugfs entry removal moved inside CONFIG_RSI_DEBUGSFS flag in
> function rsi_mac80211_detach()
> Memory leak found and fixed for below structures in function rsi_mac80211_detach()
> * channel list for each supported band
> * rsi debugfs info
>
> Signed-off-by: Prameela Rani Garnepudi <[email protected]>
2 patches applied to wireless-drivers-next.git, thanks.
b022539db49a rsi: Fix memory leak in module unload
77364aae88d7 rsi: Host to device command frame vap_capabilites modified with new field vap status
--
https://patchwork.kernel.org/patch/9374919/
Documentation about submitting wireless patches and checking status
from patchwork:
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches