diff options
author | Damien Bergamini <damien@cvs.openbsd.org> | 2006-10-03 19:46:09 +0000 |
---|---|---|
committer | Damien Bergamini <damien@cvs.openbsd.org> | 2006-10-03 19:46:09 +0000 |
commit | afacd366f1baece539ddabf32bd3cb9f23c582b5 (patch) | |
tree | 984a20906bd3b182cf10659d089a76d0576c3baa | |
parent | 3393da9b948d694f9f385f8d2f225c77d422df7b (diff) |
don't use IF_PREPEND() on altq's.
use IFQ_POLL()/IFQ_DEQUEUE() logic instead as described in altq(4).
tested by jolan@ on macppc
"diffs look ok" brad@
-rw-r--r-- | sys/dev/pci/if_vge.c | 6 | ||||
-rw-r--r-- | sys/dev/usb/if_axe.c | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/sys/dev/pci/if_vge.c b/sys/dev/pci/if_vge.c index eb5c233d8c2..fac9849db91 100644 --- a/sys/dev/pci/if_vge.c +++ b/sys/dev/pci/if_vge.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_vge.c,v 1.27 2006/07/28 15:58:38 kettenis Exp $ */ +/* $OpenBSD: if_vge.c,v 1.28 2006/10/03 19:46:08 damien Exp $ */ /* $FreeBSD: if_vge.c,v 1.3 2004/09/11 22:13:25 wpaul Exp $ */ /* * Copyright (c) 2004 @@ -1417,7 +1417,7 @@ vge_start(struct ifnet *ifp) pidx = VGE_TX_DESC_CNT - 1; while (sc->vge_ldata.vge_tx_mbuf[idx] == NULL) { - IFQ_DEQUEUE(&ifp->if_snd, m_head); + IFQ_POLL(&ifp->if_snd, m_head); if (m_head == NULL) break; @@ -1431,10 +1431,10 @@ vge_start(struct ifnet *ifp) #endif if (vge_encap(sc, m_head, idx)) { - IF_PREPEND(&ifp->if_snd, m_head); ifp->if_flags |= IFF_OACTIVE; break; } + IFQ_DEQUEUE(&ifp->if_snd, m_head); sc->vge_ldata.vge_tx_list[pidx].vge_frag[0].vge_buflen |= htole16(VGE_TXDESC_Q); diff --git a/sys/dev/usb/if_axe.c b/sys/dev/usb/if_axe.c index ea6b16b9746..d91151e9d71 100644 --- a/sys/dev/usb/if_axe.c +++ b/sys/dev/usb/if_axe.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_axe.c,v 1.54 2006/07/09 22:46:38 dlg Exp $ */ +/* $OpenBSD: if_axe.c,v 1.55 2006/10/03 19:46:08 damien Exp $ */ /* * Copyright (c) 1997, 1998, 1999, 2000-2003 @@ -1164,15 +1164,15 @@ axe_start(struct ifnet *ifp) if (ifp->if_flags & IFF_OACTIVE) return; - IF_DEQUEUE(&ifp->if_snd, m_head); + IFQ_POLL(&ifp->if_snd, m_head); if (m_head == NULL) return; if (axe_encap(sc, m_head, 0)) { - IF_PREPEND(&ifp->if_snd, m_head); ifp->if_flags |= IFF_OACTIVE; return; } + IFQ_DEQUEUE(&ifp->if_snd, m_head); /* * If there's a BPF listener, bounce a copy of this frame |