git: network - Allow asynchronous shutdown and fix a MP race in soshutdown().

Matthew Dillon dillon at crater.dragonflybsd.org
Thu Sep 16 00:55:22 PDT 2010


commit edf5c73201f87ebd973c4e5404a00e9fa92bed2a
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Thu Sep 16 00:50:40 2010 -0700

    network - Allow asynchronous shutdown and fix a MP race in soshutdown().
    
    * The ssb_release() call in sorflush() must be protected by
      socket->so_rcv.ssb_token.  This call is made from the user
      side when soshutdown() is called.
    
    * Allow shutdowns to interrupt another thread read()ing from the same
      descriptor by removing the user-side interlock in the shutdown code
      path.

Summary of changes:
 sys/kern/uipc_socket.c |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/edf5c73201f87ebd973c4e5404a00e9fa92bed2a


-- 
DragonFly BSD source repository





More information about the Commits mailing list