Re: [PATCH v7 00/39] KVM: x86: hyper-v: Fine-grained TLB flush + L2 TLB flush features

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

 



Paolo Bonzini <pbonzini@xxxxxxxxxx> writes:

> On 6/13/22 15:38, Vitaly Kuznetsov wrote:
>> Changes since v6:
>> - Rebase to the latest kvm/queue [8baacf67c76c], newly introduced
>>    selftests had to be adapted to the overhauled API [blame Sean].
>> - Rename 'entry' to 'flush_all_entry' in hv_tlb_flush_enqueue() [Max].
>> - Add "KVM: selftests: Rename 'evmcs_test' to 'hyperv_evmcs'" patch.
>> - Collect R-b tags.
>> 
>> Original description:
>> 
>> Currently, KVM handles HVCALL_FLUSH_VIRTUAL_ADDRESS_LIST{,EX} requests
>> by flushing the whole VPID and this is sub-optimal. This series introduces
>> the required mechanism to make handling of these requests more
>> fine-grained by flushing individual GVAs only (when requested). On this
>> foundation, "Direct Virtual Flush" Hyper-V feature is implemented. The
>> feature allows L0 to handle Hyper-V TLB flush hypercalls directly at
>> L0 without the need to reflect the exit to L1. This has at least two
>> benefits: reflecting vmexit and the consequent vmenter are avoided + L0
>> has precise information whether the target vCPU is actually running (and
>> thus requires a kick).
>
> I haven't reviewed the selftests part yet, but for the rest I only had 
> two very small comments.

I got back to this today and turns out there's a conflict with 

commit cc5851c6be864c5772944e32df3da322fe3ad415
Author: Sean Christopherson <seanjc@xxxxxxxxxx>
Date:   Wed Jun 8 22:45:15 2022 +0000

    KVM: selftests: Use exception fixup for #UD/#GP Hyper-V MSR/hcall tests
 
in selftest part. It's nothing big but I did some non-trivial changes
when resolving and I think the reslut looks a bit nicer at the end.
Also, I've addresed one of your comments and moved
kvm_hv_get_tlb_flush_fifo()'s 'is_guest_mode' parameter introduction to
PATCH11. I'm going to send out v8 with these changes.

-- 
Vitaly




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux