From patchwork Thu Nov 15 00:40:45 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Benjamin Herrenschmidt X-Patchwork-Id: 199084 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from ozlabs.org (localhost [IPv6:::1]) by ozlabs.org (Postfix) with ESMTP id 672362C03F1 for ; Thu, 15 Nov 2012 11:41:28 +1100 (EST) Received: from gate.crashing.org (gate.crashing.org [63.228.1.57]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id B71E92C0094 for ; Thu, 15 Nov 2012 11:41:01 +1100 (EST) Received: from [127.0.0.1] (localhost.localdomain [127.0.0.1]) by gate.crashing.org (8.14.1/8.13.8) with ESMTP id qAF0ejX1029517; Wed, 14 Nov 2012 18:40:46 -0600 Message-ID: <1352940045.23412.38.camel@pasglop> Subject: Re: [PATCH 1/6] powerpc: Move branch instruction from ACCOUNT_CPU_USER_ENTRY to caller From: Benjamin Herrenschmidt To: Haren Myneni Date: Thu, 15 Nov 2012 11:40:45 +1100 In-Reply-To: <1351666269.32304.12.camel@hbabu-laptop> References: <1351666269.32304.12.camel@hbabu-laptop> X-Mailer: Evolution 3.2.3-0ubuntu6 Mime-Version: 1.0 Cc: linuxppc-dev@lists.ozlabs.org, mikey@neuling.org, anton@au1.ibm.com, paulus@samba.org X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" On Tue, 2012-10-30 at 23:51 -0700, Haren Myneni wrote: ld r4,excf+EX_R11(r13); /* get back r11 */ \ mfspr r5,SPRN_SPRG_GEN_SCRATCH;/* get back r13 */ \ std r12,GPR12(r1); /* save r12 in stackframe */ \ Please , please, please ... at the very least TEST BUILD the stuff you change... I'm fixing that one up here this time. Ben. --- a/arch/powerpc/kernel/exceptions-64e.S +++ b/arch/powerpc/kernel/exceptions-64e.S @@ -159,8 +159,9 @@ exc_##n##_common: \ std r9,GPR9(r1); /* save r9 in stackframe */ \ std r10,_NIP(r1); /* save SRR0 to stackframe */ \ std r11,_MSR(r1); /* save SRR1 to stackframe */ \ + beq 1f /* if from kernel mode */ Missing semicolon ACCOUNT_CPU_USER_ENTRY(r10,r11);/* accounting (uses cr0+eq) */ \ - ld r3,excf+EX_R10(r13); /* get back r10 */ \ +1: ld r3,excf+EX_R10(r13); /* get back r10 */ \