aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorFranck Bui-Huu <fbuihuu@gmail.com>2007-02-05 09:24:23 -0500
committerRalf Baechle <ralf@linux-mips.org>2007-02-10 17:38:46 -0500
commit601dde45f698ee1be5fe03a68b895efe6ca6b858 (patch)
tree81b2d1a4c48937663bac0b5b44ba99e8a122dfe6 /arch
parent36a1f2c24f42fc2531d5e21914db56ce8ee346f6 (diff)
[MIPS] signal: test return value of install_sigtramp()
Signed-off-by: Franck Bui-Huu <fbuihuu@gmail.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/mips/kernel/signal.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/mips/kernel/signal.c b/arch/mips/kernel/signal.c
index 4a707186306..d676805a34b 100644
--- a/arch/mips/kernel/signal.c
+++ b/arch/mips/kernel/signal.c
@@ -184,7 +184,7 @@ int install_sigtramp(unsigned int __user *tramp, unsigned int syscall)
184 */ 184 */
185 185
186 err = __put_user(0x24020000 + syscall, tramp + 0); 186 err = __put_user(0x24020000 + syscall, tramp + 0);
187 err |= __put_user(0x0000000c , tramp + 1); 187 err |= __put_user(0x0000000c , tramp + 1);
188 if (ICACHE_REFILLS_WORKAROUND_WAR) { 188 if (ICACHE_REFILLS_WORKAROUND_WAR) {
189 err |= __put_user(0, tramp + 2); 189 err |= __put_user(0, tramp + 2);
190 err |= __put_user(0, tramp + 3); 190 err |= __put_user(0, tramp + 3);
@@ -400,7 +400,7 @@ int setup_frame(struct k_sigaction * ka, struct pt_regs *regs,
400 if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) 400 if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame)))
401 goto give_sigsegv; 401 goto give_sigsegv;
402 402
403 install_sigtramp(frame->sf_code, __NR_sigreturn); 403 err |= install_sigtramp(frame->sf_code, __NR_sigreturn);
404 404
405 err |= setup_sigcontext(regs, &frame->sf_sc); 405 err |= setup_sigcontext(regs, &frame->sf_sc);
406 err |= __copy_to_user(&frame->sf_mask, set, sizeof(*set)); 406 err |= __copy_to_user(&frame->sf_mask, set, sizeof(*set));
@@ -447,7 +447,7 @@ int setup_rt_frame(struct k_sigaction * ka, struct pt_regs *regs,
447 if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame))) 447 if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame)))
448 goto give_sigsegv; 448 goto give_sigsegv;
449 449
450 install_sigtramp(frame->rs_code, __NR_rt_sigreturn); 450 err |= install_sigtramp(frame->rs_code, __NR_rt_sigreturn);
451 451
452 /* Create siginfo. */ 452 /* Create siginfo. */
453 err |= copy_siginfo_to_user(&frame->rs_info, info); 453 err |= copy_siginfo_to_user(&frame->rs_info, info);