Fails when running "while /bin/true; do /bin/true; done". Signed-off-by: Paolo 'Blaisorblade' Giarrusso --- um-linux-2.4.27-paolo/arch/um/kernel/signal_kern.c | 12 ++++-------- 1 files changed, 4 insertions(+), 8 deletions(-) diff -puN arch/um/kernel/signal_kern.c~syscall-security-7 arch/um/kernel/signal_kern.c --- um-linux-2.4.27/arch/um/kernel/signal_kern.c~syscall-security-7 2005-03-29 19:41:25.000000000 +0200 +++ um-linux-2.4.27-paolo/arch/um/kernel/signal_kern.c 2005-03-29 19:41:25.000000000 +0200 @@ -114,12 +114,8 @@ static int handle_signal(struct pt_regs else err = setup_signal_stack_sc(sp, signr, (unsigned long) handler, restorer, regs, &save); - if(err) goto segv; - - return(0); - segv: - force_segv(signr); - return(1); + if(err) + force_segv(signr); } /* @@ -229,8 +225,8 @@ static int kern_do_signal(struct pt_regs } /* Whee! Actually deliver the signal. */ - err = handle_signal(regs, signr, ka, &info, oldset, error); - if(!err) return(1); + handle_signal(regs, signr, ka, &info, oldset); + return(1); } /* Did we come from a system call? */ _