Index: /trunk/src/VBox/VMM/PATM/PATM.cpp
===================================================================
--- /trunk/src/VBox/VMM/PATM/PATM.cpp	(revision 452)
+++ /trunk/src/VBox/VMM/PATM/PATM.cpp	(revision 453)
@@ -37,4 +37,5 @@
 #include <VBox/pdm.h>
 #include <VBox/trpm.h>
+#include <VBox/cfgm.h>
 #include <VBox/param.h>
 #include <VBox/selm.h>
@@ -147,4 +148,15 @@
     pVM->patm.s.PatchLookupTreeGC = MMHyperHC2GC(pVM, pVM->patm.s.PatchLookupTreeHC);
 
+#ifdef __AMD64__ /* see patmReinit(). */
+    /* Check CFGM option. */
+    rc = CFGMR3QueryBool(CFGMR3GetRoot(pVM), "PATMEnabled", &pVM->fPATMEnabled);
+    if (VBOX_FAILURE(rc))
+# ifdef PATM_DISABLE_ALL
+        pVM->fPATMEnabled = false;
+# else
+        pVM->fPATMEnabled = true;
+# endif 
+#endif
+
     rc = patmReinit(pVM);
     AssertRC(rc);
@@ -297,6 +309,8 @@
     pVM->patm.s.offVM = RT_OFFSETOF(VM, patm);
 
+#ifndef __AMD64__ /* would be nice if this was changed everywhere. was driving me crazy on AMD64. */
 #ifndef PATM_DISABLE_ALL
     pVM->fPATMEnabled = true;
+#endif
 #endif
 
