Index: /trunk/src/VBox/Main/src-server/generic/USBProxyBackendUsbIp.cpp
===================================================================
--- /trunk/src/VBox/Main/src-server/generic/USBProxyBackendUsbIp.cpp	(revision 60744)
+++ /trunk/src/VBox/Main/src-server/generic/USBProxyBackendUsbIp.cpp	(revision 60745)
@@ -523,5 +523,5 @@
                 else if (rc == VERR_NET_SHUTDOWN || rc == VERR_BROKEN_PIPE)
                 {
-                    LogRelMax(10, ("USB/IP: Lost connection to host \"%s\", trying to reconnect...\n", m->pszHost));
+                    Log(("USB/IP: Lost connection to host \"%s\", trying to reconnect...\n", m->pszHost));
                     disconnect();
                     rc = VINF_SUCCESS;
@@ -685,5 +685,5 @@
         rc = RTTcpSetSendCoalescing(m->hSocket, false);
         if (RT_FAILURE(rc))
-            LogRel(("USB/IP: Disabling send coalescing failed (rc=%Rrc), continuing nevertheless but expect increased latency\n", rc));
+            LogRelMax(5, ("USB/IP: Disabling send coalescing failed (rc=%Rrc), continuing nevertheless but expect increased latency\n", rc));
 
         rc = RTPollSetAddSocket(m->hPollSet, m->hSocket, RTPOLL_EVT_READ | RTPOLL_EVT_ERROR,
@@ -695,5 +695,5 @@
         }
         else
-            LogRel(("USB/IP: Connected to host \"%s\"\n", m->pszHost));
+            LogFlowFunc(("Connected to host \"%s\"\n", m->pszHost));
     }
 
@@ -833,5 +833,8 @@
                                RT_N2H_U16(m->Scratch.RetDevList.u16Version), RT_N2H_U16(m->Scratch.RetDevList.u16Cmd),
                                RT_N2H_U32(m->Scratch.RetDevList.u32Status)));
-                rc = VERR_INVALID_STATE;
+                /* Disconnect and start over. */
+                advanceState(kUsbIpRecvState_None);
+                disconnect();
+                rc = VERR_NET_SHUTDOWN;
             }
             break;
