mac80211: fix wrong Rx A-MPDU control via debugfs
authorRon Rindjunsky <ron.rindjunsky@intel.com>
Tue, 25 Mar 2008 23:33:39 +0000 (16:33 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 27 Mar 2008 20:03:17 +0000 (16:03 -0400)
This patch eliminate the use of buf_size as a trigger in favor of a new
flag to control Rx A-MPDU sessions through debugfs

Signed-off-by: Ron Rindjunsky <ron.rindjunsky@intel.com>
Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/debugfs_sta.c
net/mac80211/sta_info.h

index fc2c1a192ed2c7e016b840bf56eb5d0cc92ee2a9..62354de0199fa181249c40af24b0973b79268e99 100644 (file)
@@ -230,11 +230,13 @@ static ssize_t sta_agg_status_write(struct file *file,
                        strcpy(state, "off ");
                        ieee80211_sta_stop_rx_ba_session(dev, da, tid_num, 0,
                                        WLAN_REASON_QSTA_REQUIRE_SETUP);
-                       sta->ampdu_mlme.tid_rx[tid_num].buf_size = 0xFF;
+                       sta->ampdu_mlme.tid_rx[tid_num].state |=
+                                       HT_AGG_STATE_DEBUGFS_CTL;
                        tid_static_rx[tid_num] = 0;
                } else {
                        strcpy(state, "on ");
-                       sta->ampdu_mlme.tid_rx[tid_num].buf_size = 0x00;
+                       sta->ampdu_mlme.tid_rx[tid_num].state &=
+                                       ~HT_AGG_STATE_DEBUGFS_CTL;
                        tid_static_rx[tid_num] = 1;
                }
                printk(KERN_DEBUG "debugfs - try switching tid %u %s\n",
index f166c8039f2bf745562bc8a11a2f229f8994c195..5d6b43652e180d24e12b1ed0a2819b244fb8c0e7 100644 (file)
@@ -63,6 +63,7 @@ enum ieee80211_sta_info_flags {
 #define HT_AGG_STATE_OPERATIONAL       (HT_ADDBA_REQUESTED_MSK |       \
                                         HT_ADDBA_DRV_READY_MSK |       \
                                         HT_ADDBA_RECEIVED_MSK)
+#define HT_AGG_STATE_DEBUGFS_CTL       BIT(7)
 
 /**
  * struct tid_ampdu_tx - TID aggregation information (Tx).