|
@@ -702,7 +702,8 @@ static void kvm_load_guest_xcr0(struct kvm_vcpu *vcpu)
|
|
|
if (kvm_read_cr4_bits(vcpu, X86_CR4_OSXSAVE) &&
|
|
|
!vcpu->guest_xcr0_loaded) {
|
|
|
/* kvm_set_xcr() also depends on this */
|
|
|
- xsetbv(XCR_XFEATURE_ENABLED_MASK, vcpu->arch.xcr0);
|
|
|
+ if (vcpu->arch.xcr0 != host_xcr0)
|
|
|
+ xsetbv(XCR_XFEATURE_ENABLED_MASK, vcpu->arch.xcr0);
|
|
|
vcpu->guest_xcr0_loaded = 1;
|
|
|
}
|
|
|
}
|