Index: /trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp	(revision 46828)
+++ /trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp	(revision 46829)
@@ -2156,5 +2156,5 @@
         pVmcb->ctrl.u64VmcbCleanBits &= ~(HMSVM_VMCB_CLEAN_INTERCEPTS | HMSVM_VMCB_CLEAN_TPR);
 
-        Log4(("Setting virtual interrupt pending intercept\n"));
+        Log4(("Setting VINTR intercept\n"));
     }
 }
@@ -2197,6 +2197,8 @@
         if (fInject)
         {
+            Log4(("TPR=%#x\n", pVmcb->ctrl.IntCtrl.n.u8VTPR));
+            hmR0SvmInjectEventVmcb(pVCpu, pVmcb, pCtx, &Event);
             pVCpu->hm.s.Event.fPending = false;
-            hmR0SvmInjectEventVmcb(pVCpu, pVmcb, pCtx, &Event);
+            STAM_COUNTER_INC(&pVCpu->hm.s.StatIntReinject);
         }
         else
@@ -2720,5 +2722,5 @@
                 AssertRC(rc);
             }
-            else if ((uint8_t)(pSvmTransient->u8GuestTpr >> 4) != pVmcb->ctrl.IntCtrl.n.u8VTPR)
+            else if (pSvmTransient->u8GuestTpr != pVmcb->ctrl.IntCtrl.n.u8VTPR)
             {
                 int rc = PDMApicSetTPR(pVCpu, pVmcb->ctrl.IntCtrl.n.u8VTPR << 4);
