summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgrehan <grehan@FreeBSD.org>2013-09-27 14:55:59 +0000
committergrehan <grehan@FreeBSD.org>2013-09-27 14:55:59 +0000
commitb2189384ce478c4ed94d382a6db8aad0869f284e (patch)
tree1b64b9fba49a4ff3e3bcbe7c7823037ee25c0b2c
parentb4b3864eb0bde04901e921f56a4c88a4884b882f (diff)
downloadFreeBSD-src-b2189384ce478c4ed94d382a6db8aad0869f284e.zip
FreeBSD-src-b2189384ce478c4ed94d382a6db8aad0869f284e.tar.gz
Return 0 for a rdmsr of MSR_IA32_PLATFORM_ID. This
is enough to get Ubuntu 12.0.4/13.0.4 to boot. Approved by: re@ (blanket)
-rw-r--r--sys/amd64/vmm/vmm_msr.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/amd64/vmm/vmm_msr.c b/sys/amd64/vmm/vmm_msr.c
index 0ccd7af..4011bb5 100644
--- a/sys/amd64/vmm/vmm_msr.c
+++ b/sys/amd64/vmm/vmm_msr.c
@@ -57,6 +57,7 @@ static struct vmm_msr vmm_msr[] = {
{ MSR_PAT, VMM_MSR_F_EMULATE | VMM_MSR_F_INVALID },
{ MSR_BIOS_SIGN,VMM_MSR_F_EMULATE },
{ MSR_MCG_CAP, VMM_MSR_F_EMULATE | VMM_MSR_F_READONLY },
+ { MSR_IA32_PLATFORM_ID, VMM_MSR_F_EMULATE | VMM_MSR_F_READONLY },
{ MSR_IA32_MISC_ENABLE, VMM_MSR_F_EMULATE | VMM_MSR_F_READONLY },
};
@@ -129,7 +130,10 @@ guest_msrs_init(struct vm *vm, int cpu)
misc |= (1 << 12) | (1 << 11);
misc &= ~((1 << 18) | (1 << 16));
guest_msrs[i] = misc;
- break;
+ break;
+ case MSR_IA32_PLATFORM_ID:
+ guest_msrs[i] = 0;
+ break;
default:
panic("guest_msrs_init: missing initialization for msr "
"0x%0x", vmm_msr[i].num);
OpenPOWER on IntegriCloud