summaryrefslogtreecommitdiffstats
path: root/sys/netinet/ip_input.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/netinet/ip_input.c')
-rw-r--r--sys/netinet/ip_input.c23
1 files changed, 2 insertions, 21 deletions
diff --git a/sys/netinet/ip_input.c b/sys/netinet/ip_input.c
index afac57c..44e4eda 100644
--- a/sys/netinet/ip_input.c
+++ b/sys/netinet/ip_input.c
@@ -65,7 +65,6 @@
#include <net/if_dl.h>
#include <net/route.h>
#include <net/netisr.h>
-#include <net/intrq.h>
#include <netinet/in.h>
#include <netinet/in_systm.h>
@@ -156,6 +155,7 @@ SYSCTL_INT(_net_inet_ip, OID_AUTO, check_interface, CTLFLAG_RW,
static int ipprintfs = 0;
#endif
+static struct ifqueue ipintrq;
static int ipqmaxlen = IFQ_MAXLEN;
extern struct domain inetdomain;
@@ -233,7 +233,6 @@ static void ip_forward(struct mbuf *m, int srcrt,
static void ip_freef(struct ipqhead *, struct ipq *);
static struct mbuf *ip_reass(struct mbuf *, struct ipqhead *,
struct ipq *, u_int32_t *, u_int16_t *);
-static void ipintr(void);
/*
* IP initialization: fill in IP protocol switch table.
@@ -269,9 +268,7 @@ ip_init()
#endif
ipintrq.ifq_maxlen = ipqmaxlen;
mtx_init(&ipintrq.ifq_mtx, "ip_inq", NULL, MTX_DEF);
- ipintrq_present = 1;
-
- register_netisr(NETISR_IP, ipintr);
+ netisr_register(NETISR_IP, ip_input, &ipintrq);
}
/*
@@ -951,22 +948,6 @@ bad:
}
/*
- * IP software interrupt routine - to go away sometime soon
- */
-static void
-ipintr(void)
-{
- struct mbuf *m;
-
- while (1) {
- IF_DEQUEUE(&ipintrq, m);
- if (m == 0)
- return;
- ip_input(m);
- }
-}
-
-/*
* Take incoming datagram fragment and try to reassemble it into
* whole datagram. If a chain for reassembly of this datagram already
* exists, then it is given as fp; otherwise have to make a chain.
OpenPOWER on IntegriCloud