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