Index: /trunk/include/VBox/vmm/pgm.h
===================================================================
--- /trunk/include/VBox/vmm/pgm.h	(revision 92469)
+++ /trunk/include/VBox/vmm/pgm.h	(revision 92470)
@@ -276,5 +276,5 @@
 
 /**
- * Second level address translation mode.
+ * Second level address translation (SLAT) mode.
  */
 typedef enum PGMSLAT
@@ -296,4 +296,20 @@
 } PGMSLAT;
 
+/**
+ * SLAT page walk failure type.
+ */
+typedef enum PGMSLATFAIL
+{
+    /** Invalid value. */
+    PGMSLATFAIL_INVALID = 0,
+    /** EPT violation. */
+    PGMSLATFAIL_EPT_VIOLATION,
+    /** EPT violation convertible to \#VE exception. */
+    PGMSLATFAIL_EPT_VIOLATION_CONVERTIBLE,
+    /** EPT misconfiguration. */
+    PGMSLATFAIL_EPT_MISCONFIG,
+    /** 32bit hackishness. */
+    PGMSLATFAIL_32BIT_HACK = 0x7fffffff
+} PGMSLATFAIL;
 
 /** @name PGMPTATTRS - PGM page-table attributes.
@@ -507,7 +523,7 @@
     /** Set if it involves a gigantic page (1 GB). */
     bool            fGigantPage;
-    /** Set if the second-level fault was caused by an EPT misconfiguration. */
-    bool            fEptMisconfig;
-    bool            afPadding[6];
+    bool            afPadding[3];
+    /** The type of SLAT failure. */
+    PGMSLATFAIL     enmSlatFail;
 
     /** The effective attributes, PGM_PTATTRS_XXX. */
