[patch] signal.7: Expand on which thread receives signals

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Per this comment in kernel/signal.c since time immemorial
(i.e., the commit adding it is in the history repo instead of
the main Linux repo):

/*
 * Now find a thread we can wake up to take the signal off the queue.
 *
 * If the main thread wants the signal, it gets first crack.
 * Probably the least surprising to the average bear.
 */

Signed-off-by: Joseph C. Sible <josephcsible@xxxxxxxxx>
---
 man7/signal.7 | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/man7/signal.7 b/man7/signal.7
index 0fd4f66..abf0eb8 100644
--- a/man7/signal.7
+++ b/man7/signal.7
@@ -202,10 +202,14 @@ generated as a
 consequence of executing a specific machine-language instruction
 are thread directed, as are signals targeted at a specific thread using
 .BR pthread_kill (3)).
-A process-directed signal may be delivered to any one of the
-threads that does not currently have the signal blocked.
-If more than one of the threads has the signal unblocked, then the
-kernel chooses an arbitrary thread to which to deliver the signal.
+A process-directed signal may be delivered to any one of the threads
+that does not currently have the signal blocked, according to POSIX.
+On Linux, if the main thread has the signal unblocked, then the kernel
+will always deliver the signal there.
+.\" commit ebf5ebe31d2cd1e0f13e5b65deb0b4af7afd9dc1
+Otherwise, if more than one of the threads has the signal unblocked,
+then the kernel chooses an arbitrary thread to which to deliver the
+signal.
 .PP
 A thread can obtain the set of signals that it currently has pending
 using
-- 
2.7.4



[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux