summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoradrian <adrian@FreeBSD.org>2013-04-01 20:12:21 +0000
committeradrian <adrian@FreeBSD.org>2013-04-01 20:12:21 +0000
commit57bb44230bd391d708567671fee7841abbe3f25f (patch)
tree8dbb4419dd37b7df4ad8db16048d9c21169c8396
parent883e8bd6090cb5fd70dcea8e32b462d09bcb1901 (diff)
downloadFreeBSD-src-57bb44230bd391d708567671fee7841abbe3f25f.zip
FreeBSD-src-57bb44230bd391d708567671fee7841abbe3f25f.tar.gz
Use ATH_MAX_SCATTER rather than ATH_TXDESC.
ATH_MAX_SCATTER is used to size the ath_buf DMA segment array. We thus should use it when checking sizes of things.
-rw-r--r--sys/dev/ath/if_ath.c2
-rw-r--r--sys/dev/ath/if_ath_tx.c8
2 files changed, 5 insertions, 5 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c
index a52d645..2bdc797 100644
--- a/sys/dev/ath/if_ath.c
+++ b/sys/dev/ath/if_ath.c
@@ -3276,7 +3276,7 @@ ath_desc_alloc(struct ath_softc *sc)
int error;
error = ath_descdma_setup(sc, &sc->sc_txdma, &sc->sc_txbuf,
- "tx", sc->sc_tx_desclen, ath_txbuf, ATH_TXDESC);
+ "tx", sc->sc_tx_desclen, ath_txbuf, ATH_MAX_SCATTER);
if (error != 0) {
return error;
}
diff --git a/sys/dev/ath/if_ath_tx.c b/sys/dev/ath/if_ath_tx.c
index 728c3f0..1c9e44d 100644
--- a/sys/dev/ath/if_ath_tx.c
+++ b/sys/dev/ath/if_ath_tx.c
@@ -312,7 +312,7 @@ ath_tx_dmasetup(struct ath_softc *sc, struct ath_buf *bf, struct mbuf *m0)
BUS_DMA_NOWAIT);
if (error == EFBIG) {
/* XXX packet requires too many descriptors */
- bf->bf_nseg = ATH_TXDESC+1;
+ bf->bf_nseg = ATH_MAX_SCATTER + 1;
} else if (error != 0) {
sc->sc_stats.ast_tx_busdma++;
ath_freetx(m0);
@@ -323,9 +323,9 @@ ath_tx_dmasetup(struct ath_softc *sc, struct ath_buf *bf, struct mbuf *m0)
* require too many TX descriptors. We try to convert
* the latter to a cluster.
*/
- if (bf->bf_nseg > ATH_TXDESC) { /* too many desc's, linearize */
+ if (bf->bf_nseg > ATH_MAX_SCATTER) { /* too many desc's, linearize */
sc->sc_stats.ast_tx_linear++;
- m = m_collapse(m0, M_NOWAIT, ATH_TXDESC);
+ m = m_collapse(m0, M_NOWAIT, ATH_MAX_SCATTER);
if (m == NULL) {
ath_freetx(m0);
sc->sc_stats.ast_tx_nombuf++;
@@ -340,7 +340,7 @@ ath_tx_dmasetup(struct ath_softc *sc, struct ath_buf *bf, struct mbuf *m0)
ath_freetx(m0);
return error;
}
- KASSERT(bf->bf_nseg <= ATH_TXDESC,
+ KASSERT(bf->bf_nseg <= ATH_MAX_SCATTER,
("too many segments after defrag; nseg %u", bf->bf_nseg));
} else if (bf->bf_nseg == 0) { /* null packet, discard */
sc->sc_stats.ast_tx_nodata++;
OpenPOWER on IntegriCloud