From: Avi Kivity <[email protected]> kvm misreports the support for MTRR, PAT, MCA, and MCE. This causes Vista x64 to fail to boot.
Signed-off-by: Avi Kivity <[email protected]> diff --git a/kvm/libkvm/libkvm-x86.c b/kvm/libkvm/libkvm-x86.c index dd2b878..a2f6320 100644 --- a/kvm/libkvm/libkvm-x86.c +++ b/kvm/libkvm/libkvm-x86.c @@ -627,6 +627,15 @@ uint32_t kvm_get_supported_cpuid(kvm_context_t kvm, uint32_t function, int reg) break; case R_EDX: ret = cpuid->entries[i].edx; + if (function == 1) { + /* kvm misreports the following features + */ + ret |= 1 << 12; /* MTRR */ + ret |= 1 << 16; /* PAT */ + ret |= 1 << 7; /* MCE */ + ret |= 1 << 14; /* MCA */ + } + /* On Intel, kvm returns cpuid according to * the Intel spec, so add missing bits * according to the AMD spec: -- To unsubscribe from this list: send the line "unsubscribe kvm-commits" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
