lkml.org 
[lkml]   [1999]   [Feb]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[BUG (also in 2.2)] SIGURG signal to traced processes

A traced program that receives a SIGURG signal (neither caught
nor explicitly ignored) aborts:

--------------------------------------------------------------
(gdb) run
Starting program: /tmp/a.out

Program received signal SIGWINCH, Window size changed.
0x8048424 in main () at prova.c:1
1 void main(void){for(;;);}
(gdb) cont
Continuing.

Program terminated with signal SIGURG, Urgent I/O condition.
The program no longer exists.
(gdb)
--------------------------------------------------------------


I believe that this could be a bug, since the default action of SIGURG
(like SIGWINCH) is to ignore the signal.

The fix obviously consists of adding the SIGURG case in the switch statements
of the do_signal() functions (arch/XXX/kernel/signal.c). For instance:


====================================================
--- linux-2.2.2-pre2/arch/i386/kernel/signal.c Mon Feb 8 19:17:07 1999
+++ linux/arch/i386/kernel/signal.c Mon Feb 8 19:15:56 1999
@@ -670,6 +670,7 @@

switch (signr) {
case SIGCONT: case SIGCHLD: case SIGWINCH:
+ case SIGURG:
continue;

case SIGTSTP: case SIGTTIN: case SIGTTOU:
====================================================

Or is the actual behavior correct?

Marco Cesati


+---------------------------------------------------------------+
| Computer Engineering - Project BRAVO |
+---------------------------------------------------------------+
| University of Rome "Tor Vergata" |
| Dept. of Computer Science, Systems and Industrial Engineering |
| via di Tor Vergata, 00133 Rome (Italy) |
| e-mail: bravo@russell.ce.uniroma2.it |
+---------------------------------------------------------------+
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:50    [W:0.029 / U:0.112 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site