Message ID | 20181220182850.4579-19-alazar@bitdefender.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | VM introspection | expand |
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index 40c966e83ff6..89e508ca7c8b 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c @@ -866,6 +866,11 @@ static int __kvm_set_xcr(struct kvm_vcpu *vcpu, u32 index, u64 xcr) int kvm_set_xcr(struct kvm_vcpu *vcpu, u32 index, u64 xcr) { +#ifdef CONFIG_KVM_INTROSPECTION + if (xcr != vcpu->arch.xcr0) + kvmi_xsetbv_event(vcpu); +#endif /* CONFIG_KVM_INTROSPECTION */ + if (kvm_x86_ops->get_cpl(vcpu) != 0 || __kvm_set_xcr(vcpu, index, xcr)) { kvm_inject_gp(vcpu, 0);
Notify the guest introspection tool that the extended control register has been changed. Signed-off-by: Mihai Donțu <mdontu@bitdefender.com> --- arch/x86/kvm/x86.c | 5 +++++ 1 file changed, 5 insertions(+)