Index: /trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp
===================================================================
--- /trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp	(revision 52927)
+++ /trunk/src/VBox/VMM/VMMR0/HMVMXR0.cpp	(revision 52928)
@@ -9339,15 +9339,15 @@
             for (unsigned i = 0; i < 8; i++)
             {
-                uint8_t u8Val = (u64Val & 0x7);
+                uint8_t u8Val = (u64Val & 0xff);
                 if (   u8Val != 0 /* UC */
-                    || u8Val != 1 /* WC */
-                    || u8Val != 4 /* WT */
-                    || u8Val != 5 /* WP */
-                    || u8Val != 6 /* WB */
-                    || u8Val != 7 /* UC- */)
+                    && u8Val != 1 /* WC */
+                    && u8Val != 4 /* WT */
+                    && u8Val != 5 /* WP */
+                    && u8Val != 6 /* WB */
+                    && u8Val != 7 /* UC- */)
                 {
                     HMVMX_ERROR_BREAK(VMX_IGS_PAT_MSR_INVALID);
                 }
-                u64Val >>= 3;
+                u64Val >>= 8;
             }
         }
