]> git.karo-electronics.de Git - linux-beck.git/commitdiff
KVM: VMX: Improve error reporting during invalid guest state emulation
authorAvi Kivity <avi@redhat.com>
Tue, 12 Jun 2012 17:22:28 +0000 (20:22 +0300)
committerAvi Kivity <avi@redhat.com>
Mon, 9 Jul 2012 11:19:04 +0000 (14:19 +0300)
If instruction emulation fails, report it properly to userspace.

Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/kvm/vmx.c

index a62f92ab1be25638d53361208f194aeffe37dc70..c61eb34a39e7d751dda8f1d00c0a33f4e7504528 100644 (file)
@@ -4996,8 +4996,12 @@ static int handle_invalid_guest_state(struct kvm_vcpu *vcpu)
                        goto out;
                }
 
-               if (err != EMULATE_DONE)
+               if (err != EMULATE_DONE) {
+                       vcpu->run->exit_reason = KVM_EXIT_INTERNAL_ERROR;
+                       vcpu->run->internal.suberror = KVM_INTERNAL_ERROR_EMULATION;
+                       vcpu->run->internal.ndata = 0;
                        return 0;
+               }
 
                if (signal_pending(current))
                        goto out;