DragonFly BSD
DragonFly commits List (threaded) for 2010-09
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

git: kernel - MPSAFE the protocol drain routines


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 8 Sep 2010 22:56:15 -0700 (PDT)

commit 2d23a8bebdf3b83c06495aceae0d5f64f404b9d0
Author: Matthew Dillon <dillon@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



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]