Index: /trunk/include/VBox/err.h
===================================================================
--- /trunk/include/VBox/err.h	(revision 13702)
+++ /trunk/include/VBox/err.h	(revision 13703)
@@ -101,7 +101,4 @@
  * resolved there it will enter guru meditation. */
 #define VINF_EM_DBG_HYPER_ASSERTION         1103
-/** Hit a ring-0 assertion on EMT.
- * EM will enter guru mediation state when. */
-#define VINF_EM_DBG_RING0_ASSERTION         1104
 /** Indicating that the VM should be suspended for debugging because
  * the developer wants to inspect the VM state. */
@@ -765,4 +762,6 @@
 /** Reason for leaving GC: Calling host function. */
 #define VINF_VMM_CALL_HOST                  2700
+/** Reason for leaving R0: Hit a ring-0 assertion on EMT. */
+#define VERR_VMM_RING0_ASSERTION            (-2701)
 /** @} */
 
Index: /trunk/include/VBox/err.mac
===================================================================
--- /trunk/include/VBox/err.mac	(revision 13702)
+++ /trunk/include/VBox/err.mac	(revision 13703)
@@ -19,5 +19,4 @@
 %define VINF_EM_DBG_HYPER_BREAKPOINT    1102
 %define VINF_EM_DBG_HYPER_ASSERTION    1103
-%define VINF_EM_DBG_RING0_ASSERTION    1104
 %define VINF_EM_DBG_STOP    1105
 %define VINF_EM_DBG_STEPPED    1106
@@ -243,4 +242,5 @@
 %define VINF_IOM_HC_MMIO_READ_WRITE    2625
 %define VINF_VMM_CALL_HOST    2700
+%define VERR_VMM_RING0_ASSERTION    (-2701)
 %define VERR_PDM_NO_SUCH_LUN    (-2800)
 %define VERR_PDM_DEVINS_UNKNOWN_CFG_VALUES    (-2801)
Index: /trunk/src/VBox/VMM/EM.cpp
===================================================================
--- /trunk/src/VBox/VMM/EM.cpp	(revision 13702)
+++ /trunk/src/VBox/VMM/EM.cpp	(revision 13703)
@@ -645,6 +645,6 @@
              * Guru meditation.
              */
-            case VINF_EM_DBG_RING0_ASSERTION: /** @todo Make a guru meditation event! */
-                rc = DBGFR3EventSrc(pVM, DBGFEVENT_DEV_STOP, "VINF_EM_DBG_RING0_ASSERTION", 0, NULL, NULL);
+            case VERR_VMM_RING0_ASSERTION: /** @todo Make a guru meditation event! */
+                rc = DBGFR3EventSrc(pVM, DBGFEVENT_DEV_STOP, "VERR_VMM_RING0_ASSERTION", 0, NULL, NULL);
                 break;
             case VERR_REM_TOO_MANY_TRAPS: /** @todo Make a guru meditation event! */
@@ -674,5 +674,4 @@
                 case VINF_EM_DBG_HYPER_BREAKPOINT:
                 case VINF_EM_DBG_HYPER_ASSERTION:
-                case VINF_EM_DBG_RING0_ASSERTION:
                     break;
 
@@ -708,5 +707,7 @@
                         case VINF_EM_DBG_HYPER_BREAKPOINT:
                         case VINF_EM_DBG_HYPER_ASSERTION:
-                        case VINF_EM_DBG_RING0_ASSERTION:
+                        case VERR_TRPM_PANIC:
+                        case VERR_TRPM_DONT_PANIC:
+                        case VERR_VMM_RING0_ASSERTION:
                             return rcLast;
                     }
@@ -723,4 +724,5 @@
                 case VERR_TRPM_PANIC:
                 case VERR_TRPM_DONT_PANIC:
+                case VERR_VMM_RING0_ASSERTION:
                 case VERR_INTERNAL_ERROR:
                     return rc;
@@ -2372,5 +2374,5 @@
         case VERR_TRPM_DONT_PANIC:
         case VERR_TRPM_PANIC:
-        case VINF_EM_DBG_RING0_ASSERTION:
+        case VERR_VMM_RING0_ASSERTION:
             break;
 
@@ -3467,5 +3469,5 @@
                  * Guru mediations.
                  */
-                case VINF_EM_DBG_RING0_ASSERTION:
+                case VERR_VMM_RING0_ASSERTION:
                     Log(("EMR3ExecuteVM: %Rrc: %d -> %d (EMSTATE_GURU_MEDITATION)\n", rc, pVM->em.s.enmState, EMSTATE_GURU_MEDITATION));
                     pVM->em.s.enmState = EMSTATE_GURU_MEDITATION;
Index: /trunk/src/VBox/VMM/VMM.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMM.cpp	(revision 13702)
+++ /trunk/src/VBox/VMM/VMM.cpp	(revision 13703)
@@ -1966,5 +1966,5 @@
         }
         rc = vmmR3ServiceCallHostRequest(pVM);
-        if (VBOX_FAILURE(rc) || rc == VINF_EM_DBG_RING0_ASSERTION)
+        if (VBOX_FAILURE(rc))
             return rc;
         /* Resume R0 */
@@ -2237,5 +2237,5 @@
             LogRel((pVM->vmm.s.szRing0AssertMsg1));
             LogRel((pVM->vmm.s.szRing0AssertMsg2));
-            return VINF_EM_DBG_RING0_ASSERTION;
+            return VERR_VMM_RING0_ASSERTION;
 
         default:
Index: /trunk/src/VBox/VMM/VMMGuruMeditation.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMGuruMeditation.cpp	(revision 13702)
+++ /trunk/src/VBox/VMM/VMMGuruMeditation.cpp	(revision 13703)
@@ -227,8 +227,8 @@
          * Hypervisor errors.
          */
-        case VINF_EM_DBG_RING0_ASSERTION:
+        case VERR_VMM_RING0_ASSERTION:
         case VINF_EM_DBG_HYPER_ASSERTION:
         {
-            bool fIsRing0 = rcErr == VINF_EM_DBG_RING0_ASSERTION;
+            bool fIsRing0 = rcErr == VERR_VMM_RING0_ASSERTION;
             const char *pszMsg1 = fIsRing0 ? pVM->vmm.s.szRing0AssertMsg1 : VMMR3GetGCAssertMsg1(pVM);
             while (pszMsg1 && *pszMsg1 == '\n')
