Index: /trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp	(revision 71564)
+++ /trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp	(revision 71565)
@@ -3031,4 +3031,10 @@
         pVmcbNstGstCtrl->u64InterceptCtrl &= ~(SVM_CTRL_INTERCEPT_RDTSC | SVM_CTRL_INTERCEPT_RDTSCP);
         STAM_COUNTER_INC(&pVCpu->hm.s.StatTscOffset);
+
+        /* Apply the nested-guest VMCB's TSC offset over the guest one. */
+        uTscOffset = HMSvmNstGstApplyTscOffset(pVCpu, uTscOffset);
+
+        /* Update the nested-guest VMCB with the combined TSC offset (of guest and nested-guest). */
+        pVmcbNstGstCtrl->u64TSCOffset = uTscOffset;
     }
     else
@@ -3037,10 +3043,4 @@
         STAM_COUNTER_INC(&pVCpu->hm.s.StatTscIntercept);
     }
-
-    /* Apply the nested-guest VMCB's TSC offset over the guest one. */
-    uTscOffset = HMSvmNstGstApplyTscOffset(pVCpu, uTscOffset);
-
-    /* Update the nested-guest VMCB with the combined TSC offset (of guest and nested-guest). */
-    pVmcbNstGstCtrl->u64TSCOffset = uTscOffset;
 
     /* Finally update the VMCB clean bits since we touched the intercepts as well as the TSC offset. */
