diff options
Diffstat (limited to 'arch/x86/kvm/x86.c')
-rw-r--r-- | arch/x86/kvm/x86.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c index 2966c847d489..1f09552572fa 100644 --- a/arch/x86/kvm/x86.c +++ b/arch/x86/kvm/x86.c | |||
@@ -5979,7 +5979,7 @@ void kvm_load_guest_fpu(struct kvm_vcpu *vcpu) | |||
5979 | */ | 5979 | */ |
5980 | kvm_put_guest_xcr0(vcpu); | 5980 | kvm_put_guest_xcr0(vcpu); |
5981 | vcpu->guest_fpu_loaded = 1; | 5981 | vcpu->guest_fpu_loaded = 1; |
5982 | unlazy_fpu(current); | 5982 | __kernel_fpu_begin(); |
5983 | fpu_restore_checking(&vcpu->arch.guest_fpu); | 5983 | fpu_restore_checking(&vcpu->arch.guest_fpu); |
5984 | trace_kvm_fpu(1); | 5984 | trace_kvm_fpu(1); |
5985 | } | 5985 | } |
@@ -5993,6 +5993,7 @@ void kvm_put_guest_fpu(struct kvm_vcpu *vcpu) | |||
5993 | 5993 | ||
5994 | vcpu->guest_fpu_loaded = 0; | 5994 | vcpu->guest_fpu_loaded = 0; |
5995 | fpu_save_init(&vcpu->arch.guest_fpu); | 5995 | fpu_save_init(&vcpu->arch.guest_fpu); |
5996 | __kernel_fpu_end(); | ||
5996 | ++vcpu->stat.fpu_reload; | 5997 | ++vcpu->stat.fpu_reload; |
5997 | kvm_make_request(KVM_REQ_DEACTIVATE_FPU, vcpu); | 5998 | kvm_make_request(KVM_REQ_DEACTIVATE_FPU, vcpu); |
5998 | trace_kvm_fpu(0); | 5999 | trace_kvm_fpu(0); |