On Thu, May 05, 2016 at 04:44:44PM -0400, Lennart Sorensen wrote: > powerpc: Fix sstep compile on powerpcspe > > Commit be96f63375a14ee8e690856ac77e579c75bd0bae introduced ldarx and stdcx > into the instructions in sstep.c, which are not accepted by the assembler > on powerpcspe, but does seem to be accepted by the normal powerpc assembler > even in 32 bit mode. > > Wrap these two instructions in a __powerpc64__ check like it is everywhere > else in the file. > > Fixes: be96f63375a1 ("powerpc: Split out instruction analysis part of > emulate_step()") > Signed-off-by: Len Sorensen <lsore...@csclub.uwaterloo.ca> > --- > arch/powerpc/lib/sstep.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/arch/powerpc/lib/sstep.c b/arch/powerpc/lib/sstep.c > index dc885b3..6d34310 100644 > --- a/arch/powerpc/lib/sstep.c > +++ b/arch/powerpc/lib/sstep.c > @@ -1818,9 +1818,11 @@ int __kprobes emulate_step(struct pt_regs *regs, > unsigned int instr) > case 4: > __get_user_asmx(val, op.ea, err, "lwarx"); > break; > +#ifdef __powerpc64__ > case 8: > __get_user_asmx(val, op.ea, err, "ldarx"); > break; > +#endif > default: > return 0; > } > @@ -1841,9 +1843,11 @@ int __kprobes emulate_step(struct pt_regs *regs, > unsigned int instr) > case 4: > __put_user_asmx(op.val, op.ea, err, "stwcx.", cr); > break; > +#ifdef __powerpc64__ > case 8: > __put_user_asmx(op.val, op.ea, err, "stdcx.", cr); > break; > +#endif > default: > return 0; > } > -- > 1.7.10.4
Perhaps this should be considered for -stable as well since it is fixing a regression for powerpcspe. -- Len Sorensen _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev