aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/debug.c
diff options
context:
space:
mode:
authorBen Greear <greearb@candelatech.com>2011-01-10 02:11:50 -0500
committerJohn W. Linville <linville@tuxdriver.com>2011-01-21 15:32:22 -0500
commit71e025a5a630681ad8b37d4426a994d199976ec9 (patch)
tree0a7533a92162e89fff2cc8bffda64d277acc5ea4 /drivers/net/wireless/ath/ath9k/debug.c
parent7f010c93d73847ffc6b74b572fef9a63e305d65e (diff)
ath9k: More xmit queue debugfs information.
To try to figure out why xmit logic hangs. Signed-off-by: Ben Greear <greearb@candelatech.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/debug.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/debug.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/ath9k/debug.c b/drivers/net/wireless/ath/ath9k/debug.c
index 650f00f59d79..9e009ccd0069 100644
--- a/drivers/net/wireless/ath/ath9k/debug.c
+++ b/drivers/net/wireless/ath/ath9k/debug.c
@@ -679,6 +679,32 @@ static ssize_t read_file_xmit(struct file *file, char __user *user_buf,
679 PRQLE(tmp, txq_fifo[i]); 679 PRQLE(tmp, txq_fifo[i]);
680 } 680 }
681 681
682 /* Print out more detailed queue-info */
683 for (i = 0; i <= WME_AC_BK; i++) {
684 struct ath_txq *txq = &(sc->tx.txq[i]);
685 struct ath_atx_ac *ac;
686 struct ath_atx_tid *tid;
687 if (len >= size)
688 goto done;
689 spin_lock_bh(&txq->axq_lock);
690 if (!list_empty(&txq->axq_acq)) {
691 ac = list_first_entry(&txq->axq_acq, struct ath_atx_ac,
692 list);
693 len += snprintf(buf + len, size - len,
694 "txq[%i] first-ac: %p sched: %i\n",
695 i, ac, ac->sched);
696 if (list_empty(&ac->tid_q) || (len >= size))
697 goto done_for;
698 tid = list_first_entry(&ac->tid_q, struct ath_atx_tid,
699 list);
700 len += snprintf(buf + len, size - len,
701 " first-tid: %p sched: %i paused: %i\n",
702 tid, tid->sched, tid->paused);
703 }
704 done_for:
705 spin_unlock_bh(&txq->axq_lock);
706 }
707
682done: 708done:
683 if (len > size) 709 if (len > size)
684 len = size; 710 len = size;