git: kernel - MPSAFE the protocol drain routines
Matthew Dillon
dillon at crater.dragonflybsd.org
Wed Sep 8 22:57:13 PDT 2010
commit 2d23a8bebdf3b83c06495aceae0d5f64f404b9d0
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Wed Sep 8 22:53:49 2010 -0700
kernel - MPSAFE the protocol drain routines
* The ip fragment drain was not MPSAFE at all. Use a token to protect
the ipq[] queues.
* The tcp reassembly code was only partially MPSAFE due to being
per-cpu. Finish it up. Use atomic ops for the tcp_reass_qsize
global.
* Add port assertions in the TCP input and output paths. If we
are not in the correct thread we panic, period.
* Code cleanup.
Summary of changes:
sys/netinet/ip_input.c | 40 +++++++++++++++++++++++-------
sys/netinet/tcp_input.c | 59 ++++++++++++++++++++++++++++++++--------------
sys/netinet/tcp_output.c | 2 +
sys/netinet/tcp_subr.c | 34 ++++++++++++++++++--------
sys/sys/mbuf.h | 2 +-
5 files changed, 97 insertions(+), 40 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/2d23a8bebdf3b83c06495aceae0d5f64f404b9d0
--
DragonFly BSD source repository
More information about the Commits
mailing list