Revert "microblaze_mmu_v2: Update signal returning address"
authorMichal Simek <monstr@monstr.eu>
Mon, 23 May 2011 09:38:19 +0000 (11:38 +0200)
committerMichal Simek <monstr@monstr.eu>
Thu, 4 Oct 2012 16:56:39 +0000 (18:56 +0200)
This reverts commit 8b28626a6b1522b39f75d0bf80d5dec23c931f5a.

Offset -8 is wrong because when it is applied then one instruction
before brki r14, 8 is called again when we return.
Offset -4 is correct and brki instruction is called again.

This change came from ancient MMU kernel.

Signed-off-by: Michal Simek <monstr@monstr.eu>
arch/microblaze/kernel/signal.c

index 76b9722557db77e99a3500154a34b8ed6556d958..c1220dbf87cd2726520d9713a6024c1a2fff80c5 100644 (file)
@@ -290,15 +290,7 @@ handle_restart(struct pt_regs *regs, struct k_sigaction *ka, int has_handler)
        case -ERESTARTNOINTR:
 do_restart:
                /* offset of 4 bytes to re-execute trap (brki) instruction */
-#ifndef CONFIG_MMU
                regs->pc -= 4;
-#else
-               /* offset of 8 bytes required = 4 for rtbd
-                  offset, plus 4 for size of
-                       "brki r14,8"
-                  instruction. */
-               regs->pc -= 8;
-#endif
                break;
        }
 }