From patchwork Tue Jan 18 13:44:45 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rajkumar Manoharan X-Patchwork-Id: 486251 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id p0IDjlNn023079 for ; Tue, 18 Jan 2011 13:45:47 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751913Ab1ARNpl (ORCPT ); Tue, 18 Jan 2011 08:45:41 -0500 Received: from mail.atheros.com ([12.19.149.2]:19574 "EHLO mail.atheros.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751532Ab1ARNpk (ORCPT ); Tue, 18 Jan 2011 08:45:40 -0500 Received: from mail.atheros.com ([10.10.20.105]) by sidewinder.atheros.com for ; Tue, 18 Jan 2011 05:45:22 -0800 Received: from mail.atheros.com (10.12.4.12) by SC1EXHC-01.global.atheros.com (10.10.20.111) with Microsoft SMTP Server (TLS) id 8.2.213.0; Tue, 18 Jan 2011 05:45:38 -0800 Received: by mail.atheros.com (sSMTP sendmail emulation); Tue, 18 Jan 2011 19:14:45 +0530 From: Rajkumar Manoharan To: CC: Rajkumar Manoharan Subject: [RFC] mac80211: reset connection poll on receiving unicast data frames Date: Tue, 18 Jan 2011 19:14:45 +0530 Message-ID: <1295358285-9336-1-git-send-email-rmanoharan@atheros.com> X-Mailer: git-send-email 1.7.3.5 MIME-Version: 1.0 Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Tue, 18 Jan 2011 13:45:47 +0000 (UTC) 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)