From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750922AbdAQEYW (ORCPT ); Mon, 16 Jan 2017 23:24:22 -0500 Received: from shards.monkeyblade.net ([184.105.139.130]:55758 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750787AbdAQEYV (ORCPT ); Mon, 16 Jan 2017 23:24:21 -0500 Date: Mon, 16 Jan 2017 23:23:59 -0500 (EST) Message-Id: <20170116.232359.2135717859694837287.davem@davemloft.net> To: khalid.aziz@oracle.com Cc: chris.hyser@oracle.com, sowmini.varadhan@oracle.com, tushar.n.dave@oracle.com, akpm@linux-foundation.org, nitin.m.gupta@oracle.com, gerald.schaefer@de.ibm.com, hughd@google.com, kirill.shutemov@linux.intel.com, adam.buchbinder@gmail.com, minchan@kernel.org, allen.pais@oracle.com, viro@zeniv.linux.org.uk, aryabinin@virtuozzo.com, paul.gortmaker@windriver.com, sparclinux@vger.kernel.org, linux-kernel@vger.kernel.org, khalid@gonehiking.org Subject: Re: [PATCH v4 3/4] sparc64: Add support for ADI register fields, ASIs and traps From: David Miller In-Reply-To: References: X-Mailer: Mew version 6.7 on Emacs 25.1 / Mule 6.0 (HANACHIRUSATO) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Mon, 16 Jan 2017 19:25:13 -0800 (PST) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Khalid Aziz Date: Wed, 11 Jan 2017 09:12:53 -0700 > +#define SUN4V_MCD_PRECISE \ > + ldxa [%g0] ASI_SCRATCHPAD, %g2; \ > + ldx [%g2 + HV_FAULT_D_ADDR_OFFSET], %g4; \ > + ldx [%g2 + HV_FAULT_D_CTX_OFFSET], %g5; \ > + ba,pt %xcc, etrap; \ > + rd %pc, %g7; \ > + ba,pt %xcc, sun4v_mcd_detect_precise; \ > + nop; \ > + nop; Always indent instructions which sit in the delay slot of a non-annulled branch, call, or jmpl by one extra space. For example: ba,pt %xcc, 1f nop > +sun4v_mcd_detect_precise: > + or %l4, %g0, %o1 > + or %l5, %g0, %o2 > + call sun4v_mem_corrupt_detect_precise > + add %sp, PTREGS_OFF, %o0 Likewise. Also, just do a normal "mov x, y" instead of the "or x, %g0, y" thing.