[MIPS] signal: test return value of install_sigtramp()
authorFranck Bui-Huu <fbuihuu@gmail.com>
Mon, 5 Feb 2007 14:24:23 +0000 (15:24 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Sat, 10 Feb 2007 22:38:46 +0000 (22:38 +0000)
Signed-off-by: Franck Bui-Huu <fbuihuu@gmail.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/signal.c

index 4a70718630655fa333a81540da0b781e4a223fd3..d676805a34ba053ef7b88fe6eb5fdd977ec2219c 100644 (file)
@@ -184,7 +184,7 @@ int install_sigtramp(unsigned int __user *tramp, unsigned int syscall)
         */
 
        err = __put_user(0x24020000 + syscall, tramp + 0);
-       err |= __put_user(0x0000000c          , tramp + 1);
+       err |= __put_user(0x0000000c         , tramp + 1);
        if (ICACHE_REFILLS_WORKAROUND_WAR) {
                err |= __put_user(0, tramp + 2);
                err |= __put_user(0, tramp + 3);
@@ -400,7 +400,7 @@ int setup_frame(struct k_sigaction * ka, struct pt_regs *regs,
        if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame)))
                goto give_sigsegv;
 
-       install_sigtramp(frame->sf_code, __NR_sigreturn);
+       err |= install_sigtramp(frame->sf_code, __NR_sigreturn);
 
        err |= setup_sigcontext(regs, &frame->sf_sc);
        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,
        if (!access_ok(VERIFY_WRITE, frame, sizeof (*frame)))
                goto give_sigsegv;
 
-       install_sigtramp(frame->rs_code, __NR_rt_sigreturn);
+       err |= install_sigtramp(frame->rs_code, __NR_rt_sigreturn);
 
        /* Create siginfo.  */
        err |= copy_siginfo_to_user(&frame->rs_info, info);