aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target/i386/hyperv.c11
-rw-r--r--target/i386/hyperv.h6
2 files changed, 8 insertions, 9 deletions
diff --git a/target/i386/hyperv.c b/target/i386/hyperv.c
index fc537e7ca0..68816642c9 100644
--- a/target/i386/hyperv.c
+++ b/target/i386/hyperv.c
@@ -27,14 +27,11 @@ struct HvSintRoute {
unsigned refcount;
};
-uint32_t hyperv_vp_index(X86CPU *cpu)
+static X86CPU *hyperv_find_vcpu(uint32_t vp_index)
{
- return CPU(cpu)->cpu_index;
-}
-
-X86CPU *hyperv_find_vcpu(uint32_t vp_index)
-{
- return X86_CPU(qemu_get_cpu(vp_index));
+ X86CPU *cpu = X86_CPU(qemu_get_cpu(vp_index));
+ assert(hyperv_vp_index(cpu) == vp_index);
+ return cpu;
}
int kvm_hv_handle_exit(X86CPU *cpu, struct kvm_hyperv_exit *exit)
diff --git a/target/i386/hyperv.h b/target/i386/hyperv.h
index 59e9f9a1e1..8d4619c078 100644
--- a/target/i386/hyperv.h
+++ b/target/i386/hyperv.h
@@ -30,7 +30,9 @@ void hyperv_sint_route_unref(HvSintRoute *sint_route);
int hyperv_sint_route_set_sint(HvSintRoute *sint_route);
-uint32_t hyperv_vp_index(X86CPU *cpu);
-X86CPU *hyperv_find_vcpu(uint32_t vp_index);
+static inline uint32_t hyperv_vp_index(X86CPU *cpu)
+{
+ return CPU(cpu)->cpu_index;
+}
#endif