88b9de105c
mac80211: do not call rate control .tx_status before .rate_init mwifiex: clear previous security setting during association ath9k: stop on rates with idx -1 in ath9k rate control's .tx_status ath9k_hw: prevent writes to const data on AR9160 rt2x00: fix a possible NULL pointer dereference iwlwifi: fix key removal mac80211: zero initialize count field in ieee80211_tx_rate mac80211: Fix a warning on changing to monitor mode from STA brcm80211: smac: fix endless retry of A-MPDU transmissions brcm80211: smac: only print block-ack timeout message at trace level
73 lines
2.9 KiB
Diff
73 lines
2.9 KiB
Diff
From 0dee00686da88cc32753e02e4e8efdd9e326e4d2 Mon Sep 17 00:00:00 2001
|
|
From: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
|
|
Date: Mon, 20 Feb 2012 14:44:01 +0530
|
|
Subject: [PATCH] mac80211: Fix a warning on changing to monitor mode from STA
|
|
|
|
nothing needs to be done for monitor/AP_VLAN mode on calling
|
|
ieee80211_bss_info_change_notify -> drv_bss_info_changed with the change
|
|
flag 'BSS_CHANGED_IDLE'. 'wl1271' seems to use BSS_CHANGED_IDLE only for
|
|
STA and IBSS mode. further the non-idle state of the monitor mode is
|
|
taken care by the 'count' variable which counts non-idle interfaces.
|
|
ieee80211_idle_off(local, "in use") will be called.
|
|
this fixes the following WARNING when we have initially STA mode
|
|
(network manager running) and not associated, and change it to monitor
|
|
mode with network manager disabled and bringing up the monitor mode.
|
|
this changes the idle state from 'true' (STA unassociated) to 'false'
|
|
(MONITOR mode)
|
|
exposed by the commit 405385f8ce7a2ed8f82e216d88b5282142e1288b
|
|
"mac80211: set bss_conf.idle when vif is connected"
|
|
|
|
WARNING: net/mac80211/main.c:212
|
|
ieee80211_bss_info_change_notify+0x1cf/0x330 [mac80211]()
|
|
Hardware name: 64756D6
|
|
Pid: 3835, comm: ifconfig Tainted: G O
|
|
3.3.0-rc3-wl #9
|
|
Call Trace:
|
|
[<c0133b02>] warn_slowpath_common+0x72/0xa0
|
|
[<fc8e8c3f>] ?
|
|
ieee80211_bss_info_change_notify+0x1cf/0x330 [mac80211]
|
|
[<fc8e8c3f>] ?
|
|
ieee80211_bss_info_change_notify+0x1cf/0x330 [mac80211]
|
|
[<c0133b52>] warn_slowpath_null+0x22/0x30
|
|
[<fc8e8c3f>]
|
|
ieee80211_bss_info_change_notify+0x1cf/0x330 [mac80211]
|
|
[<fc8f9de3>] __ieee80211_recalc_idle+0x113/0x430
|
|
[mac80211]
|
|
[<fc8fabc6>] ieee80211_do_open+0x156/0x7e0 [mac80211]
|
|
[<fc8f8a25>] ?
|
|
ieee80211_check_concurrent_iface+0x25/0x180 [mac80211]
|
|
[<c015dd9f>] ? raw_notifier_call_chain+0x1f/0x30
|
|
[<fc8fb290>] ieee80211_open+0x40/0x80 [mac80211]
|
|
[<c05894f6>] __dev_open+0x96/0xe0
|
|
[<c068fba5>] ? _raw_spin_unlock_bh+0x35/0x40
|
|
[<c05881d9>] __dev_change_flags+0x109/0x170
|
|
[<c0589423>] dev_change_flags+0x23/0x60
|
|
[<c05f3770>] devinet_ioctl+0x6a0/0x770
|
|
|
|
ieee80211 phy0: device no longer idle - in use
|
|
|
|
Cc: Eliad Peller <eliad@wizery.com>
|
|
Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
|
|
Signed-off-by: John W. Linville <linville@tuxdriver.com>
|
|
---
|
|
net/mac80211/iface.c | 3 +++
|
|
1 files changed, 3 insertions(+), 0 deletions(-)
|
|
|
|
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c
|
|
index 01a21c2..8e2137b 100644
|
|
--- a/net/mac80211/iface.c
|
|
+++ b/net/mac80211/iface.c
|
|
@@ -1332,6 +1332,9 @@ u32 __ieee80211_recalc_idle(struct ieee80211_local *local)
|
|
hw_roc = true;
|
|
|
|
list_for_each_entry(sdata, &local->interfaces, list) {
|
|
+ if (sdata->vif.type == NL80211_IFTYPE_MONITOR ||
|
|
+ sdata->vif.type == NL80211_IFTYPE_AP_VLAN)
|
|
+ continue;
|
|
if (sdata->old_idle == sdata->vif.bss_conf.idle)
|
|
continue;
|
|
if (!ieee80211_sdata_running(sdata))
|
|
--
|
|
1.7.4.4
|
|
|