aboutsummaryrefslogtreecommitdiff
path: root/arch/x86/kvm/kvm_onhyperv.h
diff options
context:
space:
mode:
authorGravatar Sean Christopherson <seanjc@google.com> 2023-04-04 17:31:33 -0700
committerGravatar Sean Christopherson <seanjc@google.com> 2023-04-10 15:17:29 -0700
commit9ed3bf411226f446a9795f2b49a15b9df98d7cf5 (patch)
treedfbe8e6c2ec072d9d97120f4c79d18074b37e110 /arch/x86/kvm/kvm_onhyperv.h
parentKVM: x86: Rename Hyper-V remote TLB hooks to match established scheme (diff)
downloadlinux-9ed3bf411226f446a9795f2b49a15b9df98d7cf5.tar.gz
linux-9ed3bf411226f446a9795f2b49a15b9df98d7cf5.tar.bz2
linux-9ed3bf411226f446a9795f2b49a15b9df98d7cf5.zip
KVM: x86/mmu: Move filling of Hyper-V's TLB range struct into Hyper-V code
Refactor Hyper-V's range-based TLB flushing API to take a gfn+nr_pages pair instead of a struct, and bury said struct in Hyper-V specific code. Passing along two params generates much better code for the common case where KVM is _not_ running on Hyper-V, as forwarding the flush on to Hyper-V's hv_flush_remote_tlbs_range() from kvm_flush_remote_tlbs_range() becomes a tail call. Cc: David Matlack <dmatlack@google.com> Reviewed-by: David Matlack <dmatlack@google.com> Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com> Link: https://lore.kernel.org/r/20230405003133.419177-3-seanjc@google.com Signed-off-by: Sean Christopherson <seanjc@google.com>
Diffstat (limited to 'arch/x86/kvm/kvm_onhyperv.h')
-rw-r--r--arch/x86/kvm/kvm_onhyperv.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kvm/kvm_onhyperv.h b/arch/x86/kvm/kvm_onhyperv.h
index 55d7fcb84cc1..ff127d313242 100644
--- a/arch/x86/kvm/kvm_onhyperv.h
+++ b/arch/x86/kvm/kvm_onhyperv.h
@@ -7,7 +7,7 @@
#define __ARCH_X86_KVM_KVM_ONHYPERV_H__
#if IS_ENABLED(CONFIG_HYPERV)
-int hv_flush_remote_tlbs_range(struct kvm *kvm, struct kvm_tlb_range *range);
+int hv_flush_remote_tlbs_range(struct kvm *kvm, gfn_t gfn, gfn_t nr_pages);
int hv_flush_remote_tlbs(struct kvm *kvm);
void hv_track_root_tdp(struct kvm_vcpu *vcpu, hpa_t root_tdp);
#else /* !CONFIG_HYPERV */