aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/kvm/kvm_main.c
diff options
context:
space:
mode:
authorMatthew Gregan <kinetik@flim.org>2007-05-06 03:59:46 -0400
committerAvi Kivity <avi@qumranet.com>2007-07-16 05:05:40 -0400
commit2dc7094b5662c4446aa647b257d47a9412fbacc9 (patch)
tree485a6492c644235dcc80956d74000cf2e1b63195 /drivers/kvm/kvm_main.c
parenta3a0636725ff172031072434d722b69bf49b7823 (diff)
KVM: Implement IA32_EBL_CR_POWERON msr
Attempting to boot the default 'bsd' kernel of OpenBSD 4.1 i386 in a guest fails early in the kernel init inside p3_get_bus_clock while trying to read the IA32_EBL_CR_POWERON MSR. KVM logs an 'unhandled MSR' message and the guest kernel faults. This patch is sufficient to allow OpenBSD to boot, after which it seems to run fine. I'm not sure if this is the correct solution for dealing with this particular MSR, but it works for me. Signed-off-by: Matthew Gregan <kinetik@flim.org> Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/kvm_main.c')
-rw-r--r--drivers/kvm/kvm_main.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/kvm/kvm_main.c b/drivers/kvm/kvm_main.c
index b6ad9c6f2efe..095d673b9efb 100644
--- a/drivers/kvm/kvm_main.c
+++ b/drivers/kvm/kvm_main.c
@@ -1470,6 +1470,7 @@ int kvm_get_msr_common(struct kvm_vcpu *vcpu, u32 msr, u64 *pdata)
1470 case MSR_IA32_MC0_MISC+16: 1470 case MSR_IA32_MC0_MISC+16:
1471 case MSR_IA32_UCODE_REV: 1471 case MSR_IA32_UCODE_REV:
1472 case MSR_IA32_PERF_STATUS: 1472 case MSR_IA32_PERF_STATUS:
1473 case MSR_IA32_EBL_CR_POWERON:
1473 /* MTRR registers */ 1474 /* MTRR registers */
1474 case 0xfe: 1475 case 0xfe:
1475 case 0x200 ... 0x2ff: 1476 case 0x200 ... 0x2ff: