Index: /trunk/src/VBox/Devices/Network/DevPCNet.cpp
===================================================================
--- /trunk/src/VBox/Devices/Network/DevPCNet.cpp	(revision 88497)
+++ /trunk/src/VBox/Devices/Network/DevPCNet.cpp	(revision 88498)
@@ -2524,10 +2524,4 @@
         TMD tmd;
         if (!pcnetTdtePoll(pDevIns, pThis, &tmd))
-            break;
-
-        /* Don't continue sending packets when the link is down. */
-        if (RT_UNLIKELY(   !pcnetIsLinkUp(pThis)
-                        &&  pThis->cLinkDownReported > PCNET_MAX_LINKDOWN_REPORTED)
-            )
             break;
 
@@ -3418,4 +3412,7 @@
                 val &= ~0x40;
             }
+            /* AMD NDIS 5.0 driver programs BCR4 to indicate link state and polls
+             * the LED bit (bit 15) to determine current link status.
+             */
             val |= (val & 0x017f & pThis->u32Lnkst) ? 0x8000 : 0;
             break;
@@ -4054,4 +4051,12 @@
 
     rc = VERR_GENERAL_FAILURE;
+
+    /* 10 Mbps models (up to and including Am79C970A) have no MII and no way to get
+     * an MII management auto-poll interrupt (MAPINT) indicating link state changes.
+     * In some cases we want to make sure the guest really noticed the link going down;
+     * the cLinkDownReported counter is incremented every time the guest did something
+     * that might have made it notice the link loss, and we only bring the link back
+     * up once we're reasonably certain the guest knows it was down.
+     */
     if (pThis->cLinkDownReported <= PCNET_MAX_LINKDOWN_REPORTED)
     {
