Re: [PATCH] KVM: x86: fix access memslots w/o hold srcu read lock

From: Paolo Bonzini
Date: Sun Nov 02 2014 - 01:50:52 EST




On 01/11/2014 03:49, Wanpeng Li wrote:
>
> This is also not enough. I see the warning in the below path during the
> test:
>
> kvm_arch_vcpu_ioctl_run
> -> kvm_apic_accept_events
> -> kvm_vcpu_reset

Hmm, better bypass the problem altogether:

diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
index a0f78dbaabee..3e556c68351b 100644
--- a/arch/x86/kvm/vmx.c
+++ b/arch/x86/kvm/vmx.c
@@ -4579,7 +4579,7 @@ static void vmx_vcpu_reset(struct kvm_vcpu *vcpu)
vmcs_write32(TPR_THRESHOLD, 0);
}

- kvm_vcpu_reload_apic_access_page(vcpu);
+ kvm_make_request(KVM_REQ_APIC_PAGE_RELOAD, vcpu);

if (vmx_vm_has_apicv(vcpu->kvm))
memset(&vmx->pi_desc, 0, sizeof(struct pi_desc));

(untested)

Paolo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/