From a514525701dcc93fc8a9179bc8e0f74cc421f517 Mon Sep 17 00:00:00 2001 From: Pekka Enberg Date: Thu, 1 Apr 2010 16:35:38 +0300 Subject: [PATCH] kvm: Setup guest FPU state Use the KVM_SET_FPU ioctl() to set up guest initial FPU state. Signed-off-by: Pekka Enberg --- tools/kvm/include/kvm/kvm.h | 1 + tools/kvm/kvm.c | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/tools/kvm/include/kvm/kvm.h b/tools/kvm/include/kvm/kvm.h index 73d3c857871a..f20988ac3e3e 100644 --- a/tools/kvm/include/kvm/kvm.h +++ b/tools/kvm/include/kvm/kvm.h @@ -25,6 +25,7 @@ struct kvm { struct kvm_regs regs; struct kvm_sregs sregs; + struct kvm_fpu fpu; struct interrupt_table interrupt_table; }; diff --git a/tools/kvm/kvm.c b/tools/kvm/kvm.c index 5c0089caa533..6f43cd33171d 100644 --- a/tools/kvm/kvm.c +++ b/tools/kvm/kvm.c @@ -405,6 +405,14 @@ void kvm__reset_vcpu(struct kvm *self) if (ioctl(self->vcpu_fd, KVM_SET_REGS, &self->regs) < 0) die_perror("KVM_SET_REGS failed"); + self->fpu = (struct kvm_fpu) { + .fcw = 0x37f, + .mxcsr = 0x1f80, + }; + + if (ioctl(self->vcpu_fd, KVM_SET_FPU, &self->fpu) < 0) + die_perror("KVM_SET_FPU failed"); + } void kvm__run(struct kvm *self) -- 2.39.5