Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 90589
b: refs/heads/master
c: 513a102
h: refs/heads/master
i:
  90587: 5fb5e25
v: v3
  • Loading branch information
Ron Rindjunsky authored and John W. Linville committed Apr 8, 2008
1 parent 1f76df0 commit 1b2ba19
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 13 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 8cf6a31e8d30cae1fbec8c782842f00472a4495c
refs/heads/master: 513a1025fd91008316a8e9b4803d1bfcbb2bf256
18 changes: 8 additions & 10 deletions trunk/net/mac80211/ieee80211.c
Original file line number Diff line number Diff line change
Expand Up @@ -700,11 +700,6 @@ int ieee80211_stop_tx_ba_session(struct ieee80211_hw *hw,
if (tid >= STA_TID_NUM)
return -EINVAL;

#ifdef CONFIG_MAC80211_HT_DEBUG
printk(KERN_DEBUG "Stop a BA session requested for %s tid %u\n",
print_mac(mac, ra), tid);
#endif /* CONFIG_MAC80211_HT_DEBUG */

rcu_read_lock();
sta = sta_info_get(local, ra);
if (!sta) {
Expand All @@ -717,14 +712,15 @@ int ieee80211_stop_tx_ba_session(struct ieee80211_hw *hw,
spin_lock_bh(&sta->ampdu_mlme.ampdu_tx);

if (*state != HT_AGG_STATE_OPERATIONAL) {
#ifdef CONFIG_MAC80211_HT_DEBUG
printk(KERN_DEBUG "Try to stop Tx aggregation on"
" non active TID\n");
#endif /* CONFIG_MAC80211_HT_DEBUG */
ret = -ENOENT;
goto stop_BA_exit;
}

#ifdef CONFIG_MAC80211_HT_DEBUG
printk(KERN_DEBUG "Tx BA session stop requested for %s tid %u\n",
print_mac(mac, ra), tid);
#endif /* CONFIG_MAC80211_HT_DEBUG */

ieee80211_stop_queue(hw, sta->tid_to_tx_q[tid]);

*state = HT_AGG_STATE_REQ_STOP_BA_MSK |
Expand Down Expand Up @@ -809,8 +805,10 @@ void ieee80211_stop_tx_ba_cb(struct ieee80211_hw *hw, u8 *ra, u8 tid)
return;
}

printk(KERN_DEBUG "Stop a BA session requested on DA %s tid %d\n",
#ifdef CONFIG_MAC80211_HT_DEBUG
printk(KERN_DEBUG "Stopping Tx BA session for %s tid %d\n",
print_mac(mac, ra), tid);
#endif /* CONFIG_MAC80211_HT_DEBUG */

rcu_read_lock();
sta = sta_info_get(local, ra);
Expand Down
10 changes: 8 additions & 2 deletions trunk/net/mac80211/ieee80211_sta.c
Original file line number Diff line number Diff line change
Expand Up @@ -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,
sta->addr, tid, &start_seq_num);
#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 */

if (ret) {
Expand Down Expand Up @@ -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 sta_info *sta;
int ret, i;
DECLARE_MAC_BUF(mac);

rcu_read_lock();

Expand All @@ -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] =
HT_AGG_STATE_REQ_STOP_BA_MSK |
(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
* already verified in session init so we add the BUG_ON */
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,
ra, tid, NULL);
if (ret)
Expand Down

0 comments on commit 1b2ba19

Please sign in to comment.