aboutsummaryrefslogtreecommitdiffstats
path: root/executor
diff options
context:
space:
mode:
Diffstat (limited to 'executor')
-rw-r--r--executor/common_kvm_amd64_syzos.h9
1 files changed, 3 insertions, 6 deletions
diff --git a/executor/common_kvm_amd64_syzos.h b/executor/common_kvm_amd64_syzos.h
index 26e1297a2..dc092409b 100644
--- a/executor/common_kvm_amd64_syzos.h
+++ b/executor/common_kvm_amd64_syzos.h
@@ -107,7 +107,6 @@ typedef enum {
UEXIT_END = (uint64)-1,
UEXIT_IRQ = (uint64)-2,
UEXIT_ASSERT = (uint64)-3,
- UEXIT_STOP_L2 = (uint64)-4,
} uexit_code;
typedef enum {
@@ -1117,11 +1116,10 @@ guest_handle_nested_vmentry_intel(struct api_call_1* cmd, uint64 cpu_id, bool is
// VMLAUNCH/VMRESUME failed, so VMCS is still valid and can be read.
vmx_error_code = vmread(VMCS_VM_INSTRUCTION_ERROR);
guest_uexit(0xE2E10000 | (uint32)vmx_error_code);
- } else {
- // This path is only taken if VMLAUNCH/VMRESUME truly succeeded (CF=0 and ZF=0)
- // and the L2 guest has run and exited.
- guest_uexit(UEXIT_STOP_L2);
+ return;
}
+ // If we get here, this means VMLAUNCH/VMRESUME truly succeeded (CF=0 and ZF=0)
+ // and the L2 guest has run and exited.
}
GUEST_CODE static noinline void
@@ -1148,7 +1146,6 @@ guest_run_amd_vm(uint64 cpu_id, uint64 vm_id)
// VMRUN succeeded and we have a VM-exit.
uint64 exit_reason = vmcb_read64(vmcb_ptr, VMCB_EXIT_CODE);
nested_vm_exit_handler_amd(exit_reason, cpu_id, vm_id);
- guest_uexit(UEXIT_STOP_L2);
}
GUEST_CODE static noinline void