Index: /trunk/src/VBox/Additions/common/VBoxService/VBoxService.cpp
===================================================================
--- /trunk/src/VBox/Additions/common/VBoxService/VBoxService.cpp	(revision 35079)
+++ /trunk/src/VBox/Additions/common/VBoxService/VBoxService.cpp	(revision 35080)
@@ -354,5 +354,11 @@
         g_aServices[j].fStarted = true;
 
-        /* wait for the thread to initialize */
+        /* Wait for the thread to initialize.
+         *
+         * @todo There is a race between waiting and checking
+         *       the fShutdown flag of a thread here and processing
+         *       the thread's actual worker loop. If the thread decides
+         *       to exit the loop before we skipped the fShutdown check
+         *       below the service will fail to start! */
         RTThreadUserWait(g_aServices[j].Thread, 60 * 1000);
         if (g_aServices[j].fShutdown)
