Author: adrian
Date: Mon Apr 29 07:28:29 2013
New Revision: 250041
URL: http://svnweb.freebsd.org/changeset/base/250041

Log:
  Debugging changes!
  
  * That lock isn't actually held during reset - just the whole TX/RX path
    is paused.  So, remove the assertion.
  
  * Log the TX queue status - how many hardware frames are active in the
    MAC and whether the queue is active.

Modified:
  head/sys/dev/ath/if_ath.c

Modified: head/sys/dev/ath/if_ath.c
==============================================================================
--- head/sys/dev/ath/if_ath.c   Mon Apr 29 06:54:01 2013        (r250040)
+++ head/sys/dev/ath/if_ath.c   Mon Apr 29 07:28:29 2013        (r250041)
@@ -4466,10 +4466,12 @@ ath_tx_stopdma(struct ath_softc *sc, str
        struct ath_hal *ah = sc->sc_ah;
 
        DPRINTF(sc, ATH_DEBUG_RESET,
-           "%s: tx queue [%u] %p, flags 0x%08x, link %p\n",
+           "%s: tx queue [%u] %p, active=%d, hwpending=%d, flags 0x%08x, link 
%p\n",
            __func__,
            txq->axq_qnum,
            (caddr_t)(uintptr_t) ath_hal_gettxbuf(ah, txq->axq_qnum),
+           (int) (!! ath_hal_txqenabled(ah, txq->axq_qnum)),
+           (int) ath_hal_numtxpending(ah, txq->axq_qnum),
            txq->axq_flags,
            txq->axq_link);
        (void) ath_hal_stoptxdma(ah, txq->axq_qnum);
@@ -4511,8 +4513,6 @@ ath_tx_dump(struct ath_softc *sc, struct
        if (! (sc->sc_debug & ATH_DEBUG_RESET))
                return;
 
-       ATH_TX_LOCK_ASSERT(sc);
-
        device_printf(sc->sc_dev, "%s: Q%d: begin\n",
            __func__, txq->axq_qnum);
        TAILQ_FOREACH(bf, &txq->axq_q, bf_list) {
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to