Index: /trunk/include/VBox/err.h
===================================================================
--- /trunk/include/VBox/err.h	(revision 20157)
+++ /trunk/include/VBox/err.h	(revision 20158)
@@ -82,4 +82,6 @@
 /** Invalid Virtual CPU ID. */
 #define VERR_INVALID_CPU_ID                 (-1018)
+/** Too many VCPUs. */
+#define VERR_TOO_MANY_CPUS                  (-1019)
 /** @} */
 
Index: /trunk/src/VBox/VMM/CPUM.cpp
===================================================================
--- /trunk/src/VBox/VMM/CPUM.cpp	(revision 20157)
+++ /trunk/src/VBox/VMM/CPUM.cpp	(revision 20158)
@@ -423,4 +423,5 @@
     if (pVM->cpum.s.enmCPUVendor == CPUMCPUVENDOR_INTEL)
     {
+        AssertReturn(pVM->cCPUs <= 64, VERR_TOO_MANY_CPUS);
         /* One logical processor with possibly multiple cores. */
         pCPUM->aGuestCpuIdStd[4].eax |= ((pVM->cCPUs - 1) << 26);   /* 6 bits only -> 64 cores! */
Index: /trunk/src/VBox/VMM/PGMInternal.h
===================================================================
--- /trunk/src/VBox/VMM/PGMInternal.h	(revision 20157)
+++ /trunk/src/VBox/VMM/PGMInternal.h	(revision 20158)
@@ -2222,5 +2222,5 @@
     bool                            fRamPreAlloc;
     /** Alignment padding. */
-    bool                            afAlignment0[7];
+    bool                            afAlignment0[11];
 
     /*
Index: /trunk/src/VBox/VMM/VM.cpp
===================================================================
--- /trunk/src/VBox/VMM/VM.cpp	(revision 20157)
+++ /trunk/src/VBox/VMM/VM.cpp	(revision 20158)
@@ -215,5 +215,5 @@
      * Validate input.
      */
-    AssertLogRelMsgReturn(cCPUs > 0 && cCPUs <= VMM_MAX_CPU_COUNT, ("%RU32\n", cCPUs), VERR_INVALID_PARAMETER);
+    AssertLogRelMsgReturn(cCPUs > 0 && cCPUs <= VMM_MAX_CPU_COUNT, ("%RU32\n", cCPUs), VERR_TOO_MANY_CPUS);
 
     /*
