patch-1.3.96 linux/arch/sparc/kernel/signal.c
Next file: linux/arch/sparc/kernel/smp.c
Previous file: linux/arch/sparc/kernel/setup.c
Back to the patch index
Back to the overall index
- Lines: 29
- Date:
Thu Apr 25 13:22:05 1996
- Orig file:
v1.3.95/linux/arch/sparc/kernel/signal.c
- Orig date:
Sun Apr 21 19:22:00 1996
diff -u --recursive --new-file v1.3.95/linux/arch/sparc/kernel/signal.c linux/arch/sparc/kernel/signal.c
@@ -1,4 +1,4 @@
-/* $Id: signal.c,v 1.31 1996/04/18 01:00:41 davem Exp $
+/* $Id: signal.c,v 1.32 1996/04/22 19:37:48 davem Exp $
* linux/arch/sparc/kernel/signal.c
*
* Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
@@ -232,6 +232,22 @@
clear_bit(signr, ¤t->signal);
sa = current->sig->action + signr;
signr++;
+ if ((current->flags & PF_PTRACED) && signr != SIGKILL) {
+ current->exit_code = signr;
+ current->state = TASK_STOPPED;
+ notify_parent(current);
+ schedule();
+ if (!(signr = current->exit_code))
+ continue;
+ current->exit_code = 0;
+ if (signr == SIGSTOP)
+ continue;
+ if (_S(signr) & current->blocked) {
+ current->signal |= _S(signr);
+ continue;
+ }
+ sa = current->sig->action + signr - 1;
+ }
if(sa->sa_handler == SIG_IGN) {
if(signr != SIGCHLD)
continue;
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov
with Sam's (original) version of this