Linux wireless drivers development
 help / color / mirror / Atom feed
* [RFC] mac80211: reset connection poll on receiving unicast data frames
@ 2011-01-18 13:44 Rajkumar Manoharan
  2011-01-18 13:51 ` Johannes Berg
  0 siblings, 1 reply; 3+ messages in thread
From: Rajkumar Manoharan @ 2011-01-18 13:44 UTC (permalink / raw)
  To: linux-wireless; +Cc: Rajkumar Manoharan

In noisy channel conditions, some APs do not reply to probe
requests which results in STA disconnection. It is perfectly
fine to reset the connection polling if unicast frames are
received from that AP properly.

The reason behind to reset connection poll on unicast data
frames alone is that to preserve the PS recalculation on receiving
probe response.

This disconnection issue was reported with some buggy APs in noisy
environment, with the devices that does not support
IEEE80211_HW_REPORTS_TX_ACK_STATUS and running heavy downlink
unicast traffic from DS to STA. The probe response that was not
seen for the request sent followed by scan completion.

Signed-off-by: Rajkumar Manoharan <rmanoharan@atheros.com>
---
 net/mac80211/mlme.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 45fbb9e..03d6cfc 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -141,6 +141,7 @@ void ieee80211_sta_reset_conn_monitor(struct ieee80211_sub_if_data *sdata)
 		  round_jiffies_up(jiffies + IEEE80211_CONNECTION_IDLE_TIME));
 
 	ifmgd->probe_send_count = 0;
+	ifmgd->flags &= ~IEEE80211_STA_CONNECTION_POLL;
 }
 
 static int ecw2cw(int ecw)
@@ -1033,7 +1034,8 @@ void ieee80211_sta_rx_notify(struct ieee80211_sub_if_data *sdata,
 	if (is_multicast_ether_addr(hdr->addr1))
 		return;
 
-	ieee80211_sta_reset_conn_monitor(sdata);
+	if (ieee80211_is_data(hdr->frame_control))
+		ieee80211_sta_reset_conn_monitor(sdata);
 }
 
 static void ieee80211_reset_ap_probe(struct ieee80211_sub_if_data *sdata)
-- 
1.7.3.5


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-01-18 14:10 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-01-18 13:44 [RFC] mac80211: reset connection poll on receiving unicast data frames Rajkumar Manoharan
2011-01-18 13:51 ` Johannes Berg
2011-01-18 14:10   ` Rajkumar Manoharan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox