Author: adrian
Date: Tue Feb 8 20:16:43 2011
New Revision: 218453
URL: http://svn.freebsd.org/changeset/base/218453
Log:
net80211 really doesn't want A_MPDU to appear on non-11n station node mbufs.
Revert back to the previous method of doing it for where a node can be
identified and it's an 11n node.
I'll have to do some further research into exactly what is being messed up
with the sequence number matching and I'll then revisit this.
Modified:
head/sys/dev/ath/if_ath.c
Modified: head/sys/dev/ath/if_ath.c
==============================================================================
--- head/sys/dev/ath/if_ath.c Tue Feb 8 19:51:40 2011 (r218452)
+++ head/sys/dev/ath/if_ath.c Tue Feb 8 20:16:43 2011 (r218453)
@@ -3892,12 +3892,14 @@ rx_accept:
IEEE80211_KEYIX_NONE : rs->rs_keyix);
sc->sc_lastrs = rs;
/* tag AMPDU aggregates for reorder processing */
+#if 0
/*
* Just make sure all frames are tagged for AMPDU reorder
checking.
* As there seems to be some situations where single frames
aren't
* matching a node but bump the seqno. This needs to be
investigated.
*/
m->m_flags |= M_AMPDU;
+#endif
/* Keep statistics on the number of aggregate packets received
*/
if (rs->rs_isaggr)
@@ -3905,6 +3907,13 @@ rx_accept:
if (ni != NULL) {
/*
+ * Only punt packets for ampdu reorder processing for
11n nodes;
+ * net80211 enforces that M_AMPDU is only set for 11n
nodes.
+ */
+ if (ni->ni_flags & IEEE80211_NODE_HT)
+ m->m_flags |= M_AMPDU;
+
+ /*
* Sending station is known, dispatch directly.
*/
type = ieee80211_input(ni, m, rs->rs_rssi, nf);
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "[email protected]"