Anyone seeing tx-credits 'hang'?

Ben Greear greearb at candelatech.com
Mon Jan 19 20:34:33 PST 2015


Ok, so I think I've mostly got this figured out...at least enough to
work around the problem.

It seems that the firmware and/or NIC hardware stops doing CE interrupts
for the WMI rings (at least).  If I force a poll of
the rings, then packets are found and may be processed.

In one case I looked at closely, it seems IRQs went away for around 30 seconds,
and then for no obvious reason IRQs for the rings started being delivered and
processed again. ~20 WMI messages were processed due to polling CE rings in this
interval.

The combination of WMI keep-alive messages sent from host, and
timer to check for timeouts (and do CE polling at higher intervals
when timeout is detected) appears to be enough.  I also check
for the IRQ working again and stop the polling at that time.

I plan to clean the firmware changes up and commit them to my
own repo...but it will require host changes to enable the keep-alive
to fully work around this problem.  Probably none of this will make
it upstream....

Thanks,
Ben

-- 
Ben Greear <greearb at candelatech.com>
Candela Technologies Inc  http://www.candelatech.com



More information about the ath10k mailing list