From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757020AbcEEUxe (ORCPT ); Thu, 5 May 2016 16:53:34 -0400 Received: from mail.csclub.uwaterloo.ca ([129.97.134.52]:35091 "EHLO mail.csclub.uwaterloo.ca" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754952AbcEEUxc (ORCPT ); Thu, 5 May 2016 16:53:32 -0400 From: "Lennart Sorensen" Date: Thu, 5 May 2016 16:53:29 -0400 To: linux-kernel@vger.kernel.org Cc: Paul Mackerras , Michael Ellerman , Benjamin Herrenschmidt , linuxppc-dev@lists.ozlabs.org Subject: Re: [PATCH] powerpc: Fix sstep compile on powerpcspe Message-ID: <20160505205329.GG3264@csclub.uwaterloo.ca> References: <20160505204444.GE3264@csclub.uwaterloo.ca> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20160505204444.GE3264@csclub.uwaterloo.ca> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 > --- > 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