From owner-svn-src-all@FreeBSD.ORG Sat Sep 8 02:56:09 2012 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 CF8E91065672; Sat, 8 Sep 2012 02:56:09 +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 BA9078FC15; Sat, 8 Sep 2012 02:56:09 +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 q882u9cU007907; Sat, 8 Sep 2012 02:56:09 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q882u9fY007905; Sat, 8 Sep 2012 02:56:09 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201209080256.q882u9fY007905@svn.freebsd.org> From: Adrian Chadd Date: Sat, 8 Sep 2012 02:56:09 +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: r240226 - 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: Sat, 08 Sep 2012 02:56:09 -0000 Author: adrian Date: Sat Sep 8 02:56:09 2012 New Revision: 240226 URL: http://svn.freebsd.org/changeset/base/240226 Log: Correctly mask out the RTS/CTS flags when forming aggregates. This had the side effect of clearing HAL_TXDESC_CLRDMASK for a bunch of frames, meaning they'd end up being potentially filtered if there were an error. This is fine in the previous world as they'd just be software retried but now that I'm working on filtered frames, these descriptors would be endlessly retried until another valid frame would come along that had CLRDMASK set. Modified: head/sys/dev/ath/if_ath_tx_ht.c Modified: head/sys/dev/ath/if_ath_tx_ht.c ============================================================================== --- head/sys/dev/ath/if_ath_tx_ht.c Sat Sep 8 02:41:50 2012 (r240225) +++ head/sys/dev/ath/if_ath_tx_ht.c Sat Sep 8 02:56:09 2012 (r240226) @@ -742,7 +742,7 @@ ath_tx_form_aggr(struct ath_softc *sc, s * subsequent frame with this config. */ bf->bf_state.bfs_txflags &= - (HAL_TXDESC_RTSENA | HAL_TXDESC_CTSENA); + ~ (HAL_TXDESC_RTSENA | HAL_TXDESC_CTSENA); bf->bf_state.bfs_txflags |= bf_first->bf_state.bfs_txflags & (HAL_TXDESC_RTSENA | HAL_TXDESC_CTSENA);