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);
 }
 
 /*
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to