aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/x86/include/asm/kvm_host.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h
index d644226737ee..2df5db6fb58b 100644
--- a/arch/x86/include/asm/kvm_host.h
+++ b/arch/x86/include/asm/kvm_host.h
@@ -993,6 +993,10 @@ struct kvm_x86_ops {
993 */ 993 */
994 int (*pre_block)(struct kvm_vcpu *vcpu); 994 int (*pre_block)(struct kvm_vcpu *vcpu);
995 void (*post_block)(struct kvm_vcpu *vcpu); 995 void (*post_block)(struct kvm_vcpu *vcpu);
996
997 void (*vcpu_blocking)(struct kvm_vcpu *vcpu);
998 void (*vcpu_unblocking)(struct kvm_vcpu *vcpu);
999
996 int (*update_pi_irte)(struct kvm *kvm, unsigned int host_irq, 1000 int (*update_pi_irte)(struct kvm *kvm, unsigned int host_irq,
997 uint32_t guest_irq, bool set); 1001 uint32_t guest_irq, bool set);
998}; 1002};
@@ -1344,8 +1348,18 @@ bool kvm_intr_is_single_vcpu(struct kvm *kvm, struct kvm_lapic_irq *irq,
1344void kvm_set_msi_irq(struct kvm_kernel_irq_routing_entry *e, 1348void kvm_set_msi_irq(struct kvm_kernel_irq_routing_entry *e,
1345 struct kvm_lapic_irq *irq); 1349 struct kvm_lapic_irq *irq);
1346 1350
1347static inline void kvm_arch_vcpu_blocking(struct kvm_vcpu *vcpu) {} 1351static inline void kvm_arch_vcpu_blocking(struct kvm_vcpu *vcpu)
1348static inline void kvm_arch_vcpu_unblocking(struct kvm_vcpu *vcpu) {} 1352{
1353 if (kvm_x86_ops->vcpu_blocking)
1354 kvm_x86_ops->vcpu_blocking(vcpu);
1355}
1356
1357static inline void kvm_arch_vcpu_unblocking(struct kvm_vcpu *vcpu)
1358{
1359 if (kvm_x86_ops->vcpu_unblocking)
1360 kvm_x86_ops->vcpu_unblocking(vcpu);
1361}
1362
1349static inline void kvm_arch_vcpu_block_finish(struct kvm_vcpu *vcpu) {} 1363static inline void kvm_arch_vcpu_block_finish(struct kvm_vcpu *vcpu) {}
1350 1364
1351#endif /* _ASM_X86_KVM_HOST_H */ 1365#endif /* _ASM_X86_KVM_HOST_H */