Index: /trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp	(revision 78491)
+++ /trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp	(revision 78492)
@@ -12516,7 +12516,7 @@
 DECLINLINE(VBOXSTRICTRC) hmR0VmxHandleExitNested(PVMCPU pVCpu, PVMXTRANSIENT pVmxTransient)
 {
-    VBOXSTRICTRC   rcStrict = VINF_SUCCESS;
-    uint32_t const rcReason = pVmxTransient->uExitReason;
-    switch (rcReason)
+    VBOXSTRICTRC   rcStrict;
+    uint32_t const uExitReason = pVmxTransient->uExitReason;
+    switch (uExitReason)
     {
         case VMX_EXIT_EPT_MISCONFIG:
@@ -12546,5 +12546,5 @@
                 VMXVEXITINFO ExitInfo;
                 RT_ZERO(ExitInfo);
-                ExitInfo.uReason = pVmxTransient->uExitReason;
+                ExitInfo.uReason = uExitReason;
                 ExitInfo.cbInstr = pVmxTransient->cbInstr;
                 ExitInfo.u64Qual = pVmxTransient->uExitQual;
@@ -12560,5 +12560,5 @@
             int rc = hmR0VmxReadExitInstrLenVmcs(pVmxTransient);
             AssertRCReturn(rc, rc);
-            rcStrict = IEMExecVmxVmexitInstr(pVCpu, VMX_EXIT_CPUID, pVmxTransient->cbInstr);
+            rcStrict = IEMExecVmxVmexitInstr(pVCpu, uExitReason, pVmxTransient->cbInstr);
             break;
         }
@@ -12569,5 +12569,5 @@
             AssertRCReturn(rc, rc);
             if (CPUMIsGuestVmxProcCtlsSet(pVCpu, &pVCpu->cpum.GstCtx, VMX_PROC_CTLS_RDTSC_EXIT))
-                rcStrict = IEMExecVmxVmexitInstr(pVCpu, VMX_EXIT_RDTSC, pVmxTransient->cbInstr);
+                rcStrict = IEMExecVmxVmexitInstr(pVCpu, uExitReason, pVmxTransient->cbInstr);
             else
                 rcStrict = hmR0VmxExitRdtsc(pVCpu, pVmxTransient);
@@ -12575,5 +12575,4 @@
         }
 
-
         case VMX_EXIT_RDTSCP:
         {
@@ -12581,5 +12580,5 @@
             AssertRCReturn(rc, rc);
             if (CPUMIsGuestVmxProcCtlsSet(pVCpu, &pVCpu->cpum.GstCtx, VMX_PROC_CTLS_RDTSC_EXIT))
-                rcStrict = IEMExecVmxVmexitInstr(pVCpu, VMX_EXIT_RDTSCP, pVmxTransient->cbInstr);
+                rcStrict = IEMExecVmxVmexitInstr(pVCpu, uExitReason, pVmxTransient->cbInstr);
             else
                 rcStrict = hmR0VmxExitRdtsc(pVCpu, pVmxTransient);
@@ -12615,5 +12614,4 @@
         case VMX_EXIT_GETSEC:
         case VMX_EXIT_RDPMC:
-#ifdef VBOX_WITH_NESTED_HWVIRT_VMX
         case VMX_EXIT_VMCLEAR:
         case VMX_EXIT_VMLAUNCH:
@@ -12625,5 +12623,4 @@
         case VMX_EXIT_VMXOFF:
         case VMX_EXIT_VMXON:
-#endif
         case VMX_EXIT_TRIPLE_FAULT:
         case VMX_EXIT_NMI_WINDOW:
@@ -12646,5 +12643,6 @@
         case VMX_EXIT_PML_FULL:
         default:
-            return hmR0VmxExitErrUndefined(pVCpu, pVmxTransient);
+            rcStrict = hmR0VmxExitErrUndefined(pVCpu, pVmxTransient);
+            break;
     }
 
