From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoffer Dall Subject: Re: [PATCH 2/3] arm64: Add HYP interface to flush VM Stage 1/2 TLB entires Date: Fri, 7 Nov 2014 21:20:32 +0100 Message-ID: <20141107202032.GG22848@cbox> References: <1412908447-28247-1-git-send-email-m.smarduch@samsung.com> <1412908447-28247-3-git-send-email-m.smarduch@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org, marc.zyngier@arm.com, catalin.marinas@arm.com, gleb@kernel.org, pbonzini@redhat.com, kvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org To: Mario Smarduch Return-path: Content-Disposition: inline In-Reply-To: <1412908447-28247-3-git-send-email-m.smarduch@samsung.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org List-Id: kvm.vger.kernel.org On Thu, Oct 09, 2014 at 07:34:06PM -0700, Mario Smarduch wrote: > This patch adds HYP VM TLB FLush function. > > Signed-off-by: Mario Smarduch > --- > arch/arm64/kvm/hyp.S | 22 ++++++++++++++++++++++ > 1 file changed, 22 insertions(+) > > diff --git a/arch/arm64/kvm/hyp.S b/arch/arm64/kvm/hyp.S > index b0d1512..117a91c 100644 > --- a/arch/arm64/kvm/hyp.S > +++ b/arch/arm64/kvm/hyp.S > @@ -645,6 +645,28 @@ ENTRY(__kvm_tlb_flush_vmid_ipa) > ret > ENDPROC(__kvm_tlb_flush_vmid_ipa) > > +/** > + * void __kvm_tlb_flush_vmid(struct kvm *kvm) - Flush per-VMID TLBs > + * @struc kvm *kvm - pointer to kvm structure struct > + * > + * Invalidates all Stage 1 and 2 TLB entries for current VMID. > + */ > +ENTRY(__kvm_tlb_flush_vmid) > + dsb ishst > + > + kern_hyp_va x0 > + ldr x2, [x0, #KVM_VTTBR] > + msr vttbr_el2, x2 > + isb > + > + tlbi vmalls12e1is > + dsb ish > + isb > + > + msr vttbr_el2, xzr > + ret > +ENDPROC(__kvm_tlb_flush_vmid) > + > ENTRY(__kvm_flush_vm_context) > dsb ishst > tlbi alle1is > -- > 1.9.1 > Looks good to me: Reviewed-by: Christoffer Dall