]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/sh/kernel/signal_32.c
kdump: sh: parse elfcorehdr command line argument
[linux-2.6-omap-h63xx.git] / arch / sh / kernel / signal_32.c
index eee29257a8ae0bdbc4cb26a3a9a1470c88d09876..4bbbde895a5353c41e7ecacd6cf019545c8e8202 100644 (file)
@@ -373,6 +373,7 @@ static int setup_frame(int sig, struct k_sigaction *ka,
                err |= __put_user(OR_R0_R0, &frame->retcode[6]);
                err |= __put_user((__NR_sigreturn), &frame->retcode[7]);
                regs->pr = (unsigned long) frame->retcode;
+               flush_icache_range(regs->pr, regs->pr + sizeof(frame->retcode));
        }
 
        if (err)
@@ -398,8 +399,6 @@ static int setup_frame(int sig, struct k_sigaction *ka,
        pr_debug("SIG deliver (%s:%d): sp=%p pc=%08lx pr=%08lx\n",
                 current->comm, task_pid_nr(current), frame, regs->pc, regs->pr);
 
-       flush_icache_range(regs->pr, regs->pr + sizeof(frame->retcode));
-
        return 0;
 
 give_sigsegv: