From owner-svn-src-head@FreeBSD.ORG Sun Mar 24 04:09:30 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 657F4AAF; Sun, 24 Mar 2013 04:09:30 +0000 (UTC) (envelope-from adrian@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 590B9AEC; Sun, 24 Mar 2013 04:09:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.6/8.14.6) with ESMTP id r2O49U7F013009; Sun, 24 Mar 2013 04:09:30 GMT (envelope-from adrian@svn.freebsd.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.6/8.14.5/Submit) id r2O49TCO013008; Sun, 24 Mar 2013 04:09:29 GMT (envelope-from adrian@svn.freebsd.org) Message-Id: <201303240409.r2O49TCO013008@svn.freebsd.org> From: Adrian Chadd Date: Sun, 24 Mar 2013 04:09:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r248675 - head/sys/dev/ath X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 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: Sun, 24 Mar 2013 04:09:30 -0000 Author: adrian Date: Sun Mar 24 04:09:29 2013 New Revision: 248675 URL: http://svnweb.freebsd.org/changeset/base/248675 Log: Fix the locking changes due to the TXQ change drive-by. Tested: * AR9580, STA mode Modified: head/sys/dev/ath/if_ath_tx_edma.c Modified: head/sys/dev/ath/if_ath_tx_edma.c ============================================================================== --- head/sys/dev/ath/if_ath_tx_edma.c Sun Mar 24 03:15:20 2013 (r248674) +++ head/sys/dev/ath/if_ath_tx_edma.c Sun Mar 24 04:09:29 2013 (r248675) @@ -203,7 +203,7 @@ ath_edma_xmit_handoff_hw(struct ath_soft { struct ath_hal *ah = sc->sc_ah; - ATH_TXQ_LOCK_ASSERT(txq); + ATH_TXQ_LOCK(txq); KASSERT((bf->bf_flags & ATH_BUF_BUSY) == 0, ("%s: busy status 0x%x", __func__, bf->bf_flags)); @@ -234,6 +234,7 @@ ath_edma_xmit_handoff_hw(struct ath_soft txq->axq_fifo_depth++; ath_hal_txstart(ah, txq->axq_qnum); } + ATH_TXQ_UNLOCK(txq); } /* @@ -252,6 +253,7 @@ ath_edma_xmit_handoff_mcast(struct ath_s KASSERT((bf->bf_flags & ATH_BUF_BUSY) == 0, ("%s: busy status 0x%x", __func__, bf->bf_flags)); + ATH_TXQ_LOCK(txq); /* * XXX this is mostly duplicated in ath_tx_handoff_mcast(). */ @@ -278,6 +280,7 @@ ath_edma_xmit_handoff_mcast(struct ath_s ATH_TXQ_INSERT_TAIL(txq, bf, bf_list); ath_hal_gettxdesclinkptr(sc->sc_ah, bf->bf_lastds, &txq->axq_link); + ATH_TXQ_UNLOCK(txq); } /*