svn commit: r248779 - head/sys/dev/ath
Adrian Chadd
adrian at FreeBSD.org
Wed Mar 27 00:35:46 UTC 2013
Author: adrian
Date: Wed Mar 27 00:35:45 2013
New Revision: 248779
URL: http://svnweb.freebsd.org/changeset/base/248779
Log:
* Stop processing after HAL_EIO; this is what the reference driver does.
* If we hit an empty queue condition (which I haven't yet root caused, grr.)
.. make sure we release the lock before continuing.
Modified:
head/sys/dev/ath/if_ath_tx_edma.c
Modified: head/sys/dev/ath/if_ath_tx_edma.c
==============================================================================
--- head/sys/dev/ath/if_ath_tx_edma.c Wed Mar 27 00:15:22 2013 (r248778)
+++ head/sys/dev/ath/if_ath_tx_edma.c Wed Mar 27 00:35:45 2013 (r248779)
@@ -633,7 +633,7 @@ ath_edma_tx_processq(struct ath_softc *s
if (status == HAL_EIO) {
device_printf(sc->sc_dev, "%s: invalid TX status?\n",
__func__);
- continue;
+ break;
}
#ifdef ATH_DEBUG_ALQ
@@ -676,6 +676,7 @@ ath_edma_tx_processq(struct ath_softc *s
device_printf(sc->sc_dev, "%s: Q%d: empty?\n",
__func__,
ts.ts_queue_id);
+ ATH_TXQ_UNLOCK(txq);
continue;
}
More information about the svn-src-head
mailing list