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

Gerrit Code Review
Tue, 26 May 2015 14:06:38 -0400

The following commit has been merged in the master branch:
commit cb0081604ef5369f34279c6eb77eb4d28406f2ac
Author: Simon Wilkinson <>
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
    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
    Tested-by: BuildBot <>
    Reviewed-by: Chas Williams <>
    Reviewed-by: Daria Brashear <>

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

OpenAFS Master Repository