diff options
author | rwatson <rwatson@FreeBSD.org> | 2006-11-28 11:19:36 +0000 |
---|---|---|
committer | rwatson <rwatson@FreeBSD.org> | 2006-11-28 11:19:36 +0000 |
commit | fb8277d08bbc330681d319e41f5ac97c1730d0fd (patch) | |
tree | 81d5af2f1a9ce157cd1dbb5e6486451a3b1c3c26 /sys/net/netisr.c | |
parent | 61e0842016ad2dd75f423cd81d713ea68d6e92ae (diff) | |
download | FreeBSD-src-fb8277d08bbc330681d319e41f5ac97c1730d0fd.zip FreeBSD-src-fb8277d08bbc330681d319e41f5ac97c1730d0fd.tar.gz |
Change net.isr.direct from defaulting to 0 to 1 in 7-CURRENT. This
enables direct dispatch of the network stack from the device driver
ithread, enabling input path parallelism by default when multiple
interfaces are present.
The strategy for network stack parallelism is something being actively
discussed, and this is just one of several possible (and perfectly
reasonable) strategies, but has the distinct advantage of reducing the
number of context switches and preemptions significantly, resulting in
higher efficiency in many cases. In some caes, this may reduce
network stack parallelism due to work not being deferred from the
ithread to the netisr. Therefore, the strategy may change in the
future, but this offers a reasonable first pass and enabling
parallelism while maintaining strong ordering.
Hopefully this will trigger lots of nice new bugs.
This change is not intended for MFC.
Diffstat (limited to 'sys/net/netisr.c')
-rw-r--r-- | sys/net/netisr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/net/netisr.c b/sys/net/netisr.c index cfa14ef..b44b030 100644 --- a/sys/net/netisr.c +++ b/sys/net/netisr.c @@ -201,7 +201,7 @@ static struct isrstat isrstat; SYSCTL_NODE(_net, OID_AUTO, isr, CTLFLAG_RW, 0, "netisr counters"); -static int netisr_direct = 0; +static int netisr_direct = 1; SYSCTL_INT(_net_isr, OID_AUTO, direct, CTLFLAG_RW, &netisr_direct, 0, "enable direct dispatch"); TUNABLE_INT("net.isr.direct", &netisr_direct); |