diff options
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/ic/fxp.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/sys/dev/ic/fxp.c b/sys/dev/ic/fxp.c index 3848d746cf1..b890d1188c2 100644 --- a/sys/dev/ic/fxp.c +++ b/sys/dev/ic/fxp.c @@ -1,4 +1,4 @@ -/* $OpenBSD: fxp.c,v 1.15 2001/05/24 04:24:36 art Exp $ */ +/* $OpenBSD: fxp.c,v 1.16 2001/05/26 19:40:37 deraadt Exp $ */ /* $NetBSD: if_fxp.c,v 1.2 1997/06/05 02:01:55 thorpej Exp $ */ /* @@ -995,11 +995,10 @@ fxp_stop(sc, drain) /* * Release any xmit buffers. */ - txp = sc->cbl_base; - for (i = 0; i < FXP_NTXCB; i++) { - if (txp[i].mb_head != NULL) - m_freem(txp[i].mb_head); - txp[i].mb_head = NULL; + for (txp = sc->cbl_first; txp != NULL && txp->mb_head != NULL; + txp = txp->next) { + m_freem(txp->mb_head); + txp->mb_head = NULL; } sc->tx_queued = 0; |