Index: /trunk/src/VBox/Devices/Network/DevE1000.cpp
===================================================================
--- /trunk/src/VBox/Devices/Network/DevE1000.cpp	(revision 29434)
+++ /trunk/src/VBox/Devices/Network/DevE1000.cpp	(revision 29435)
@@ -1044,14 +1044,14 @@
     STAMCOUNTER                         StatTransmitBytes;
 #if defined(VBOX_WITH_STATISTICS) || defined(E1K_REL_STATS)
-    STAMPROFILEADV                      StatMMIOReadGC;
-    STAMPROFILEADV                      StatMMIOReadHC;
-    STAMPROFILEADV                      StatMMIOWriteGC;
-    STAMPROFILEADV                      StatMMIOWriteHC;
+    STAMPROFILEADV                      StatMMIOReadRZ;
+    STAMPROFILEADV                      StatMMIOReadR3;
+    STAMPROFILEADV                      StatMMIOWriteRZ;
+    STAMPROFILEADV                      StatMMIOWriteR3;
     STAMPROFILEADV                      StatEEPROMRead;
     STAMPROFILEADV                      StatEEPROMWrite;
-    STAMPROFILEADV                      StatIOReadGC;
-    STAMPROFILEADV                      StatIOReadHC;
-    STAMPROFILEADV                      StatIOWriteGC;
-    STAMPROFILEADV                      StatIOWriteHC;
+    STAMPROFILEADV                      StatIOReadRZ;
+    STAMPROFILEADV                      StatIOReadR3;
+    STAMPROFILEADV                      StatIOWriteRZ;
+    STAMPROFILEADV                      StatIOWriteR3;
     STAMPROFILEADV                      StatLateIntTimer;
     STAMCOUNTER                         StatLateInts;
@@ -1061,6 +1061,8 @@
     STAMPROFILEADV                      StatReceiveFilter;
     STAMPROFILEADV                      StatReceiveStore;
-    STAMPROFILEADV                      StatTransmit;
-    STAMPROFILE                         StatTransmitSend;
+    STAMPROFILEADV                      StatTransmitRZ;
+    STAMPROFILEADV                      StatTransmitR3;
+    STAMPROFILE                         StatTransmitSendRZ;
+    STAMPROFILE                         StatTransmitSendR3;
     STAMPROFILE                         StatRxOverflow;
     STAMCOUNTER                         StatRxOverflowWakeup;
@@ -3201,7 +3203,7 @@
             //e1kCsLeave(pState);
             e1kMutexRelease(pState);
-            STAM_PROFILE_START(&pState->StatTransmitSend, a);
+            STAM_PROFILE_START(&pState->CTX_SUFF_Z(StatTransmitSend), a);
             rc = pDrv->pfnSendBuf(pDrv, pSg, fOnWorkerThread);
-            STAM_PROFILE_STOP(&pState->StatTransmitSend, a);
+            STAM_PROFILE_STOP(&pState->CTX_SUFF_Z(StatTransmitSend), a);
             e1kMutexAcquire(pState, VERR_SEM_BUSY, RT_SRC_POS);
             //e1kCsEnter(pState, RT_SRC_POS);
@@ -3622,5 +3624,5 @@
                              &pState->StatTxDescTSEData:
                              &pState->StatTxDescData);
-            STAM_PROFILE_ADV_START(&pState->StatTransmit, a);
+            STAM_PROFILE_ADV_START(&pState->CTX_SUFF_Z(StatTransmit), a);
             E1K_INC_ISTAT_CNT(pState->uStatDescDat);
 
@@ -3708,5 +3710,5 @@
 
             e1kDescReport(pState, pDesc, addr);
-            STAM_PROFILE_ADV_STOP(&pState->StatTransmit, a);
+            STAM_PROFILE_ADV_STOP(&pState->CTX_SUFF_Z(StatTransmit), a);
             break;
         }
@@ -3720,5 +3722,5 @@
             }
             STAM_COUNTER_INC(&pState->StatTxDescLegacy);
-            STAM_PROFILE_ADV_START(&pState->StatTransmit, a);
+            STAM_PROFILE_ADV_START(&pState->CTX_SUFF_Z(StatTransmit), a);
 
             /* First fragment: allocate new buffer. */
@@ -3750,5 +3752,5 @@
 
             e1kDescReport(pState, pDesc, addr);
-            STAM_PROFILE_ADV_STOP(&pState->StatTransmit, a);
+            STAM_PROFILE_ADV_STOP(&pState->CTX_SUFF_Z(StatTransmit), a);
             break;
 
@@ -3808,5 +3810,5 @@
             }
 
-            STAM_PROFILE_ADV_STOP(&pState->StatTransmit, a);
+            STAM_PROFILE_ADV_STOP(&pState->CTX_SUFF_Z(StatTransmit), a);
         }
 
@@ -4358,10 +4360,10 @@
     E1KSTATE  *pState = PDMINS_2_DATA(pDevIns, E1KSTATE *);
     uint32_t  uOffset = GCPhysAddr - pState->addrMMReg;
-    STAM_PROFILE_ADV_START(&pState->CTXSUFF(StatMMIORead), a);
+    STAM_PROFILE_ADV_START(&pState->CTX_SUFF_Z(StatMMIORead), a);
 
     Assert(uOffset < E1K_MM_SIZE);
 
     int rc = e1kRegRead(pState, uOffset, pv, cb);
-    STAM_PROFILE_ADV_STOP(&pState->CTXSUFF(StatMMIORead), a);
+    STAM_PROFILE_ADV_STOP(&pState->CTX_SUFF_Z(StatMMIORead), a);
     return rc;
 }
@@ -4386,5 +4388,5 @@
     uint32_t  uOffset = GCPhysAddr - pState->addrMMReg;
     int       rc;
-    STAM_PROFILE_ADV_START(&pState->CTXSUFF(StatMMIOWrite), a);
+    STAM_PROFILE_ADV_START(&pState->CTX_SUFF_Z(StatMMIOWrite), a);
 
     Assert(uOffset < E1K_MM_SIZE);
@@ -4397,5 +4399,5 @@
         rc = e1kRegWrite(pState, uOffset, pv, cb);
 
-    STAM_PROFILE_ADV_STOP(&pState->CTXSUFF(StatMMIOWrite), a);
+    STAM_PROFILE_ADV_STOP(&pState->CTX_SUFF_Z(StatMMIOWrite), a);
     return rc;
 }
@@ -4419,5 +4421,5 @@
     int         rc     = VINF_SUCCESS;
     const char *szInst = INSTANCE(pState);
-    STAM_PROFILE_ADV_START(&pState->CTXSUFF(StatIORead), a);
+    STAM_PROFILE_ADV_START(&pState->CTX_SUFF_Z(StatIORead), a);
 
     port -= pState->addrIOPort;
@@ -4447,5 +4449,5 @@
         }
 
-    STAM_PROFILE_ADV_STOP(&pState->CTXSUFF(StatIORead), a);
+    STAM_PROFILE_ADV_STOP(&pState->CTX_SUFF_Z(StatIORead), a);
     return rc;
 }
@@ -4470,5 +4472,5 @@
     int         rc     = VINF_SUCCESS;
     const char *szInst = INSTANCE(pState);
-    STAM_PROFILE_ADV_START(&pState->CTXSUFF(StatIOWrite), a);
+    STAM_PROFILE_ADV_START(&pState->CTX_SUFF_Z(StatIOWrite), a);
 
     E1kLog2(("%s e1kIOPortOut: port=%RTiop value=%08x\n", szInst, port, u32));
@@ -4503,5 +4505,5 @@
     }
 
-    STAM_PROFILE_ADV_STOP(&pState->CTXSUFF(StatIOWrite), a);
+    STAM_PROFILE_ADV_STOP(&pState->CTX_SUFF_Z(StatIOWrite), a);
     return rc;
 }
@@ -5846,14 +5848,14 @@
 
 #if defined(VBOX_WITH_STATISTICS) || defined(E1K_REL_STATS)
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatMMIOReadGC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO reads in GC",         "/Devices/E1k%d/MMIO/ReadGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatMMIOReadHC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO reads in HC",         "/Devices/E1k%d/MMIO/ReadHC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatMMIOWriteGC,        STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO writes in GC",        "/Devices/E1k%d/MMIO/WriteGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatMMIOWriteHC,        STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO writes in HC",        "/Devices/E1k%d/MMIO/WriteHC", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatMMIOReadRZ,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO reads in RZ",         "/Devices/E1k%d/MMIO/ReadRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatMMIOReadR3,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO reads in R3",         "/Devices/E1k%d/MMIO/ReadR3", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatMMIOWriteRZ,        STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO writes in RZ",        "/Devices/E1k%d/MMIO/WriteRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatMMIOWriteR3,        STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO writes in R3",        "/Devices/E1k%d/MMIO/WriteR3", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatEEPROMRead,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling EEPROM reads",             "/Devices/E1k%d/EEPROM/Read", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatEEPROMWrite,        STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling EEPROM writes",            "/Devices/E1k%d/EEPROM/Write", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatIOReadGC,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO reads in GC",           "/Devices/E1k%d/IO/ReadGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatIOReadHC,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO reads in HC",           "/Devices/E1k%d/IO/ReadHC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatIOWriteGC,          STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO writes in GC",          "/Devices/E1k%d/IO/WriteGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatIOWriteHC,          STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO writes in HC",          "/Devices/E1k%d/IO/WriteHC", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatIOReadRZ,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO reads in RZ",           "/Devices/E1k%d/IO/ReadRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatIOReadR3,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO reads in R3",           "/Devices/E1k%d/IO/ReadR3", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatIOWriteRZ,          STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO writes in RZ",          "/Devices/E1k%d/IO/WriteRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatIOWriteR3,          STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO writes in R3",          "/Devices/E1k%d/IO/WriteR3", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatLateIntTimer,       STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling late int timer",           "/Devices/E1k%d/LateInt/Timer", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatLateInts,           STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Number of late interrupts",          "/Devices/E1k%d/LateInt/Occured", iInstance);
@@ -5868,9 +5870,11 @@
     PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatReceiveBytes,       STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_BYTES,          "Amount of data received",            "/Devices/E1k%d/ReceiveBytes", iInstance);
 #if defined(VBOX_WITH_STATISTICS) || defined(E1K_REL_STATS)
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatTransmit,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling transmits in HC",          "/Devices/E1k%d/Transmit/Total", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatTransmitRZ,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling transmits in RZ",          "/Devices/E1k%d/Transmit/TotalRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatTransmitR3,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling transmits in R3",          "/Devices/E1k%d/Transmit/TotalR3", iInstance);
 #endif /* VBOX_WITH_STATISTICS || E1K_REL_STATS */
     PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatTransmitBytes,      STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_BYTES,          "Amount of data transmitted",         "/Devices/E1k%d/TransmitBytes", iInstance);
 #if defined(VBOX_WITH_STATISTICS) || defined(E1K_REL_STATS)
-    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatTransmitSend,       STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling send transmit in HC",      "/Devices/E1k%d/Transmit/Send", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatTransmitSendRZ,     STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling send transmit in RZ",      "/Devices/E1k%d/Transmit/SendRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatTransmitSendR3,     STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling send transmit in R3",      "/Devices/E1k%d/Transmit/SendR3", iInstance);
 
     PDMDevHlpSTAMRegisterF(pDevIns, &pState->StatTxDescCtxNormal,    STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Number of normal context descriptors","/Devices/E1k%d/TxDesc/ContexNormal", iInstance);
Index: /trunk/src/VBox/Devices/Network/DevPCNet.cpp
===================================================================
--- /trunk/src/VBox/Devices/Network/DevPCNet.cpp	(revision 29434)
+++ /trunk/src/VBox/Devices/Network/DevPCNet.cpp	(revision 29435)
@@ -272,26 +272,28 @@
     STAMCOUNTER                         StatTransmitBytes;
 #ifdef VBOX_WITH_STATISTICS
-    STAMPROFILEADV                      StatMMIOReadGC;
-    STAMPROFILEADV                      StatMMIOReadHC;
-    STAMPROFILEADV                      StatMMIOWriteGC;
-    STAMPROFILEADV                      StatMMIOWriteHC;
+    STAMPROFILEADV                      StatMMIOReadRZ;
+    STAMPROFILEADV                      StatMMIOReadR3;
+    STAMPROFILEADV                      StatMMIOWriteRZ;
+    STAMPROFILEADV                      StatMMIOWriteR3;
     STAMPROFILEADV                      StatAPROMRead;
     STAMPROFILEADV                      StatAPROMWrite;
-    STAMPROFILEADV                      StatIOReadGC;
-    STAMPROFILEADV                      StatIOReadHC;
-    STAMPROFILEADV                      StatIOWriteGC;
-    STAMPROFILEADV                      StatIOWriteHC;
+    STAMPROFILEADV                      StatIOReadRZ;
+    STAMPROFILEADV                      StatIOReadR3;
+    STAMPROFILEADV                      StatIOWriteRZ;
+    STAMPROFILEADV                      StatIOWriteR3;
     STAMPROFILEADV                      StatTimer;
     STAMPROFILEADV                      StatReceive;
-    STAMPROFILEADV                      StatTransmit;
+    STAMPROFILEADV                      StatTransmitR3;
+    STAMPROFILEADV                      StatTransmitRZ;
     STAMCOUNTER                         StatTransmitCase1;
     STAMCOUNTER                         StatTransmitCase2;
-    STAMPROFILE                         StatTransmitSend;
-    STAMPROFILEADV                      StatTdtePollGC;
-    STAMPROFILEADV                      StatTdtePollHC;
-    STAMPROFILEADV                      StatTmdStoreGC;
-    STAMPROFILEADV                      StatTmdStoreHC;
-    STAMPROFILEADV                      StatRdtePollGC;
-    STAMPROFILEADV                      StatRdtePollHC;
+    STAMPROFILE                         StatTransmitSendR3;
+    STAMPROFILE                         StatTransmitSendRZ;
+    STAMPROFILEADV                      StatTdtePollRZ;
+    STAMPROFILEADV                      StatTdtePollR3;
+    STAMPROFILEADV                      StatTmdStoreRZ;
+    STAMPROFILEADV                      StatTmdStoreR3;
+    STAMPROFILEADV                      StatRdtePollR3;
+    STAMPROFILEADV                      StatRdtePollRZ;
     STAMPROFILE                         StatRxOverflow;
     STAMCOUNTER                         StatRxOverflowWakeup;
@@ -305,15 +307,15 @@
     STAMCOUNTER                         StatRCVRingWrite;
     STAMCOUNTER                         StatTXRingWrite;
-    STAMCOUNTER                         StatRingWriteHC;
+    STAMCOUNTER                         StatRingWriteR3;
     STAMCOUNTER                         StatRingWriteR0;
-    STAMCOUNTER                         StatRingWriteGC;
-
-    STAMCOUNTER                         StatRingWriteFailedHC;
+    STAMCOUNTER                         StatRingWriteRC;
+
+    STAMCOUNTER                         StatRingWriteFailedR3;
     STAMCOUNTER                         StatRingWriteFailedR0;
-    STAMCOUNTER                         StatRingWriteFailedGC;
-
-    STAMCOUNTER                         StatRingWriteOutsideHC;
+    STAMCOUNTER                         StatRingWriteFailedRC;
+
+    STAMCOUNTER                         StatRingWriteOutsideR3;
     STAMCOUNTER                         StatRingWriteOutsideR0;
-    STAMCOUNTER                         StatRingWriteOutsideGC;
+    STAMCOUNTER                         StatRingWriteOutsideRC;
 # endif
 #endif /* VBOX_WITH_STATISTICS */
@@ -692,5 +694,5 @@
 DECLINLINE(void) pcnetTmdStorePassHost(PCNetState *pThis, TMD *tmd, RTGCPHYS32 addr)
 {
-    STAM_PROFILE_ADV_START(&pThis->CTXSUFF(StatTmdStore), a);
+    STAM_PROFILE_ADV_START(&pThis->CTX_SUFF_Z(StatTmdStore), a);
     PPDMDEVINS pDevIns = PCNETSTATE_2_DEVINS(pThis);
     if (pThis->fPrivIfEnabled)
@@ -734,5 +736,5 @@
         PDMDevHlpPhysWrite(pDevIns, addr+7, (uint8_t*)xda + 7, 1);
     }
-    STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatTmdStore), a);
+    STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatTmdStore), a);
 }
 
@@ -1674,5 +1676,5 @@
 static void pcnetRdtePoll(PCNetState *pThis, bool fSkipCurrent=false)
 {
-    STAM_PROFILE_ADV_START(&pThis->CTXSUFF(StatRdtePoll), a);
+    STAM_PROFILE_ADV_START(&pThis->CTX_SUFF_Z(StatRdtePoll), a);
     /* assume lack of a next receive descriptor */
     CSR_NRST(pThis) = 0;
@@ -1697,5 +1699,5 @@
             if (!pcnetRmdLoad(pThis, &rmd, PHYSADDR(pThis, addr), true))
             {
-                STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatRdtePoll), a);
+                STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatRdtePoll), a);
                 return;
             }
@@ -1719,5 +1721,5 @@
             else
             {
-                STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatRdtePoll), a);
+                STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatRdtePoll), a);
                 /* This is not problematic since we don't own the descriptor
                  * We actually do own it, otherwise pcnetRmdLoad would have returned false.
@@ -1741,5 +1743,5 @@
         if (!pcnetRmdLoad(pThis, &rmd, PHYSADDR(pThis, addr), true))
         {
-            STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatRdtePoll), a);
+            STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatRdtePoll), a);
             return;
         }
@@ -1753,5 +1755,5 @@
         else
         {
-            STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatRdtePoll), a);
+            STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatRdtePoll), a);
             /* This is not problematic since we don't own the descriptor
              * We actually do own it, otherwise pcnetRmdLoad would have returned false.
@@ -1773,5 +1775,5 @@
         CSR_CRBC(pThis) = CSR_NRBC(pThis) = CSR_CRST(pThis) = 0;
     }
-    STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatRdtePoll), a);
+    STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatRdtePoll), a);
 }
 
@@ -1782,5 +1784,5 @@
 static int pcnetTdtePoll(PCNetState *pThis, TMD *tmd)
 {
-    STAM_PROFILE_ADV_START(&pThis->CTXSUFF(StatTdtePoll), a);
+    STAM_PROFILE_ADV_START(&pThis->CTX_SUFF_Z(StatTdtePoll), a);
     if (RT_LIKELY(pThis->GCTDRA))
     {
@@ -1789,5 +1791,5 @@
         if (!pcnetTmdLoad(pThis, tmd, PHYSADDR(pThis, cxda), true))
         {
-            STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatTdtePoll), a);
+            STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatTdtePoll), a);
             return 0;
         }
@@ -1795,5 +1797,5 @@
         if (RT_UNLIKELY(tmd->tmd1.ones != 15))
         {
-            STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatTdtePoll), a);
+            STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatTdtePoll), a);
             LogRel(("PCNet#%d: BAD TMD XDA=%#010x\n",
                     PCNET_INST_NR, PHYSADDR(pThis, cxda)));
@@ -1810,5 +1812,5 @@
         CSR_CXBC(pThis) = tmd->tmd1.bcnt;
         CSR_CXST(pThis) = ((uint32_t *)tmd)[1] >> 16;
-        STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatTdtePoll), a);
+        STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatTdtePoll), a);
         return CARD_IS_OWNER(CSR_CXST(pThis));
     }
@@ -1818,5 +1820,5 @@
         CSR_CXDA(pThis) = 0;
         CSR_CXBC(pThis) = CSR_CXST(pThis) = 0;
-        STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatTdtePoll), a);
+        STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatTdtePoll), a);
         return 0;
     }
@@ -2170,5 +2172,5 @@
          *        the loop and make it part of the driver<->device contract, saving
          *        critsect mess down in DrvIntNet. */
-        STAM_PROFILE_START(&pThis->StatTransmitSend, a);
+        STAM_PROFILE_START(&pThis->CTX_SUFF_Z(StatTransmitSend), a);
         if (pSgBuf->cbUsed > 70) /* unqualified guess */
             pThis->Led.Asserted.s.fWriting = pThis->Led.Actual.s.fWriting = 1;
@@ -2184,5 +2186,5 @@
 
         pThis->Led.Actual.s.fWriting = 0;
-        STAM_PROFILE_STOP(&pThis->StatTransmitSend, a);
+        STAM_PROFILE_STOP(&pThis->CTX_SUFF_Z(StatTransmitSend), a);
     }
     return rc;
@@ -2399,5 +2401,5 @@
     int         rc;
     unsigned    cFlushIrq = 0;
-    STAM_PROFILE_ADV_START(&pThis->StatTransmit, a);
+    STAM_PROFILE_ADV_START(&pThis->CTX_SUFF_Z(StatTransmit), a);
     do
     {
@@ -2448,5 +2450,5 @@
                     else if (rc == VERR_TRY_AGAIN)
                     {
-                        STAM_PROFILE_ADV_STOP(&pThis->StatTransmit, a);
+                        STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatTransmit), a);
                         return VINF_SUCCESS;
                     }
@@ -2507,5 +2509,5 @@
             if (rc == VERR_TRY_AGAIN)
             {
-                STAM_PROFILE_ADV_STOP(&pThis->StatTransmit, a);
+                STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatTransmit), a);
                 return VINF_SUCCESS;
             }
@@ -2628,5 +2630,5 @@
     }
 
-    STAM_PROFILE_ADV_STOP(&pThis->StatTransmit, a);
+    STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatTransmit), a);
 
     return VINF_SUCCESS;
@@ -3716,5 +3718,5 @@
     int         rc    = VINF_SUCCESS;
 
-    STAM_PROFILE_ADV_START(&pThis->CTXSUFF(StatIORead), a);
+    STAM_PROFILE_ADV_START(&pThis->CTX_SUFF_Z(StatIORead), a);
     rc = PDMCritSectEnter(&pThis->CritSect, VINF_IOM_HC_IOPORT_READ);
     if (RT_LIKELY(rc == VINF_SUCCESS))
@@ -3732,5 +3734,5 @@
         PDMCritSectLeave(&pThis->CritSect);
     }
-    STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatIORead), a);
+    STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatIORead), a);
     Log2(("#%d pcnetIOPortRead: Port=%RTiop *pu32=%#RX32 cb=%d rc=%Rrc\n", PCNET_INST_NR, Port, *pu32, cb, rc));
 #ifdef LOG_ENABLED
@@ -3759,5 +3761,5 @@
     int         rc    = VINF_SUCCESS;
 
-    STAM_PROFILE_ADV_START(&pThis->CTXSUFF(StatIOWrite), a);
+    STAM_PROFILE_ADV_START(&pThis->CTX_SUFF_Z(StatIOWrite), a);
     rc = PDMCritSectEnter(&pThis->CritSect, VINF_IOM_HC_IOPORT_WRITE);
     if (RT_LIKELY(rc == VINF_SUCCESS))
@@ -3775,5 +3777,5 @@
         PDMCritSectLeave(&pThis->CritSect);
     }
-    STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatIOWrite), a);
+    STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatIOWrite), a);
     Log2(("#%d pcnetIOPortWrite: Port=%RTiop u32=%#RX32 cb=%d rc=%Rrc\n", PCNET_INST_NR, Port, u32, cb, rc));
 #ifdef LOG_ENABLED
@@ -3807,5 +3809,5 @@
     if (GCPhysAddr - pThis->MMIOBase < PCNET_PNPMMIO_SIZE)
     {
-        STAM_PROFILE_ADV_START(&pThis->CTXSUFF(StatMMIORead), a);
+        STAM_PROFILE_ADV_START(&pThis->CTX_SUFF_Z(StatMMIORead), a);
         rc = PDMCritSectEnter(&pThis->CritSect, VINF_IOM_HC_MMIO_READ);
         if (RT_LIKELY(rc == VINF_SUCCESS))
@@ -3823,5 +3825,5 @@
             PDMCritSectLeave(&pThis->CritSect);
         }
-        STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatMMIORead), a);
+        STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatMMIORead), a);
     }
     else
@@ -3860,5 +3862,5 @@
     if (GCPhysAddr - pThis->MMIOBase < PCNET_PNPMMIO_SIZE)
     {
-        STAM_PROFILE_ADV_START(&pThis->CTXSUFF(StatMMIOWrite), a);
+        STAM_PROFILE_ADV_START(&pThis->CTX_SUFF_Z(StatMMIOWrite), a);
         rc = PDMCritSectEnter(&pThis->CritSect, VINF_IOM_HC_MMIO_WRITE);
         if (RT_LIKELY(rc == VINF_SUCCESS))
@@ -3878,5 +3880,5 @@
         // else rc == VINF_IOM_HC_MMIO_WRITE => handle in ring3
 
-        STAM_PROFILE_ADV_STOP(&pThis->CTXSUFF(StatMMIOWrite), a);
+        STAM_PROFILE_ADV_STOP(&pThis->CTX_SUFF_Z(StatMMIOWrite), a);
     }
     LogFlow(("#%d pcnetMMIOWrite: pvUser=%p:{%.*Rhxs} cb=%d GCPhysAddr=%RGp rc=%Rrc\n",
@@ -5282,14 +5284,14 @@
 
 #ifdef VBOX_WITH_STATISTICS
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatMMIOReadGC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO reads in GC",         "/Devices/PCNet%d/MMIO/ReadGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatMMIOReadHC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO reads in HC",         "/Devices/PCNet%d/MMIO/ReadHC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatMMIOWriteGC,        STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO writes in GC",        "/Devices/PCNet%d/MMIO/WriteGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatMMIOWriteHC,        STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO writes in HC",        "/Devices/PCNet%d/MMIO/WriteHC", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatMMIOReadRZ,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO reads in RZ",         "/Devices/PCNet%d/MMIO/ReadRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatMMIOReadR3,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO reads in R3",         "/Devices/PCNet%d/MMIO/ReadR3", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatMMIOWriteRZ,        STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO writes in RZ",        "/Devices/PCNet%d/MMIO/WriteRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatMMIOWriteR3,        STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling MMIO writes in R3",        "/Devices/PCNet%d/MMIO/WriteR3", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatAPROMRead,          STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling APROM reads",              "/Devices/PCNet%d/IO/APROMRead", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatAPROMWrite,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling APROM writes",             "/Devices/PCNet%d/IO/APROMWrite", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatIOReadGC,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO reads in GC",           "/Devices/PCNet%d/IO/ReadGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatIOReadHC,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO reads in HC",           "/Devices/PCNet%d/IO/ReadHC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatIOWriteGC,          STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO writes in GC",          "/Devices/PCNet%d/IO/WriteGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatIOWriteHC,          STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO writes in HC",          "/Devices/PCNet%d/IO/WriteHC", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatIOReadRZ,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO reads in RZ",           "/Devices/PCNet%d/IO/ReadRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatIOReadR3,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO reads in R3",           "/Devices/PCNet%d/IO/ReadR3", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatIOWriteRZ,          STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO writes in RZ",          "/Devices/PCNet%d/IO/WriteRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatIOWriteR3,          STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling IO writes in R3",          "/Devices/PCNet%d/IO/WriteR3", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTimer,              STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling Timer",                    "/Devices/PCNet%d/Timer", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatReceive,            STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling receive",                  "/Devices/PCNet%d/Receive", iInstance);
@@ -5301,16 +5303,18 @@
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTransmitCase1,      STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Single descriptor transmit",         "/Devices/PCNet%d/Transmit/Case1", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTransmitCase2,      STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Multi descriptor transmit",          "/Devices/PCNet%d/Transmit/Case2", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTransmit,           STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling transmits in HC",          "/Devices/PCNet%d/Transmit/Total", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTransmitRZ,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling transmits in RZ",          "/Devices/PCNet%d/Transmit/TotalRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTransmitR3,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling transmits in R3",          "/Devices/PCNet%d/Transmit/TotalR3", iInstance);
 #endif
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTransmitBytes,      STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_BYTES,          "Amount of data transmitted",         "/Devices/PCNet%d/TransmitBytes", iInstance);
 #ifdef VBOX_WITH_STATISTICS
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTransmitSend,       STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet send transmit in HC","/Devices/PCNet%d/Transmit/Send", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTdtePollGC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet TdtePoll in GC",     "/Devices/PCNet%d/TdtePollGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTdtePollHC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet TdtePoll in HC",     "/Devices/PCNet%d/TdtePollHC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRdtePollGC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet RdtePoll in GC",     "/Devices/PCNet%d/RdtePollGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRdtePollHC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet RdtePoll in HC",     "/Devices/PCNet%d/RdtePollHC", iInstance);
-
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTmdStoreGC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet TmdStore in GC",     "/Devices/PCNet%d/TmdStoreGC", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTmdStoreHC,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet TmdStore in HC",     "/Devices/PCNet%d/TmdStoreHC", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTransmitSendRZ,     STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet send transmit in RZ","/Devices/PCNet%d/Transmit/SendRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTransmitSendR3,     STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet send transmit in R3","/Devices/PCNet%d/Transmit/SendR3", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTdtePollRZ,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet TdtePoll in RZ",     "/Devices/PCNet%d/TdtePollRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTdtePollR3,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet TdtePoll in R3",     "/Devices/PCNet%d/TdtePollR3", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRdtePollRZ,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet RdtePoll in RZ",     "/Devices/PCNet%d/RdtePollRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRdtePollR3,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet RdtePoll in R3",     "/Devices/PCNet%d/RdtePollR3", iInstance);
+
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTmdStoreRZ,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet TmdStore in RZ",     "/Devices/PCNet%d/TmdStoreRZ", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTmdStoreR3,         STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL, "Profiling PCNet TmdStore in R3",     "/Devices/PCNet%d/TmdStoreR3", iInstance);
 
     unsigned i;
@@ -5331,13 +5335,13 @@
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRCVRingWrite,       STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of receive ring writes",          "/Devices/PCNet%d/Ring/RCVWrites", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatTXRingWrite,        STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of transmit ring writes",         "/Devices/PCNet%d/Ring/TXWrites", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteHC,        STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored ring page writes",   "/Devices/PCNet%d/Ring/HC/Writes", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteR3,        STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored ring page writes",   "/Devices/PCNet%d/Ring/R3/Writes", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteR0,        STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored ring page writes",   "/Devices/PCNet%d/Ring/R0/Writes", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteGC,        STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored ring page writes",   "/Devices/PCNet%d/Ring/GC/Writes", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteFailedHC,  STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of failed ring page writes",      "/Devices/PCNet%d/Ring/HC/Failed", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteRC,        STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored ring page writes",   "/Devices/PCNet%d/Ring/RC/Writes", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteFailedR3,  STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of failed ring page writes",      "/Devices/PCNet%d/Ring/R3/Failed", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteFailedR0,  STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of failed ring page writes",      "/Devices/PCNet%d/Ring/R0/Failed", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteFailedGC,  STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of failed ring page writes",      "/Devices/PCNet%d/Ring/GC/Failed", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteOutsideHC, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored writes outside ring","/Devices/PCNet%d/Ring/HC/Outside", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteFailedRC,  STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of failed ring page writes",      "/Devices/PCNet%d/Ring/RC/Failed", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteOutsideR3, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored writes outside ring","/Devices/PCNet%d/Ring/R3/Outside", iInstance);
     PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteOutsideR0, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored writes outside ring","/Devices/PCNet%d/Ring/R0/Outside", iInstance);
-    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteOutsideGC, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored writes outside ring","/Devices/PCNet%d/Ring/GC/Outside", iInstance);
+    PDMDevHlpSTAMRegisterF(pDevIns, &pThis->StatRingWriteOutsideRC, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_OCCURENCES,     "Nr of monitored writes outside ring","/Devices/PCNet%d/Ring/RC/Outside", iInstance);
 # endif /* PCNET_NO_POLLING */
 #endif
Index: /trunk/src/VBox/Devices/testcase/tstDeviceStructSize.cpp
===================================================================
--- /trunk/src/VBox/Devices/testcase/tstDeviceStructSize.cpp	(revision 29434)
+++ /trunk/src/VBox/Devices/testcase/tstDeviceStructSize.cpp	(revision 29435)
@@ -270,4 +270,5 @@
     CHECK_MEMBER_ALIGNMENT(E1KSTATE, cs, 8);
     CHECK_MEMBER_ALIGNMENT(E1KSTATE, csRx, 8);
+    CHECK_MEMBER_ALIGNMENT(E1KSTATE, StatReceiveBytes, 8);
 #endif
 #ifdef VBOX_WITH_VIRTIO
@@ -300,6 +301,7 @@
     CHECK_MEMBER_ALIGNMENT(PCNetState, u64LastPoll, 8);
     CHECK_MEMBER_ALIGNMENT(PCNetState, CritSect, 8);
+    CHECK_MEMBER_ALIGNMENT(PCNetState, StatReceiveBytes, 8);
 #ifdef VBOX_WITH_STATISTICS
-    CHECK_MEMBER_ALIGNMENT(PCNetState, StatMMIOReadGC, 8);
+    CHECK_MEMBER_ALIGNMENT(PCNetState, StatMMIOReadRZ, 8);
 #endif
     CHECK_MEMBER_ALIGNMENT(PITState, StatPITIrq, 8);
Index: /trunk/src/VBox/Devices/testcase/tstDeviceStructSizeRC.cpp
===================================================================
--- /trunk/src/VBox/Devices/testcase/tstDeviceStructSizeRC.cpp	(revision 29434)
+++ /trunk/src/VBox/Devices/testcase/tstDeviceStructSizeRC.cpp	(revision 29435)
@@ -427,10 +427,12 @@
     GEN_CHECK_OFF(PCNetState, u32LinkSpeed);
     GEN_CHECK_OFF(PCNetState, StatReceiveBytes);
+    GEN_CHECK_OFF(PCNetState, StatTransmitBytes);
 #ifdef VBOX_WITH_STATISTICS
-    GEN_CHECK_OFF(PCNetState, StatMMIOReadGC);
+    GEN_CHECK_OFF(PCNetState, StatMMIOReadR3);
+    GEN_CHECK_OFF(PCNetState, StatMMIOReadRZ);
     GEN_CHECK_OFF(PCNetState, StatMIIReads);
 # ifdef PCNET_NO_POLLING
     GEN_CHECK_OFF(PCNetState, StatRCVRingWrite);
-    GEN_CHECK_OFF(PCNetState, StatRingWriteOutsideRangeGC);
+    GEN_CHECK_OFF(PCNetState, StatRingWriteOutsideRangeR3);
 # endif
 #endif
