arch/x86_64/kernel/signal.c linux-2.6.0-test10
PATCH 1/1 arch/x86_64/kernel/signal.c linux-2.6.0-test10
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.
arch/x86_64/kernel/signal.c 2003-11-24 11:30:18.000000000 -0500 renamed from arch/x86_64/kernel/signal.c 2003-11-23 20:32:33.000000000 -0500 +0 -4
@@ -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;
}Quoted 9 lines · John Blackwood
Hi Andi,
In linux-2.6.0-test10, I believe that there are several lines of code in the
x86_64version ofhandle_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.
Thanks, John. Was a mismerge. I added the change to my tree.
-Andi