From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753298AbcBAPgl (ORCPT ); Mon, 1 Feb 2016 10:36:41 -0500 Received: from foss.arm.com ([217.140.101.70]:49442 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753039AbcBAPgj (ORCPT ); Mon, 1 Feb 2016 10:36:39 -0500 Date: Mon, 1 Feb 2016 15:36:35 +0000 From: Catalin Marinas To: Marc Zyngier Cc: Christoffer Dall , kvm@vger.kernel.org, Will Deacon , linux-kernel@vger.kernel.org, kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v2 06/21] arm64: KVM: VHE: Patch out use of HVC Message-ID: <20160201153635.GH15514@e104818-lin.cambridge.arm.com> References: <1453737235-16522-1-git-send-email-marc.zyngier@arm.com> <1453737235-16522-7-git-send-email-marc.zyngier@arm.com> <20160201131634.GI1478@cbox> <56AF5ED8.7010303@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <56AF5ED8.7010303@arm.com> 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 Mon, Feb 01, 2016 at 01:34:16PM +0000, Marc Zyngier wrote: > On 01/02/16 13:16, Christoffer Dall wrote: > > On Mon, Jan 25, 2016 at 03:53:40PM +0000, Marc Zyngier wrote: > >> diff --git a/arch/arm64/kvm/hyp/hyp-entry.S b/arch/arm64/kvm/hyp/hyp-entry.S > >> index 93e8d983..9e0683f 100644 > >> --- a/arch/arm64/kvm/hyp/hyp-entry.S > >> +++ b/arch/arm64/kvm/hyp/hyp-entry.S > >> @@ -38,6 +38,32 @@ > >> ldp x0, x1, [sp], #16 > >> .endm > >> > >> +.macro do_el2_call > >> + /* > >> + * Shuffle the parameters before calling the function > >> + * pointed to in x0. Assumes parameters in x[1,2,3]. > >> + */ > >> + stp lr, xzr, [sp, #-16]! > > > > remind me why this pair isn't just doing "str" instead of "stp" with the > > xzr ? > > Because SP has to be aligned on a 16 bytes boundary at all times. You could do something like: sub sp, sp, #16 str lr, [sp] -- Catalin