Index: /trunk/src/VBox/HostDrivers/Support/solaris/SUPDrv-solaris.c
===================================================================
--- /trunk/src/VBox/HostDrivers/Support/solaris/SUPDrv-solaris.c	(revision 58697)
+++ /trunk/src/VBox/HostDrivers/Support/solaris/SUPDrv-solaris.c	(revision 58698)
@@ -1273,4 +1273,8 @@
     char        szMsg[512];
 
+    /* cmn_err() acquires adaptive mutexes. Not preemption safe, see @bugref{6657}. */
+    if (!RTThreadPreemptIsEnabled(NIL_RTTHREAD))
+        return 0;
+
     va_start(args, pszFormat);
     RTStrPrintfV(szMsg, sizeof(szMsg) - 1, pszFormat, args);
@@ -1278,9 +1282,5 @@
 
     szMsg[sizeof(szMsg) - 1] = '\0';
-    /* cmn_err() acquires adaptive mutexes. Not preemption safe, see @bugref{6657}. */
-    if (RTThreadPreemptIsEnabled(NIL_RTTHREAD))
-        cmn_err(CE_CONT, "%s", szMsg);
-    else
-        cmn_err(CE_CONT, "[!BadPreemptCtx!] %s", szMsg);
+    cmn_err(CE_CONT, "%s", szMsg);
     return 0;
 }
Index: /trunk/src/VBox/Runtime/r0drv/solaris/RTLogWriteDebugger-r0drv-solaris.c
===================================================================
--- /trunk/src/VBox/Runtime/r0drv/solaris/RTLogWriteDebugger-r0drv-solaris.c	(revision 58697)
+++ /trunk/src/VBox/Runtime/r0drv/solaris/RTLogWriteDebugger-r0drv-solaris.c	(revision 58698)
@@ -47,4 +47,8 @@
         AssertBreakpoint();
 
+    /* cmn_err() acquires adaptive mutexes. Not preemption safe, see @bugref{6657}. */
+    if (!RTThreadPreemptIsEnabled(NIL_RTTHREAD))
+        return;
+
     if (    !g_frtSolSplSetsEIF
 #if defined(RT_ARCH_AMD64) || defined(RT_ARCH_X86)
@@ -55,9 +59,5 @@
         )
     {
-        /* cmn_err() acquires adaptive mutexes. Not preemption safe, see @bugref{6657}. */
-        if (RTThreadPreemptIsEnabled(NIL_RTTHREAD))
-            cmn_err(CE_CONT, pch);
-        else
-            cmn_err(CE_CONT, "[!BadPreemptCtx!] %s", pch);
+        cmn_err(CE_CONT, pch);
     }
 
