diff options
author | Adrian Chadd <adrian@FreeBSD.org> | 2013-04-29 07:28:29 +0000 |
---|---|---|
committer | Adrian Chadd <adrian@FreeBSD.org> | 2013-04-29 07:28:29 +0000 |
commit | 8d060542914c6473ef1077f6f751a6cf39729461 (patch) | |
tree | 7745fb78015ce6c1f19e6504dda88738d73305db /sys/dev | |
parent | a642ae682506a8398b90b6e0bab98176f13af173 (diff) | |
download | src-8d060542914c6473ef1077f6f751a6cf39729461.tar.gz src-8d060542914c6473ef1077f6f751a6cf39729461.zip |
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.
Notes
Notes:
svn path=/head/; revision=250041
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/ath/if_ath.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c index 9a33ede71cb9..5951799d1af5 100644 --- a/sys/dev/ath/if_ath.c +++ b/sys/dev/ath/if_ath.c @@ -4466,10 +4466,12 @@ ath_tx_stopdma(struct ath_softc *sc, struct ath_txq *txq) 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 ath_txq *txq) 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) { |