Skip to content
Fork of OpenAFS from for visualization
C C++ Java Perl Makefile Objective-C Other
Branch: master
Clone or download
CheyenneWills and kaduk 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

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-by: Benjamin Kaduk <>
Tested-by: BuildBot <>
Latest commit 2b7af12 Aug 9, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
build-tools Use libtoolize -i, and .gitignore generated build-tools Nov 6, 2016
doc aklog: require opt-in to enable single-DES in libkrb5 Jul 17, 2019
src LINUX 5.3.0: Use send_sig instead of force_sig Aug 16, 2019
tests Remove src/mcas Apr 19, 2019
.gitignore Remove alpha_dux/alpha_osf references Sep 22, 2018
.gitreview Add .gitreview Feb 4, 2018
.mailmap git: add a mailmap file Sep 26, 2016
.splintrc start-splint-support-20030528 May 28, 2003
CODING rxkad: v5der.c format truncation warnings Jul 26, 2019
CONTRIBUTING openafs: add a contributor code of conduct Sep 19, 2015
INSTALL Remove alpha_dux/alpha_osf references Sep 22, 2018
LICENSE autoconf: import gcc function attribute check macro Aug 10, 2018 Fix libafs_tree's cross-architecture support May 25, 2010 Add rxgk support to userok Mar 24, 2019
NEWS Default to crypt mode for unix clients Aug 5, 2017
NTMakefile build: remove trailing whitespace from makefiles Oct 8, 2014
README Tweak grammar in README Dec 29, 2015
README-WINDOWS Update windows build documentation Jul 2, 2013
acinclude.m4 autoconf: remove unnecessary mkdir during configure Oct 19, 2018 autoconf: updates and cleanup Aug 11, 2018 Run ctfconvert/ctfmerge for all objects Sep 28, 2018
libafsdep Move build support files into build-tools Jul 15, 2010 Use libtoolize -i, and .gitignore generated build-tools Nov 6, 2016


AFS is a distributed file system that enables users to share and
access all of the files stored in a network of computers as easily as
they access the files stored on their local machines. The file system is
called distributed for this exact reason: files can reside on many
different machines, but are available to users on every machine.

OpenAFS 1.0 was originally released by IBM under the terms of the
IBM Public License 1.0 (IPL10).  For details on IPL10 see the LICENSE
file in this directory.  The current OpenAFS distribution is licensed
under a combination of the IPL10 and many other licenses as granted by
the relevant copyright holders.  The LICENSE file in this directory
contains more details, thought it is not a comprehensive statement.

See INSTALL for information about building and installing OpenAFS
on various platforms.

See CODING for developer information and guidelines.

See NEWS for recent changes to OpenAFS.

You can’t perform that action at this time.