diff mbox

Kernel GPF in vmx_save_host_state()

Message ID 49C7E236.90902@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Avi Kivity March 23, 2009, 7:25 p.m. UTC
Benjamin Gilbert wrote:
>>> vmx_set_msr: msr_index 0xc0000080 msr->index 0xc0000080 msr->data 0x100
>>
>> How did that get in there?!
>>
>> Please add a dump_stack() after that printk().
>
> Pid: 2381, comm: qemu-system-x86 Not tainted 2.6.28-686 #4
> Call Trace:
>  [<f8cf2fdc>] vmx_set_msr+0x150/0x178 [kvm_intel]
>  [<f8cf325a>] handle_wrmsr+0x71/0x9d [kvm_intel]

Duh, I noted this hole in a previous email.

Attached patch should fix.

Comments

Benjamin Gilbert March 23, 2009, 8:07 p.m. UTC | #1
Avi Kivity wrote:
> Duh, I noted this hole in a previous email.
> 
> Attached patch should fix.

It does, thanks.

--Benjamin Gilbert
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index 88ef094..da6461d 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
@@ -942,11 +942,11 @@  static int vmx_set_msr(struct kvm_vcpu *vcpu, u32 msr_index, u64 data)
 	int ret = 0;
 
 	switch (msr_index) {
-#ifdef CONFIG_X86_64
 	case MSR_EFER:
 		vmx_load_host_state(vmx);
 		ret = kvm_set_msr_common(vcpu, msr_index, data);
 		break;
+#ifdef CONFIG_X86_64
 	case MSR_FS_BASE:
 		vmcs_writel(GUEST_FS_BASE, data);
 		break;