summaryrefslogtreecommitdiffstats
path: root/sys/net/if_gif.c
diff options
context:
space:
mode:
authorjlemon <jlemon@FreeBSD.org>2003-03-04 23:19:55 +0000
committerjlemon <jlemon@FreeBSD.org>2003-03-04 23:19:55 +0000
commit04e28d5a816573d1300b4591306a8785d3ace29c (patch)
treef304f726e8973253d3e8a87e56119fec0276a61c /sys/net/if_gif.c
parent45fcac94f475f1d18d50dde4f72eb51ee4abddcc (diff)
downloadFreeBSD-src-04e28d5a816573d1300b4591306a8785d3ace29c.zip
FreeBSD-src-04e28d5a816573d1300b4591306a8785d3ace29c.tar.gz
Update netisr handling; Each SWI now registers its queue, and all queue
drain routines are done by swi_net, which allows for better queue control at some future point. Packets may also be directly dispatched to a netisr instead of queued, this may be of interest at some installations, but currently defaults to off. Reviewed by: hsu, silby, jayanth, sam Sponsored by: DARPA, NAI Labs
Diffstat (limited to 'sys/net/if_gif.c')
-rw-r--r--sys/net/if_gif.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/sys/net/if_gif.c b/sys/net/if_gif.c
index 1cb4463..ae761e8 100644
--- a/sys/net/if_gif.c
+++ b/sys/net/if_gif.c
@@ -405,7 +405,6 @@ gif_input(m, af, ifp)
struct ifnet *ifp;
{
int isr;
- struct ifqueue *ifq = NULL;
if (ifp == NULL) {
/* just in case */
@@ -457,13 +456,11 @@ gif_input(m, af, ifp)
switch (af) {
#ifdef INET
case AF_INET:
- ifq = &ipintrq;
isr = NETISR_IP;
break;
#endif
#ifdef INET6
case AF_INET6:
- ifq = &ip6intrq;
isr = NETISR_IPV6;
break;
#endif
@@ -477,11 +474,7 @@ gif_input(m, af, ifp)
ifp->if_ipackets++;
ifp->if_ibytes += m->m_pkthdr.len;
- (void) IF_HANDOFF(ifq, m, NULL);
- /* we need schednetisr since the address family may change */
- schednetisr(isr);
-
- return;
+ netisr_dispatch(isr, m);
}
/* XXX how should we handle IPv6 scope on SIOC[GS]IFPHYADDR? */
OpenPOWER on IntegriCloud