Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp2515217ybh; Mon, 9 Mar 2020 07:26:31 -0700 (PDT) X-Google-Smtp-Source: ADFU+vsV4K9npyayJ6jPb+2a1znt+guOV8p+E643yrsGFYkhQw4taZiDZGZXVG6vEACMJt+zGo6Q X-Received: by 2002:aca:44b:: with SMTP id 72mr11349203oie.67.1583763991482; Mon, 09 Mar 2020 07:26:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1583763991; cv=none; d=google.com; s=arc-20160816; b=eNF8zv3ZSajOlhoG9xiSWTSk0ZaU4PqyLGlDmgCBa+bVtJewMJ+CFnmu3POfwO3UQT omddcBUbqcpaJZ2UsCIrYyc4khXEtH3lvkzskx6MUkw0oHOqCU413/nk9XBtVLuw576Q 0ZSA/CTZ8/2JA/Yikuu9ZtJxxxpZh/wneFDrUiXbts9ucETsFdq6oSivY9Dc/RCBdvQu YcODncgQm7VkZ5HN1P4S5A21xKCvy8tR+LU4kXthfJPh4ffYYRKkQrCUkIoeJktOePbz 3OBR53oqM2h0mec0SLT5/3prMEUA2QrNZaOwtwE3I1zWopSXgS/mPF3CellpafyoqcWg MpNA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=MLiYKoMvJfyiRITrwiqABWr/9z+JrOJut3LfMf+LDm4=; b=NU5LwMObDfO7XVgH1N+hoVVtPjqGaqUvl2EhYTAcfuzwG1Zp6GLVhO5him0cTdkio3 RS5mQq9tWHsPxHBr3/zEfvTlbuw1qyEx21SOLo0IQXRSToL/ZHZiIG7Ww9Auf4n3rh21 vDUiyZHGXR/MZnm9K3UsmAUtvELGrjk2I0MJ6+xGmwhCSULlavBS8UOmKYyotZERER9R ln7wKqV93wIqqnGh7z2nm9rQtjzoqsp3DnWDDy/ilg4pVQZ37FXOuymgudODcLJNgGQD m/x3nY3vSQvmVJ8y0A8o/apToIOWzEVT1T+gKWfDEm3TGYsvL39V8IaJcJ4KxWaX9xGT SPjA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l15si4269087oic.220.2020.03.09.07.26.19; Mon, 09 Mar 2020 07:26:31 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726825AbgCIOZb (ORCPT + 99 others); Mon, 9 Mar 2020 10:25:31 -0400 Received: from foss.arm.com ([217.140.110.172]:53196 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726703AbgCIOZb (ORCPT ); Mon, 9 Mar 2020 10:25:31 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C805B11D4; Mon, 9 Mar 2020 07:25:30 -0700 (PDT) Received: from localhost (e108754-lin.cambridge.arm.com [10.1.198.53]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 6AC3C3F67D; Mon, 9 Mar 2020 07:25:30 -0700 (PDT) Date: Mon, 9 Mar 2020 14:25:29 +0000 From: Ionela Voinescu To: Marc Zyngier Cc: catalin.marinas@arm.com, will@kernel.org, mark.rutland@arm.com, suzuki.poulose@arm.com, sudeep.holla@arm.com, lukasz.luba@arm.com, valentin.schneider@arm.com, dietmar.eggemann@arm.com, rjw@rjwysocki.net, pkondeti@codeaurora.org, peterz@infradead.org, mingo@redhat.com, vincent.guittot@linaro.org, viresh.kumar@linaro.org, linux-arm-kernel@lists.infradead.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, James Morse , Julien Thierry Subject: Re: [PATCH v5 3/7] arm64/kvm: disable access to AMU registers from kvm guests Message-ID: <20200309142529.GB13343@arm.com> References: <20200226132947.29738-1-ionela.voinescu@arm.com> <20200226132947.29738-4-ionela.voinescu@arm.com> <46b89d0c9704e0a0fb7a4ac2a1fb5b7a@kernel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <46b89d0c9704e0a0fb7a4ac2a1fb5b7a@kernel.org> User-Agent: Mutt/1.9.4 (2018-02-28) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Marc, On Thursday 27 Feb 2020 at 19:58:32 (+0000), Marc Zyngier wrote: [..] > > diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c > > index 3e909b117f0c..44354c812783 100644 > > --- a/arch/arm64/kvm/sys_regs.c > > +++ b/arch/arm64/kvm/sys_regs.c > > @@ -1003,6 +1003,20 @@ static bool access_pmuserenr(struct kvm_vcpu > > *vcpu, struct sys_reg_params *p, > > { SYS_DESC(SYS_PMEVTYPERn_EL0(n)), \ > > access_pmu_evtyper, reset_unknown, (PMEVTYPER0_EL0 + n), } > > > > +static bool access_amu(struct kvm_vcpu *vcpu, struct sys_reg_params *p, > > + const struct sys_reg_desc *r) > > +{ > > + kvm_inject_undefined(vcpu); > > + > > + return false; > > +} > > + > > +/* Macro to expand the AMU counter and type registers*/ > > +#define AMU_AMEVCNTR0_EL0(n) { SYS_DESC(SYS_AMEVCNTR0_EL0(n)), > > access_amu } > > +#define AMU_AMEVTYPE0_EL0(n) { SYS_DESC(SYS_AMEVTYPE0_EL0(n)), > > access_amu } > > +#define AMU_AMEVCNTR1_EL0(n) { SYS_DESC(SYS_AMEVCNTR1_EL0(n)), > > access_amu } > > +#define AMU_AMEVTYPE1_EL0(n) { SYS_DESC(SYS_AMEVTYPE1_EL0(n)), > > access_amu } > > + > > static bool trap_ptrauth(struct kvm_vcpu *vcpu, > > struct sys_reg_params *p, > > const struct sys_reg_desc *rd) > > @@ -1078,8 +1092,10 @@ static u64 read_id_reg(const struct kvm_vcpu > > *vcpu, > > (u32)r->CRn, (u32)r->CRm, (u32)r->Op2); > > u64 val = raz ? 0 : read_sanitised_ftr_reg(id); > > > > - if (id == SYS_ID_AA64PFR0_EL1 && !vcpu_has_sve(vcpu)) { > > - val &= ~(0xfUL << ID_AA64PFR0_SVE_SHIFT); > > + if (id == SYS_ID_AA64PFR0_EL1) { > > + if (!vcpu_has_sve(vcpu)) > > + val &= ~(0xfUL << ID_AA64PFR0_SVE_SHIFT); > > + val &= ~(0xfUL << ID_AA64PFR0_AMU_SHIFT); > > This will definitely conflict with some of the ongoing rework I have[1]. > I'm happy to provide this as a stable branch for you to rebase on top, > or use an arm64 provided branch to rebase my stoff on top. > > Just let me know how you want to proceed. > Catalin added the AMU patches on top of 5.6-rc3 at [1]. Is this okay as a base branch for your patches? Thanks, Ionela. [1] https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git/log/?h=for-next/amu > Thanks, > > M. > > [1] https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git/commit/?h=kvm-arm64/debug-fixes-5.6&id=454fb7398d3626328f7f771c07d21e894e4e1a3b > -- > Jazz is not dead. It just smells funny...