OpenAFS Master Repository branch, master, updated. BP-openafs-stable-1_8_x-416-g2b7af12

Gerrit Code Review gerrit@openafs.org
Fri, 16 Aug 2019 18:44:00 -0400


The following commit has been merged in the master branch:
commit 2b7af1243f46496c0b5973b3fa2a6396243f7613
Author: Cheyenne Wills <cwills@sinenomine.net>
Date:   Fri Aug 9 14:25:03 2019 -0600

    LINUX 5.3.0: Use send_sig instead of force_sig
    
    Linux 5.3.0 commit 3cf5d076fb4d48979f382bc9452765bf8b79e740 "signal
    Remove task parameter from force_sig" (part of siginfo-linus branch)
    changes the parameters for the Linux kernel function force_sig. See LKML
    thread starting at https://lkml.org/lkml/2019/5/22/1351
    
    According to the LKML discussion and the above commit message force_sig
    is only safe to deliver a synchronous signal to the current task. To
    send a signal to another task, we're supposed to use send_sig instead,
    which has been available since at least linux 2.6.12-rc12.
    
    Currently, rx_knet calls force_sig to kill the rxk_ListenerTask.  With
    the Linux 5.3.0 kernel, this module fails to compile due to the above
    noted changes.
    
    Replace the force_sig call with send_sig.  In order to use send_sig, the
    rxk_listener thread must allow SIGKILL and during shutdown (umount)
    SIGKILL must be unblocked for the rxk_listener thread.
    
    Note that SIGKILL is initially blocked on rxk_listener and is only
    unblocked when shutting down the thread.  Having the signal blocked is
    sufficient to prevent unwanted signals from reaching the rxk_listener
    thread during normal operation.
    
    Change-Id: I0c31d66f4ecd887ff9253ba506565592010e8bcb
    Reviewed-on: https://gerrit.openafs.org/13753
    Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>

 src/afs/LINUX/osi_misc.c |   11 +++++++++++
 src/afs/afs_osi.c        |    3 +++
 src/afs/afs_prototypes.h |    2 +-
 src/rx/LINUX/rx_knet.c   |    2 +-
 src/rx/rx_kcommon.c      |    1 +
 5 files changed, 17 insertions(+), 2 deletions(-)

-- 
OpenAFS Master Repository