summaryrefslogtreecommitdiffstats
path: root/sys/net/netisr.c
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2009-05-13 17:22:33 +0000
committerrwatson <rwatson@FreeBSD.org>2009-05-13 17:22:33 +0000
commitdeae02e77d33ac35960ebc9548741d1c2b9a22c2 (patch)
treecb46f9374b6bc10ce4931ac2accadd44426787d8 /sys/net/netisr.c
parente0965aca60d2d32e9e104ce8ecf560079ff8b72e (diff)
downloadFreeBSD-src-deae02e77d33ac35960ebc9548741d1c2b9a22c2.zip
FreeBSD-src-deae02e77d33ac35960ebc9548741d1c2b9a22c2.tar.gz
Garbage collect now-unused NETISR_FORCEQUEUE, which overrode the global
direct dispatch policy for specific protocols (NETISR_USB). We leave the additional 'flags' argument to netisr_register() for the time being, even though it is no longer required.
Diffstat (limited to 'sys/net/netisr.c')
-rw-r--r--sys/net/netisr.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/sys/net/netisr.c b/sys/net/netisr.c
index efbc183..eecf315 100644
--- a/sys/net/netisr.c
+++ b/sys/net/netisr.c
@@ -78,8 +78,7 @@ netisr_register(int num, netisr_t *handler, struct ifqueue *inq, int flags)
KASSERT(!(num < 0 || num >= (sizeof(netisrs)/sizeof(*netisrs))),
("bad isr %d", num));
- KASSERT(flags == 0 || flags == NETISR_FORCEQUEUE,
- ("netisr_register: bad flags 0x%x\n", flags));
+ KASSERT(flags == 0, ("netisr_register: bad flags 0x%x\n", flags));
netisrs[num].ni_handler = handler;
netisrs[num].ni_queue = inq;
netisrs[num].ni_flags = flags;
@@ -169,15 +168,11 @@ netisr_dispatch(int num, struct mbuf *m)
}
/*
- * Unless NETISR_FORCEQUEUE is set on the netisr (generally
- * indicating that the handler still requires Giant, which cannot be
- * acquired in arbitrary order with respect to a caller), directly
- * dispatch handling of this packet. Source ordering is maintained
- * by virtue of callers consistently calling one of queued or direct
- * dispatch, and the forcequeue flag being immutable after
- * registration.
+ * Directly dispatch handling of this packet, if permitted by global
+ * policy. Source ordering is maintained by virtue of callers
+ * consistently calling one of queued or direct dispatch.
*/
- if (netisr_direct && !(ni->ni_flags & NETISR_FORCEQUEUE)) {
+ if (netisr_direct) {
isrstat.isrs_directed++;
ni->ni_handler(m);
} else {
OpenPOWER on IntegriCloud