summaryrefslogtreecommitdiffstats
path: root/sys/net/if_bridge.c
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2009-04-27 22:06:49 +0000
committersam <sam@FreeBSD.org>2009-04-27 22:06:49 +0000
commit6079771a5e7e34e7e3d096d53e76dee6daa7d982 (patch)
tree063564bee5d9212bc88371c1aa4d02c13ea51222 /sys/net/if_bridge.c
parent28a14333c36cd488eeb0f7597633a62b7585987f (diff)
downloadFreeBSD-src-6079771a5e7e34e7e3d096d53e76dee6daa7d982.zip
FreeBSD-src-6079771a5e7e34e7e3d096d53e76dee6daa7d982.tar.gz
use if_transmit intead of direct frobbing of the if_snd q; this is no
longer allowed Identified by: rwatson Reviewed by: kmacy
Diffstat (limited to 'sys/net/if_bridge.c')
-rw-r--r--sys/net/if_bridge.c13
1 files changed, 2 insertions, 11 deletions
diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c
index ef8cf5b..70db614 100644
--- a/sys/net/if_bridge.c
+++ b/sys/net/if_bridge.c
@@ -1761,24 +1761,15 @@ bridge_enqueue(struct bridge_softc *sc, struct ifnet *dst_ifp, struct mbuf *m)
}
if (err == 0)
- IFQ_ENQUEUE(&dst_ifp->if_snd, m, err);
+ dst_ifp->if_transmit(dst_ifp, m);
}
if (err == 0) {
-
sc->sc_ifp->if_opackets++;
sc->sc_ifp->if_obytes += len;
-
- dst_ifp->if_obytes += len;
-
- if (mflags & M_MCAST) {
+ if (mflags & M_MCAST)
sc->sc_ifp->if_omcasts++;
- dst_ifp->if_omcasts++;
- }
}
-
- if ((dst_ifp->if_drv_flags & IFF_DRV_OACTIVE) == 0)
- (*dst_ifp->if_start)(dst_ifp);
}
/*
OpenPOWER on IntegriCloud