[PATCH] SIGURG incorrectly delivered to process

From: Christopher Yeoh (cyeoh@samba.org)
Date: Thu Apr 18 2002 - 00:52:32 EST


If a process is sent a SIGURG signal and it is blocking SIGURG
signals, when the process subsequently unblocks SIGURG signals it will
be terminated even if it is set to the default action (SIG_DFL) which
is specified by SUSv3 to ignore that signal.

The following patch fixes the problem:

--- linux-2.4.18/arch/i386/kernel/signal.c~ Thu Mar 21 16:04:30 2002
+++ linux-2.4.18/arch/i386/kernel/signal.c Thu Apr 18 12:19:37 2002
@@ -658,7 +658,7 @@
                                 continue;
 
                         switch (signr) {
- case SIGCONT: case SIGCHLD: case SIGWINCH:
+ case SIGCONT: case SIGCHLD: case SIGWINCH: case SIGURG:
                                 continue;
 
                         case SIGTSTP: case SIGTTIN: case SIGTTOU:

A quick browse of the other architectures indicates that most (if not
all) of them also need the same fix applied to their arch specific
signal.c files.

Chris

-- 
cyeoh@au.ibm.com
IBM OzLabs Linux Development Group
Canberra, Australia
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Apr 23 2002 - 22:00:20 EST