and ath_intr() is getting called all the time but status & HAL_INT_TX isn't true so the task isn't getting enqueued. this is a 5 second stutter:

Nov 28 21:39:48 warez kernel: ath_tx_proc_q0123: 1
Nov 28 21:39:48 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:48 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:48 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:48 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:48 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:49 warez last message repeated 7 times
Nov 28 21:39:49 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:49 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:49 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:49 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:49 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:49 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:50 warez last message repeated 8 times
Nov 28 21:39:50 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:50 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:50 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:50 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:50 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:50 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:50 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:50 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:50 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:51 warez last message repeated 5 times
Nov 28 21:39:51 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:51 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:51 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:51 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:52 warez last message repeated 7 times
Nov 28 21:39:52 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:52 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:52 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:52 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:53 warez last message repeated 8 times
Nov 28 21:39:53 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:53 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:53 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:53 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:54 warez last message repeated 8 times
Nov 28 21:39:54 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:54 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:54 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:54 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:55 warez last message repeated 8 times
Nov 28 21:39:55 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:55 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:55 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:55 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:55 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:55 warez kernel: ath_intr: status 0x1000009
Nov 28 21:39:55 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:55 warez kernel: ath_intr: status 0x1010000
Nov 28 21:39:55 warez kernel: ath_intr: status 0x1000040
Nov 28 21:39:55 warez kernel: sc_txtask enqueue
Nov 28 21:39:55 warez kernel: ath_tx_proc_q0123: 1

and this is on a fresh cvsup to RELENG_6 as of a few hours ago -- i haven't tried -current

On Tue, 28 Nov 2006, Lamont Granquist wrote:
On Wed, 15 Nov 2006, Sam Leffler wrote:
Snapshots are rarely useful; try running athstats 1 and correlate what
you see with pauses.  Another possible reason for deferred operation is
something else in the system blocking the taskq threads; that's a bit
trickier to diagnose.

I threw in some printf()'s in the beginning of ath_start() and ath_tx_proc_q0123() and see this:

Nov 28 20:27:41 warez kernel: ath_tx_proc_q0123: 1
Nov 28 20:27:41 warez kernel: ath_start
Nov 28 20:27:41 warez kernel: ath_start
Nov 28 20:27:41 warez kernel: ath_tx_proc_q0123: 1
Nov 28 20:27:41 warez kernel: ath_start
Nov 28 20:27:45 warez last message repeated 13 times
Nov 28 20:27:45 warez kernel: ath_tx_proc_q0123: 1
Nov 28 20:27:45 warez kernel: ath_start
Nov 28 20:27:45 warez kernel: ath_tx_proc_q0123: 1
Nov 28 20:27:45 warez kernel: ath_start
Nov 28 20:27:45 warez kernel: ath_start

this was during a time where i was pinging across this interface so that every second it should have been transmitting at least one packet. the 4 second stutter there where ath_tx_proc_q0123 wasn't being called correllates with actual stutters in packet transmission.

if i understand this, that's the taskq associated with transmission?

TASK_INIT(&sc->sc_txtask, 0, ath_tx_proc_q0123, sc);


_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to