From owner-svn-src-all@FreeBSD.ORG Wed Oct 16 19:53:51 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 0311ACC6; Wed, 16 Oct 2013 19:53:51 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E45D126B8; Wed, 16 Oct 2013 19:53:50 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r9GJro63036520; Wed, 16 Oct 2013 19:53:50 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r9GJroOA036519; Wed, 16 Oct 2013 19:53:50 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201310161953.r9GJroOA036519@svn.freebsd.org> From: Adrian Chadd Date: Wed, 16 Oct 2013 19:53:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r256649 - head/sys/mips/atheros X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 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: Wed, 16 Oct 2013 19:53:51 -0000 Author: adrian Date: Wed Oct 16 19:53:50 2013 New Revision: 256649 URL: http://svnweb.freebsd.org/changeset/base/256649 Log: Whilst here, document that this TX alignment requirement may acutally not be required on later hardware. It would allow for higher packet rates so yes, it would be nice to disable it. Modified: head/sys/mips/atheros/if_arge.c Modified: head/sys/mips/atheros/if_arge.c ============================================================================== --- head/sys/mips/atheros/if_arge.c Wed Oct 16 19:36:50 2013 (r256648) +++ head/sys/mips/atheros/if_arge.c Wed Oct 16 19:53:50 2013 (r256649) @@ -1261,6 +1261,10 @@ arge_init_locked(struct arge_softc *sc) * The TX engine requires each fragment to be aligned to a * 4 byte boundary and the size of each fragment except * the last to be a multiple of 4 bytes. + * + * XXX TODO: I believe this is only a bug on the AR71xx and + * AR913x MACs. The later MACs (AR724x and later) does not + * need this workaround. */ static int arge_mbuf_chain_is_tx_aligned(struct mbuf *m0) @@ -1294,6 +1298,10 @@ arge_encap(struct arge_softc *sc, struct /* * Fix mbuf chain, all fragments should be 4 bytes aligned and * even 4 bytes + * + * XXX TODO: I believe this is only a bug on the AR71xx and + * AR913x MACs. The later MACs (AR724x and later) does not + * need this workaround. */ m = *m_head; if (! arge_mbuf_chain_is_tx_aligned(m)) {