]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/parisc/kernel/signal.c
Merge branch 'linus' into release
[linux-2.6-omap-h63xx.git] / arch / parisc / kernel / signal.c
index 2ce3806f02e1989d5157ac9c9a3a037f40a384fc..f82544225e8e8b43b8ca76664101a849d1e8a7f7 100644 (file)
@@ -182,7 +182,7 @@ give_sigsegv:
        si.si_errno = 0;
        si.si_code = SI_KERNEL;
        si.si_pid = task_pid_vnr(current);
-       si.si_uid = current->uid;
+       si.si_uid = current_uid();
        si.si_addr = &frame->uc;
        force_sig_info(SIGSEGV, &si, current);
        return;
@@ -333,7 +333,7 @@ setup_rt_frame(int sig, struct k_sigaction *ka, siginfo_t *info,
        flush_user_icache_range((unsigned long) &frame->tramp[0],
                           (unsigned long) &frame->tramp[TRAMP_SIZE]);
 
-       /* TRAMP Words 0-4, Lenght 5 = SIGRESTARTBLOCK_TRAMP
+       /* TRAMP Words 0-4, Length 5 = SIGRESTARTBLOCK_TRAMP
         * TRAMP Words 5-9, Length 4 = SIGRETURN_TRAMP
         * So the SIGRETURN_TRAMP is at the end of SIGRESTARTBLOCK_TRAMP
         */
@@ -534,7 +534,8 @@ insert_restart_trampoline(struct pt_regs *regs)
                 * Flushing one cacheline is cheap.
                 * "sync" on bigger (> 4 way) boxes is not.
                 */
-               flush_icache_range(regs->gr[30], regs->gr[30] + 4);
+               flush_user_dcache_range(regs->gr[30], regs->gr[30] + 4);
+               flush_user_icache_range(regs->gr[30], regs->gr[30] + 4);
 
                regs->gr[31] = regs->gr[30] + 8;
                /* Preserve original r28. */