From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [PATCH] KVM: x86: fix access memslots w/o hold srcu read lock Date: Sun, 02 Nov 2014 07:50:29 +0100 Message-ID: <5455D435.5050405@redhat.com> References: <1414730012-7278-1-git-send-email-wanpeng.li@linux.intel.com> <54531E7B.1040006@intel.com> <5453663B.90500@redhat.com> <54544A45.1000505@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: Gleb Natapov , Alexei Starovoitov , Takashi Iwai , kvm@vger.kernel.org, linux-kernel@vger.kernel.org To: Wanpeng Li , "Chen, Tiejun" , Wanpeng Li Return-path: In-Reply-To: <54544A45.1000505@gmail.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org 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