Re: [PATCH 2/3] arm64: Add HYP interface to flush VM Stage 1/2 TLB entires

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/07/2014 12:20 PM, Christoffer Dall wrote:
> 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 <m.smarduch@xxxxxxxxxxx>
>> ---
>>  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

Got it.
> 
>> + *
>> + * 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 <christoffer.dall@xxxxxxxxxx>
> 

_______________________________________________
kvmarm mailing list
kvmarm@xxxxxxxxxxxxxxxxxxxxx
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm




[Index of Archives]     [Linux KVM]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux