git: kernel - Fix localhost packet misordering
Matthew Dillon
dillon at crater.dragonflybsd.org
Thu Nov 3 22:47:55 PDT 2011
commit 392cd266cf0fd6bc128fba0cd2b0cf1f757f5628
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Thu Nov 3 22:25:31 2011 -0700
kernel - Fix localhost packet misordering
* netisr thread ports are based on IPIs, but when we enable asynch socket
writes a user thread which gets moved between cpus sending async netmsgs
while doing so can result in the netisr receiving those messages out
of order, corrupting the data stream.
* Add TDF_FORCE_SPINPORT to allow the netisr threads to implement their
message ports as spinports instead of threadports, which guarantees
message ordering.
Summary of changes:
sys/kern/lwkt_thread.c | 2 +-
sys/net/if.c | 3 ++-
sys/net/netisr.c | 4 ++--
sys/sys/thread.h | 2 +-
4 files changed, 6 insertions(+), 5 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/392cd266cf0fd6bc128fba0cd2b0cf1f757f5628
--
DragonFly BSD source repository
More information about the Commits
mailing list