svn commit: r218238 - head/sys/dev/ath

Adrian Chadd adrian at
Thu Feb 3 20:26:26 UTC 2011

Author: adrian
Date: Thu Feb  3 20:26:26 2011
New Revision: 218238

  Disable the code I previously added from Rui's 802.11n branch.
  A-MPDU RX interferes with packet retransmission/reordering.
  In local testing, I was seeing A-MPDU being negotiated and then
  not used by the AP sending frames to the STA; the STA would then
  treat non A-MPDU frames that are retransmits as out of the window
  and get plain confused.
  The hardware RX status descriptor has a "I'm part of an aggregate"
  bit; so this should eventually be tested and then punted to the
  A-MPDU reorder handling only if it has this bit set.


Modified: head/sys/dev/ath/if_ath.c
--- head/sys/dev/ath/if_ath.c	Thu Feb  3 20:10:16 2011	(r218237)
+++ head/sys/dev/ath/if_ath.c	Thu Feb  3 20:26:26 2011	(r218238)
@@ -3892,9 +3892,15 @@ rx_accept:
 				IEEE80211_KEYIX_NONE : rs->rs_keyix);
 		sc->sc_lastrs = rs;
 		if (ni != NULL) {
 		/* tag AMPDU aggregates for reorder processing */
+		/*
+		 * XXX this should only tag frames marked as aggregate; rather
+		 * XXX than all frames.
+		 */
 		if (ni->ni_flags & IEEE80211_NODE_HT)
 			m->m_flags |= M_AMPDU;
 			 * Sending station is known, dispatch directly.

More information about the svn-src-all mailing list