summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--target/i386/hvf-all.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/target/i386/hvf-all.c b/target/i386/hvf-all.c
index 1df13fbc19..126344f5be 100644
--- a/target/i386/hvf-all.c
+++ b/target/i386/hvf-all.c
@@ -902,7 +902,9 @@ int hvf_vcpu_exec(CPUState *cpu)
             macvm_set_rip(cpu, rip + ins_len);
             break;
         case VMX_REASON_VMCALL:
-            /* TODO: inject #GP fault */
+            env->exception_injected = EXCP0D_GPF;
+            env->has_error_code = true;
+            env->error_code = 0;
             break;
         default:
             error_report("%llx: unhandled exit %llx\n", rip, exit_reason);