qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PULL 09/19] i386: hvf: inject General Protection Fault whe


From: Paolo Bonzini
Subject: [Qemu-devel] [PULL 09/19] i386: hvf: inject General Protection Fault when vmexit through vmcall
Date: Wed, 20 Dec 2017 19:03:48 +0100

From: Sergio Andres Gomez Del Real <address@hidden>

This patch injects a GP fault when the guest vmexit's by executing a
vmcall instruction.

Signed-off-by: Sergio Andres Gomez Del Real <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
---
 target/i386/hvf-all.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/target/i386/hvf-all.c b/target/i386/hvf-all.c
index 8a5b165e62..5cf1ad0d35 100644
--- a/target/i386/hvf-all.c
+++ b/target/i386/hvf-all.c
@@ -898,7 +898,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);
-- 
2.14.3





reply via email to

[Prev in Thread] Current Thread [Next in Thread]