aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorAvi Kivity <avi@qumranet.com>2006-12-29 19:49:45 -0500
committerLinus Torvalds <torvalds@woody.osdl.org>2006-12-30 13:56:44 -0500
commit671d6564796e0c90398aab30f89b5e48fc5a3fbe (patch)
tree9e8b0712f44f8b86e48a876b9a6b8db3836e67c4 /drivers
parent09db28b8a3765a7ec35eba80420c71a7973f5a88 (diff)
[PATCH] KVM: Implement a few system configuration msrs
Resolves sourceforge bug 1622229 (guest crashes running benchmark software). Signed-off-by: Avi Kivity <avi@qumranet.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/kvm/svm.c3
-rw-r--r--drivers/kvm/vmx.c3
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/kvm/svm.c b/drivers/kvm/svm.c
index 68124c0bf630..6cd97c69ab3b 100644
--- a/drivers/kvm/svm.c
+++ b/drivers/kvm/svm.c
@@ -1068,6 +1068,9 @@ static int emulate_on_interception(struct kvm_vcpu *vcpu, struct kvm_run *kvm_ru
1068static int svm_get_msr(struct kvm_vcpu *vcpu, unsigned ecx, u64 *data) 1068static int svm_get_msr(struct kvm_vcpu *vcpu, unsigned ecx, u64 *data)
1069{ 1069{
1070 switch (ecx) { 1070 switch (ecx) {
1071 case 0xc0010010: /* SYSCFG */
1072 case 0xc0010015: /* HWCR */
1073 case MSR_IA32_PLATFORM_ID:
1071 case MSR_IA32_P5_MC_ADDR: 1074 case MSR_IA32_P5_MC_ADDR:
1072 case MSR_IA32_P5_MC_TYPE: 1075 case MSR_IA32_P5_MC_TYPE:
1073 case MSR_IA32_MC0_CTL: 1076 case MSR_IA32_MC0_CTL:
diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c
index 603a4135de42..e5358a8b01f1 100644
--- a/drivers/kvm/vmx.c
+++ b/drivers/kvm/vmx.c
@@ -359,6 +359,9 @@ static int vmx_get_msr(struct kvm_vcpu *vcpu, u32 msr_index, u64 *pdata)
359 case MSR_IA32_SYSENTER_ESP: 359 case MSR_IA32_SYSENTER_ESP:
360 data = vmcs_read32(GUEST_SYSENTER_ESP); 360 data = vmcs_read32(GUEST_SYSENTER_ESP);
361 break; 361 break;
362 case 0xc0010010: /* SYSCFG */
363 case 0xc0010015: /* HWCR */
364 case MSR_IA32_PLATFORM_ID:
362 case MSR_IA32_P5_MC_ADDR: 365 case MSR_IA32_P5_MC_ADDR:
363 case MSR_IA32_P5_MC_TYPE: 366 case MSR_IA32_P5_MC_TYPE:
364 case MSR_IA32_MC0_CTL: 367 case MSR_IA32_MC0_CTL: