From owner-svn-src-head@FreeBSD.ORG Thu Jun 14 04:01:26 2012 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 10BD4106566B; Thu, 14 Jun 2012 04:01:26 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [69.147.83.44]) by mx1.freebsd.org (Postfix) with ESMTP id EF3658FC0A; Thu, 14 Jun 2012 04:01:25 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q5E41PA2068074; Thu, 14 Jun 2012 04:01:25 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q5E41P64068072; Thu, 14 Jun 2012 04:01:25 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201206140401.q5E41P64068072@svn.freebsd.org> From: Adrian Chadd Date: Thu, 14 Jun 2012 04:01:25 +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: r237041 - head/sys/dev/ath X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Jun 2012 04:01:26 -0000 Author: adrian Date: Thu Jun 14 04:01:25 2012 New Revision: 237041 URL: http://svn.freebsd.org/changeset/base/237041 Log: Disable this warning debug for now, as I'm now aware of the particular situation where it's occuring. Whilst I'm here, flesh out a more descriptive description. Modified: head/sys/dev/ath/if_ath_tx.c Modified: head/sys/dev/ath/if_ath_tx.c ============================================================================== --- head/sys/dev/ath/if_ath_tx.c Thu Jun 14 04:00:30 2012 (r237040) +++ head/sys/dev/ath/if_ath_tx.c Thu Jun 14 04:01:25 2012 (r237041) @@ -1308,7 +1308,28 @@ ath_tx_normal_setup(struct ath_softc *sc return EIO; } - /* Check if the TXQ wouldn't match what the hardware TXQ is! */ + /* + * There are two known scenarios where the frame AC doesn't match + * what the destination TXQ is. + * + * + non-QoS frames (eg management?) that the net80211 stack has + * assigned a higher AC to, but since it's a non-QoS TID, it's + * being thrown into TID 16. TID 16 gets the AC_BE queue. + * It's quite possible that management frames should just be + * direct dispatched to hardware rather than go via the software + * queue; that should be investigated in the future. There are + * some specific scenarios where this doesn't make sense, mostly + * surrounding ADDBA request/response - hence why that is special + * cased. + * + * + Multicast frames going into the VAP mcast queue. That shows up + * as "TXQ 11". + * + * This driver should eventually support separate TID and TXQ locking, + * allowing for arbitrary AC frames to appear on arbitrary software + * queues, being queued to the "correct" hardware queue when needed. + */ +#if 0 if (txq != sc->sc_ac2q[pri]) { device_printf(sc->sc_dev, "%s: txq=%p (%d), pri=%d, pri txq=%p (%d)\n", @@ -1319,6 +1340,7 @@ ath_tx_normal_setup(struct ath_softc *sc sc->sc_ac2q[pri], sc->sc_ac2q[pri]->axq_qnum); } +#endif /* * Calculate miscellaneous flags.