diff --git a/arch/powerpc/lib/sstep.c b/arch/powerpc/lib/sstep.c
index 855457ed09b5..25a5436be6c6 100644
--- a/arch/powerpc/lib/sstep.c
+++ b/arch/powerpc/lib/sstep.c
@@ -2157,11 +2157,15 @@ int analyse_instr(struct instruction_op *op, const 
struct pt_regs *regs,
case 23: /* lwzx */
                case 55:        /* lwzux */
+                       if (u && (ra == 0 || ra == rd))
+                               return -1;

I guess you also need to split case 23 and 55?

- Ravi

Reply via email to