OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-4623-gcb00816

Gerrit Code Review gerrit@openafs.org
Tue, 26 May 2015 14:06:38 -0400


The following commit has been merged in the master branch:
commit cb0081604ef5369f34279c6eb77eb4d28406f2ac
Author: Simon Wilkinson <sxw@your-file-system.com>
Date:   Fri Mar 23 21:26:14 2012 +0000

    opr: Add new softsig implementation
    
    Signals and pthreaded applications are a poor match. OpenAFS has had
    the softsig system (currently in src/util/softsig.c) in an attempt to
    alleviate some of these problems. However, that implementation itself
    has a number of problems. It uses signal functions that are unsafe in
    pthreaded applications, and uses pthread_kill within its signal
    handlers. Over the years it has been responsible for a number of
    portability bugs.
    
    The old implementation continues to receive signals in the main thread
    of the application. However, the handler code is run within a seperate
    signal handler thread. When the main thread receives a signal a stub
    handler is invoked, which simply pthread_kill()s the signal handler
    thread.
    
    The new implementation simplifies things by only receiving signals in
    the handler thread. It uses only pthread-compatible signal functions,
    and invokes no code from within async signal handlers.
    
    A complete test suite is supplied.
    
    Change-Id: I4bac68c2f853f1e7578b54ddced3833a97dd3f82
    Reviewed-on: http://gerrit.openafs.org/6947
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Chas Williams <3chas3@gmail.com>
    Reviewed-by: Daria Brashear <shadow@your-file-system.com>

 src/opr/Makefile.in        |    6 ++-
 src/opr/softsig.c          |  161 ++++++++++++++++++++++++++++++++++++++++++++
 src/opr/softsig.h          |   31 +++++++++
 tests/TESTS                |    1 +
 tests/opr/.gitignore       |    1 +
 tests/opr/Makefile.in      |    5 +-
 tests/opr/softsig-helper.c |  140 ++++++++++++++++++++++++++++++++++++++
 tests/opr/softsig-t        |   86 +++++++++++++++++++++++
 8 files changed, 429 insertions(+), 2 deletions(-)

-- 
OpenAFS Master Repository