diff options
author | Kenjiro Cho <kjc@cvs.openbsd.org> | 2002-03-12 09:51:21 +0000 |
---|---|---|
committer | Kenjiro Cho <kjc@cvs.openbsd.org> | 2002-03-12 09:51:21 +0000 |
commit | c0673e7470e78851e90fed12a36fc994cd4a9596 (patch) | |
tree | 493f6323005acbca62cfdc1588c1bcca53310914 /sys/dev/pci/if_vr.c | |
parent | a58c9d8493088f72eea1a7fe29bd0458cad36e81 (diff) |
sync with KAME
ALTQify more drivers.
ok millert@
Diffstat (limited to 'sys/dev/pci/if_vr.c')
-rw-r--r-- | sys/dev/pci/if_vr.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/dev/pci/if_vr.c b/sys/dev/pci/if_vr.c index 8ddfcdd8c9c..e6781c06346 100644 --- a/sys/dev/pci/if_vr.c +++ b/sys/dev/pci/if_vr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_vr.c,v 1.22 2002/02/15 20:45:31 nordin Exp $ */ +/* $OpenBSD: if_vr.c,v 1.23 2002/03/12 09:51:20 kjc Exp $ */ /* * Copyright (c) 1997, 1998 @@ -1290,7 +1290,7 @@ vr_start(ifp) start_tx = sc->vr_cdata.vr_tx_free; while(sc->vr_cdata.vr_tx_free->vr_mbuf == NULL) { - IFQ_DEQUEUE(&ifp->if_snd, m_head); + IFQ_POLL(&ifp->if_snd, m_head); if (m_head == NULL) break; @@ -1300,7 +1300,6 @@ vr_start(ifp) /* Pack the data into the descriptor. */ if (vr_encap(sc, cur_tx, m_head)) { - IF_PREPEND(&ifp->if_snd, m_head); ifp->if_flags |= IFF_OACTIVE; cur_tx = NULL; break; @@ -1309,6 +1308,9 @@ vr_start(ifp) if (cur_tx != start_tx) VR_TXOWN(cur_tx) = VR_TXSTAT_OWN; + /* now we are committed to transmit the packet */ + IFQ_DEQUEUE(&ifp->if_snd, m_head); + #if NBPFILTER > 0 /* * If there's a BPF listener, bounce a copy of this frame |