patch-2.4.19 linux-2.4.19/arch/s390x/kernel/signal.c

Next file: linux-2.4.19/arch/s390x/kernel/signal32.c
Previous file: linux-2.4.19/arch/s390x/kernel/setup.c
Back to the patch index
Back to the overall index

diff -urN linux-2.4.18/arch/s390x/kernel/signal.c linux-2.4.19/arch/s390x/kernel/signal.c
@@ -66,17 +66,15 @@
 		err = __put_user(from->si_signo, &to->si_signo);
 		err |= __put_user(from->si_errno, &to->si_errno);
 		err |= __put_user((short)from->si_code, &to->si_code);
-		/* First 32bits of unions are always present.  */
+		/* First 64bits of unions are always present.  */
 		err |= __put_user(from->si_pid, &to->si_pid);
+		err |= __put_user(from->si_uid, &to->si_uid);
 		switch (from->si_code >> 16) {
-		case __SI_FAULT >> 16:
-			break;
 		case __SI_CHLD >> 16:
 			err |= __put_user(from->si_utime, &to->si_utime);
 			err |= __put_user(from->si_stime, &to->si_stime);
 			err |= __put_user(from->si_status, &to->si_status);
 		default:
-			err |= __put_user(from->si_uid, &to->si_uid);
 			break;
 		/* case __SI_RT: This is not generated by the kernel as of now.  */
 		}
@@ -569,10 +567,7 @@
                                 /* FALLTHRU */
 
 			default:
-				sigaddset(&current->pending.signal, signr);
-				recalc_sigpending(current);
-				current->flags |= PF_SIGNALED;
-				do_exit(exit_code);
+				sig_exit(signr, exit_code, &info);
 				/* NOTREACHED */
 			}
 		}

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)