From: Paul Mackerras <[EMAIL PROTECTED]>

On ppc, we emulate instructions that cause alignment exceptions.  If we are
single-stepping an instruction and it causes an alignment exception, we
will currently do the next instruction as well before taking the
single-step exception.  This patch fixes that, so we take the single-step
exception after emulating the instruction.

Signed-off-by: Paul Mackerras <[EMAIL PROTECTED]>
Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
---

 25-akpm/arch/ppc/kernel/traps.c |    1 +
 1 files changed, 1 insertion(+)

diff -puN 
arch/ppc/kernel/traps.c~ppc32-fix-single-stepping-of-emulated-instructions 
arch/ppc/kernel/traps.c
--- 
25/arch/ppc/kernel/traps.c~ppc32-fix-single-stepping-of-emulated-instructions   
    2005-04-12 03:21:10.375559576 -0700
+++ 25-akpm/arch/ppc/kernel/traps.c     2005-04-12 03:21:10.378559120 -0700
@@ -679,6 +679,7 @@ void AlignmentException(struct pt_regs *
        fixed = fix_alignment(regs);
        if (fixed == 1) {
                regs->nip += 4; /* skip over emulated instruction */
+               emulate_single_step(regs);
                return;
        }
        if (fixed == -EFAULT) {
_
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to