Index: /trunk/src/VBox/Main/include/USBProxyBackend.h
===================================================================
--- /trunk/src/VBox/Main/include/USBProxyBackend.h	(revision 60743)
+++ /trunk/src/VBox/Main/include/USBProxyBackend.h	(revision 60744)
@@ -95,4 +95,5 @@
      */
     virtual void deviceAdded(ComObjPtr<HostUSBDevice> &aDevice, PUSBDEVICE pDev);
+    virtual bool isFakeUpdateRequired();
 
 private:
@@ -205,4 +206,5 @@
     virtual PUSBDEVICE getDevices(void);
     virtual void deviceAdded(ComObjPtr<HostUSBDevice> &aDevice, PUSBDEVICE aUSBDevice);
+    virtual bool isFakeUpdateRequired();
 
 private:
@@ -404,4 +406,5 @@
     virtual int interruptWait(void);
     virtual PUSBDEVICE getDevices(void);
+    virtual bool isFakeUpdateRequired();
 
 private:
Index: /trunk/src/VBox/Main/src-server/USBProxyBackend.cpp
===================================================================
--- /trunk/src/VBox/Main/src-server/USBProxyBackend.cpp	(revision 60743)
+++ /trunk/src/VBox/Main/src-server/USBProxyBackend.cpp	(revision 60744)
@@ -232,4 +232,9 @@
 }
 
+
+bool USBProxyBackend::isFakeUpdateRequired()
+{
+    return false;
+}
 
 // Internals
@@ -661,10 +666,5 @@
             devLock.release();
             alock.release();
-            /** @todo: Add mthod for every backend indicating whether to use fake updating. */
-#if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD)
-            m_pUsbProxyService->i_updateDeviceState(pHostDevice, pCur, true /* fFakeUpdate */);
-#else
-            m_pUsbProxyService->i_updateDeviceState(pHostDevice, pCur, false /* fFakeUpdate */);
-#endif
+            m_pUsbProxyService->i_updateDeviceState(pHostDevice, pCur, isFakeUpdateRequired());
             alock.acquire();
             ++it;
Index: /trunk/src/VBox/Main/src-server/generic/USBProxyBackendUsbIp.cpp
===================================================================
--- /trunk/src/VBox/Main/src-server/generic/USBProxyBackendUsbIp.cpp	(revision 60743)
+++ /trunk/src/VBox/Main/src-server/generic/USBProxyBackendUsbIp.cpp	(revision 60744)
@@ -435,4 +435,10 @@
 
 
+bool USBProxyBackendUsbIp::isFakeUpdateRequired()
+{
+    return true;
+}
+
+
 int USBProxyBackendUsbIp::wait(RTMSINTERVAL aMillies)
 {
Index: /trunk/src/VBox/Main/src-server/linux/USBProxyBackendLinux.cpp
===================================================================
--- /trunk/src/VBox/Main/src-server/linux/USBProxyBackendLinux.cpp	(revision 60743)
+++ /trunk/src/VBox/Main/src-server/linux/USBProxyBackendLinux.cpp	(revision 60744)
@@ -288,4 +288,9 @@
 
 
+bool USBProxyBackendLinux::isFakeUpdateRequired()
+{
+    return true;
+}
+
 int USBProxyBackendLinux::wait(RTMSINTERVAL aMillies)
 {
