[PATCH] arch/x86_64/kernel/signal.c linux-2.6.0-test10

From: John Blackwood
Date: Mon Nov 24 2003 - 15:53:03 EST


Hi Andi,

In linux-2.6.0-test10, I believe that there are several lines of code
in the x86_64 version of handle_signal() that will not ever be executed
and can most likely be removed.

I also believe that there are several lines that should be added to the
end of the do_signal() routine for handling the -ERESTART_RESTARTBLOCK
case.

Thank you.

diff -ru linux-2.6.0-test10/arch/x86_64/kernel/signal.c linux/arch/x86_64/kernel/signal.c
--- linux-2.6.0-test10/arch/x86_64/kernel/signal.c 2003-11-23 20:32:33.000000000 -0500
+++ linux/arch/x86_64/kernel/signal.c 2003-11-24 11:30:18.000000000 -0500
@@ -371,10 +371,6 @@
regs->rax = regs->orig_rax;
regs->rip -= 2;
}
- if (regs->rax == (unsigned long)-ERESTART_RESTARTBLOCK){
- regs->rax = __NR_restart_syscall;
- regs->rip -= 2;
- }
}

#ifdef CONFIG_IA32_EMULATION
@@ -453,6 +449,10 @@
regs->rax = regs->orig_rax;
regs->rip -= 2;
}
+ else if (res == -ERESTART_RESTARTBLOCK) {
+ regs->rax = __NR_restart_syscall;
+ regs->rip -= 2;
+ }
}
return 0;
}


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/