svn commit: r193207 - projects/pnet/sys/net
Robert Watson
rwatson at FreeBSD.org
Mon Jun 1 07:54:27 UTC 2009
Author: rwatson
Date: Mon Jun 1 07:54:27 2009
New Revision: 193207
URL: http://svn.freebsd.org/changeset/base/193207
Log:
When queueing a packet to a netisr thread and it's already being direct
dispatched, suppress a wakeup -- the direct dispatching thread will
generate it later.
Modified:
projects/pnet/sys/net/netisr.c
Modified: projects/pnet/sys/net/netisr.c
==============================================================================
--- projects/pnet/sys/net/netisr.c Mon Jun 1 07:48:27 2009 (r193206)
+++ projects/pnet/sys/net/netisr.c Mon Jun 1 07:54:27 2009 (r193207)
@@ -776,7 +776,8 @@ netisr_queue_workstream(struct netisr_wo
if (npwp->nw_len > npwp->nw_watermark)
npwp->nw_watermark = npwp->nw_len;
nwsp->nws_pendingbits |= (1 << proto);
- if (!(nwsp->nws_flags & (NWS_SCHEDULED | NWS_RUNNING))) {
+ if (!(nwsp->nws_flags &
+ (NWS_RUNNING | NWS_DISPATCHING | NWS_SCHEDULED))) {
nwsp->nws_flags |= NWS_SCHEDULED;
*dosignalp = 1; /* Defer until unlocked. */
}
More information about the svn-src-projects
mailing list