Date: Wed, 15 Jun 2011 15:24:22 +0000 (UTC) From: Adrian Chadd <adrian@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r223113 - user/adrian/if_ath_tx/sys/dev/ath Message-ID: <201106151524.p5FFOMW0087499@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: adrian Date: Wed Jun 15 15:24:21 2011 New Revision: 223113 URL: http://svn.freebsd.org/changeset/base/223113 Log: Misc stuff * tidy up a function call so it doesn't go over > 80 lines * add some disabled debugging for myself Non-misc stuff (just so I don't forget): The action frame is going out with AC pri = 3 (AC_VO); thus it's going out whilst the queued hardware frames in the other pri (eg AC=0/TID=0) are also queued. So the addba makes it out before the hardware queued frames before it. The solution may be to somehow delaying queueing the ADDBA frame until all the hardware-queued frames are sent. Modified: user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c Modified: user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c ============================================================================== --- user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c Wed Jun 15 15:07:01 2011 (r223112) +++ user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c Wed Jun 15 15:24:21 2011 (r223113) @@ -957,6 +957,14 @@ ath_tx_start(struct ath_softc *sc, struc if (is_ampdu_tx) seqno = ath_tx_tid_seqno_assign(sc, ni, bf, m0); +#if 0 + /* Is ampdu pending? fetch the seqno and print it out */ + if (is_ampdu_pending) + device_printf(sc->sc_dev, + "%s: tid %d: ampdu pending, seqno %d\n", + __func__, tid, M_SEQNO_GET(m0)); +#endif + /* This also sets up the DMA map */ r = ath_tx_normal_setup(sc, ni, bf, m0); @@ -1021,7 +1029,9 @@ ath_tx_raw_start(struct ath_softc *sc, s pktlen = m0->m_pkthdr.len - (hdrlen & 3) + IEEE80211_CRC_LEN; /* Handle encryption twiddling if needed */ - if (! ath_tx_tag_crypto(sc, ni, m0, params->ibp_flags & IEEE80211_BPF_CRYPTO, 0, &hdrlen, &pktlen, &keyix)) { + if (! ath_tx_tag_crypto(sc, ni, + m0, params->ibp_flags & IEEE80211_BPF_CRYPTO, 0, + &hdrlen, &pktlen, &keyix)) { ath_freetx(m0); return EIO; }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201106151524.p5FFOMW0087499>