|
@@ -1278,7 +1278,7 @@ static void ieee80211_sta_process_addba_request(struct net_device *dev,
|
|
ret = local->ops->ampdu_action(hw, IEEE80211_AMPDU_RX_START,
|
|
ret = local->ops->ampdu_action(hw, IEEE80211_AMPDU_RX_START,
|
|
sta->addr, tid, &start_seq_num);
|
|
sta->addr, tid, &start_seq_num);
|
|
#ifdef CONFIG_MAC80211_HT_DEBUG
|
|
#ifdef CONFIG_MAC80211_HT_DEBUG
|
|
- printk(KERN_DEBUG "Rx A-MPDU on tid %d result %d", tid, ret);
|
|
|
|
|
|
+ printk(KERN_DEBUG "Rx A-MPDU request on tid %d result %d\n", tid, ret);
|
|
#endif /* CONFIG_MAC80211_HT_DEBUG */
|
|
#endif /* CONFIG_MAC80211_HT_DEBUG */
|
|
|
|
|
|
if (ret) {
|
|
if (ret) {
|
|
@@ -1433,6 +1433,7 @@ void ieee80211_sta_stop_rx_ba_session(struct net_device *dev, u8 *ra, u16 tid,
|
|
struct ieee80211_hw *hw = &local->hw;
|
|
struct ieee80211_hw *hw = &local->hw;
|
|
struct sta_info *sta;
|
|
struct sta_info *sta;
|
|
int ret, i;
|
|
int ret, i;
|
|
|
|
+ DECLARE_MAC_BUF(mac);
|
|
|
|
|
|
rcu_read_lock();
|
|
rcu_read_lock();
|
|
|
|
|
|
@@ -1453,12 +1454,17 @@ void ieee80211_sta_stop_rx_ba_session(struct net_device *dev, u8 *ra, u16 tid,
|
|
sta->ampdu_mlme.tid_state_rx[tid] =
|
|
sta->ampdu_mlme.tid_state_rx[tid] =
|
|
HT_AGG_STATE_REQ_STOP_BA_MSK |
|
|
HT_AGG_STATE_REQ_STOP_BA_MSK |
|
|
(initiator << HT_AGG_STATE_INITIATOR_SHIFT);
|
|
(initiator << HT_AGG_STATE_INITIATOR_SHIFT);
|
|
- spin_unlock_bh(&sta->ampdu_mlme.ampdu_rx);
|
|
|
|
|
|
+ spin_unlock_bh(&sta->ampdu_mlme.ampdu_rx);
|
|
|
|
|
|
/* stop HW Rx aggregation. ampdu_action existence
|
|
/* stop HW Rx aggregation. ampdu_action existence
|
|
* already verified in session init so we add the BUG_ON */
|
|
* already verified in session init so we add the BUG_ON */
|
|
BUG_ON(!local->ops->ampdu_action);
|
|
BUG_ON(!local->ops->ampdu_action);
|
|
|
|
|
|
|
|
+#ifdef CONFIG_MAC80211_HT_DEBUG
|
|
|
|
+ printk(KERN_DEBUG "Rx BA session stop requested for %s tid %u\n",
|
|
|
|
+ print_mac(mac, ra), tid);
|
|
|
|
+#endif /* CONFIG_MAC80211_HT_DEBUG */
|
|
|
|
+
|
|
ret = local->ops->ampdu_action(hw, IEEE80211_AMPDU_RX_STOP,
|
|
ret = local->ops->ampdu_action(hw, IEEE80211_AMPDU_RX_STOP,
|
|
ra, tid, NULL);
|
|
ra, tid, NULL);
|
|
if (ret)
|
|
if (ret)
|