diff options
author | Arnd Bergmann <arnd@arndb.de> | 2009-06-18 13:55:29 -0400 |
---|---|---|
committer | Michal Simek <monstr@monstr.eu> | 2009-07-06 04:26:57 -0400 |
commit | 3183e06863f49a500fc76427db4d60825a26f81b (patch) | |
tree | 749cfd09f4469a2ad08321ad10afbad4d92dfcdb /arch/microblaze/kernel/entry.S | |
parent | 0a58458341fd571e521be542ff746a4a8995980c (diff) |
microblaze: clean up signal handling
When legacy signal handling is disabled, the
arch/microblaze/kernel/signal.c implementation can
be much simpler, as most of it is handled generically
from kernel/signal.c.
This is also a prerequisite for using the generic
asm/unistd.h, which does not provide __NR_sigreturn,
because this macro is referenced by the current signal.c
implementation.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Michal Simek <monstr@monstr.eu>
Diffstat (limited to 'arch/microblaze/kernel/entry.S')
-rw-r--r-- | arch/microblaze/kernel/entry.S | 23 |
1 files changed, 0 insertions, 23 deletions
diff --git a/arch/microblaze/kernel/entry.S b/arch/microblaze/kernel/entry.S index 91a0e7b185dd..ea7107652d8d 100644 --- a/arch/microblaze/kernel/entry.S +++ b/arch/microblaze/kernel/entry.S | |||
@@ -449,17 +449,6 @@ C_ENTRY(sys_execve_wrapper): | |||
449 | brid sys_execve; /* Do real work (tail-call).*/ | 449 | brid sys_execve; /* Do real work (tail-call).*/ |
450 | nop; | 450 | nop; |
451 | 451 | ||
452 | C_ENTRY(sys_sigsuspend_wrapper): | ||
453 | swi r3, r1, PTO+PT_R3; /* restore saved r3, r4 registers */ | ||
454 | swi r4, r1, PTO+PT_R4; | ||
455 | la r6, r1, PTO; /* add user context as 2nd arg */ | ||
456 | bralid r15, sys_sigsuspend; /* Do real work.*/ | ||
457 | nop; | ||
458 | lwi r3, r1, PTO+PT_R3; /* restore saved r3, r4 registers */ | ||
459 | lwi r4, r1, PTO+PT_R4; | ||
460 | bri ret_from_trap /* fall through will not work here due to align */ | ||
461 | nop; | ||
462 | |||
463 | C_ENTRY(sys_rt_sigsuspend_wrapper): | 452 | C_ENTRY(sys_rt_sigsuspend_wrapper): |
464 | swi r3, r1, PTO+PT_R3; /* restore saved r3, r4 registers */ | 453 | swi r3, r1, PTO+PT_R3; /* restore saved r3, r4 registers */ |
465 | swi r4, r1, PTO+PT_R4; | 454 | swi r4, r1, PTO+PT_R4; |
@@ -471,18 +460,6 @@ C_ENTRY(sys_rt_sigsuspend_wrapper): | |||
471 | bri ret_from_trap /* fall through will not work here due to align */ | 460 | bri ret_from_trap /* fall through will not work here due to align */ |
472 | nop; | 461 | nop; |
473 | 462 | ||
474 | |||
475 | C_ENTRY(sys_sigreturn_wrapper): | ||
476 | swi r3, r1, PTO+PT_R3; /* restore saved r3, r4 registers */ | ||
477 | swi r4, r1, PTO+PT_R4; | ||
478 | la r5, r1, PTO; /* add user context as 1st arg */ | ||
479 | brlid r15, sys_sigreturn; /* Do real work.*/ | ||
480 | nop; | ||
481 | lwi r3, r1, PTO+PT_R3; /* restore saved r3, r4 registers */ | ||
482 | lwi r4, r1, PTO+PT_R4; | ||
483 | bri ret_from_trap /* fall through will not work here due to align */ | ||
484 | nop; | ||
485 | |||
486 | C_ENTRY(sys_rt_sigreturn_wrapper): | 463 | C_ENTRY(sys_rt_sigreturn_wrapper): |
487 | swi r3, r1, PTO+PT_R3; /* restore saved r3, r4 registers */ | 464 | swi r3, r1, PTO+PT_R3; /* restore saved r3, r4 registers */ |
488 | swi r4, r1, PTO+PT_R4; | 465 | swi r4, r1, PTO+PT_R4; |