From owner-svn-src-all@FreeBSD.ORG Tue Feb 8 20:16:43 2011 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F2A9B106566B; Tue, 8 Feb 2011 20:16:43 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id E0CD18FC15; Tue, 8 Feb 2011 20:16:43 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id p18KGhnU058457; Tue, 8 Feb 2011 20:16:43 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id p18KGhUG058455; Tue, 8 Feb 2011 20:16:43 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201102082016.p18KGhUG058455@svn.freebsd.org> From: Adrian Chadd Date: Tue, 8 Feb 2011 20:16:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r218453 - head/sys/dev/ath X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Feb 2011 20:16:44 -0000 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);