Index: /trunk/src/VBox/Devices/Network/DrvNAT.cpp
===================================================================
--- /trunk/src/VBox/Devices/Network/DrvNAT.cpp	(revision 22457)
+++ /trunk/src/VBox/Devices/Network/DrvNAT.cpp	(revision 22458)
@@ -54,4 +54,5 @@
 #define COUNTERS_INIT
 #include "counters.h"
+
 
 /*******************************************************************************
@@ -168,5 +169,5 @@
     HANDLE                  hWakeupEvent;
 #endif
-    
+
 #define DRV_PROFILE_COUNTER(name, dsc)     STAMPROFILE Stat ## name
 #define DRV_COUNTING_COUNTER(name, dsc)    STAMCOUNTER Stat ## name
@@ -209,4 +210,5 @@
 
 #ifdef SLIRP_SPLIT_CAN_OUTPUT
+
 static DECLCALLBACK(int) drvNATRecv(PPDMDRVINS pDrvIns, PPDMTHREAD pThread)
  {
@@ -218,5 +220,5 @@
     while (pThread->enmState == PDMTHREADSTATE_RUNNING)
     {
-        RTReqProcess(pThis->pRecvReqQueue, 0); 
+        RTReqProcess(pThis->pRecvReqQueue, 0);
         RTSemEventWait(pThis->EventRecv, RT_INDEFINITE_WAIT);
     }
@@ -235,18 +237,23 @@
 }
 
+
 static DECLCALLBACK(void) drvNATRecvWorker(PDRVNAT pThis, uint8_t *pu8Buf, int cb)
 {
     STAM_PROFILE_START(&pThis->StatNATRecv, a);
-    if (RT_FAILURE(pThis->pPort->pfnWaitReceiveAvail(pThis->pPort, RT_INDEFINITE_WAIT)))
-    {
-        AssertMsgFailed(("NAT: No RX available even on indefinite wait"));
-    }
-    STAM_PROFILE_STOP(&pThis->StatNATRecvWait, a);
-    int rc = pThis->pPort->pfnReceive(pThis->pPort, pu8Buf, cb);
+
+    STAM_PROFILE_START(&pThis->StatNATRecvWait, b);
+    int rc = pThis->pPort->pfnWaitReceiveAvail(pThis->pPort, RT_INDEFINITE_WAIT);
+    AssertMsgRC(rc, ("NAT: No RX available even on indefinite wait; rc=%Rrc", rc));
+
+    STAM_PROFILE_STOP(&pThis->StatNATRecvWait, b);
+
+    rc = pThis->pPort->pfnReceive(pThis->pPort, pu8Buf, cb);
+    AssertRC(rc);
     RTMemFree(pu8Buf);
+
     STAM_PROFILE_STOP(&pThis->StatNATRecv, a);
-    AssertRC(rc);
-}
-#endif
+}
+
+#endif /* SLIRP_SPLIT_CAN_OUTPUT */
 
 /**
@@ -650,5 +657,5 @@
     pReq->u.Internal.aArgs[2] = (uintptr_t)cb;
     pReq->fFlags              = RTREQFLAGS_VOID|RTREQFLAGS_NO_WAIT;
-    rc = RTReqQueue(pReq, 0); 
+    rc = RTReqQueue(pReq, 0);
     AssertReleaseRC(rc);
     drvNATRecvWakeup(pThis->pDrvIns, pThis->pRecvThread);
@@ -865,5 +872,5 @@
      * Validate the config.
      */
-    if (!CFGMR3AreValuesValid(pCfgHandle, 
+    if (!CFGMR3AreValuesValid(pCfgHandle,
                               "PassDomain\0TFTPPrefix\0BootFile\0Network"
                               "\0NextServer\0DNSProxy\0BindIP\0"
@@ -975,5 +982,5 @@
 # define DRV_PROFILE_COUNTER(name, dsc)     REGISTER_COUNTER(name, pThis, STAMTYPE_PROFILE, STAMUNIT_TICKS_PER_CALL, dsc)
 # define DRV_COUNTING_COUNTER(name, dsc)    REGISTER_COUNTER(name, pThis, STAMTYPE_COUNTER, STAMUNIT_COUNT,          dsc)
-# include "counters.h" 
+# include "counters.h"
 #endif
 
@@ -1103,7 +1110,7 @@
     NULL,
     /* pfnDetach */
-    NULL, 
+    NULL,
     /* pfnPowerOff */
-    NULL, 
+    NULL,
     /* pfnSoftReset */
     NULL,
Index: /trunk/src/VBox/Devices/Network/slirp/counters.h
===================================================================
--- /trunk/src/VBox/Devices/Network/slirp/counters.h	(revision 22457)
+++ /trunk/src/VBox/Devices/Network/slirp/counters.h	(revision 22458)
@@ -25,10 +25,10 @@
 
 /*
- * COUNTERS_INIT is used before using counters.h to declare helping macro 
+ * COUNTERS_INIT is used before using counters.h to declare helping macro
  * definitions for (de-)registering counters
  */
 #ifndef COUNTERS_H
 # define COUNTERS_H
-# if defined(VBOX_WITH_STATISTICS) 
+# if defined(VBOX_WITH_STATISTICS)
 #  define REGISTER_COUNTER(name, storage, type, units, dsc)         \
     do {                                                            \
@@ -122,7 +122,7 @@
 DRV_PROFILE_COUNTER(NATRecvWait,"Time spent in NATRecv worker in waiting of free RX buffers");
 #  endif
-DRV_COUNTING_COUNTER(QueuePktSent, "counting packet sent via PDM Queue");       /**< counting packet sent via PDM queue */
-DRV_COUNTING_COUNTER(QueuePktDropped, "counting packet drops by PDM Queue");    /**< counting packet drops by PDM queue */
-DRV_COUNTING_COUNTER(ConsumerFalse, "counting consumer's reject number to process the queue's item");      /**< how often to wait for guest RX buffers */
+DRV_COUNTING_COUNTER(QueuePktSent, "counting packet sent via PDM Queue");
+DRV_COUNTING_COUNTER(QueuePktDropped, "counting packet drops by PDM Queue");
+DRV_COUNTING_COUNTER(ConsumerFalse, "counting consumer's reject number to process the queue's item");
 # endif
 #endif /*!COUNTERS_INIT*/
