summaryrefslogtreecommitdiffstats
path: root/sys/dev
diff options
context:
space:
mode:
authorbschmidt <bschmidt@FreeBSD.org>2012-04-15 18:25:17 +0000
committerbschmidt <bschmidt@FreeBSD.org>2012-04-15 18:25:17 +0000
commit1ba70fed8e6ec3a6dd449319f81e8452adb4164b (patch)
tree5558dd3e8b35cec223bd76f82f7527d05c2c6840 /sys/dev
parentbdb4f69be03ff23de4e64db6d910d70c90c9db7d (diff)
downloadFreeBSD-src-1ba70fed8e6ec3a6dd449319f81e8452adb4164b.zip
FreeBSD-src-1ba70fed8e6ec3a6dd449319f81e8452adb4164b.tar.gz
Use the M_AMPDU_MPDU flag to determine when to manually set the seqno and
use a BA queue.
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/iwn/if_iwn.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/sys/dev/iwn/if_iwn.c b/sys/dev/iwn/if_iwn.c
index 39a88fa..cf4d565 100644
--- a/sys/dev/iwn/if_iwn.c
+++ b/sys/dev/iwn/if_iwn.c
@@ -3308,18 +3308,15 @@ iwn_tx_data(struct iwn_softc *sc, struct mbuf *m, struct ieee80211_node *ni)
tid = 0;
}
ac = M_WME_GETAC(m);
-
- if (IEEE80211_QOS_HAS_SEQ(wh) &&
- IEEE80211_AMPDU_RUNNING(&ni->ni_tx_ampdu[ac])) {
+ if (m->m_flags & M_AMPDU_MPDU) {
struct ieee80211_tx_ampdu *tap = &ni->ni_tx_ampdu[ac];
- ring = &sc->txq[*(int *)tap->txa_private];
+ ac = *(int *)tap->txa_private;
*(uint16_t *)wh->i_seq =
htole16(ni->ni_txseqs[tid] << IEEE80211_SEQ_SEQ_SHIFT);
ni->ni_txseqs[tid]++;
- } else {
- ring = &sc->txq[ac];
}
+ ring = &sc->txq[ac];
desc = &ring->desc[ring->cur];
data = &ring->data[ring->cur];
OpenPOWER on IntegriCloud