Search Linux Wireless

Re: [ath9k-devel] [PATCH 2/3] ath9k: Re-start xmit logic in xmit watchdog timer.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/07/2011 07:11 AM, Peter Stuge wrote:
Vasanthakumar Thiagarajan wrote:
+++ b/drivers/net/wireless/ath/ath9k/xmit.c
@@ -2110,6 +2110,27 @@ static void ath_tx_complete_poll_work(struct work_struct *work)
  				} else {
  					txq->axq_tx_inprogress = true;
  				}
+			} else {
..
+				if (!list_empty(&txq->axq_acq)) {
..
+					ath_txq_schedule(sc, txq);

NAK. This complete work monitors the hw q periodically and does a
reset if a hang is detected.

Could you please point to that hang check?

It's right there in the method.  Basically, first call of this poll_work might
set the txq to axq_tx_inprogress, and if it's still in progress on next call,
it resets the hardware.

Now that you mention it, however...the channel change logic restarts this worker
for immediate execution.  That means that two channel changes very close together
could easily cause this reset to hit when it really shouldn't.  Probably we need
to store the time at which tx-in-progress was set and only reset the NIC if the
timer has expired (not just if it was detected twice in a row)??

Thanks,
Ben



//Peter
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


--
Ben Greear <greearb@xxxxxxxxxxxxxxx>
Candela Technologies Inc  http://www.candelatech.com
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux