From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [PATCH] KVM: VMX: Do not overwrite vcpu->srcu_idx in vmx_vcpu_reset Date: Thu, 14 Mar 2013 16:08:42 +0100 Message-ID: <5141E7FA.8060003@redhat.com> References: <5141E41B.8080804@siemens.com> <20130314150004.GX11223@redhat.com> <5141E6BA.2060404@siemens.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Gleb Natapov , Marcelo Tosatti , kvm To: Jan Kiszka Return-path: Received: from mx1.redhat.com ([209.132.183.28]:46760 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755847Ab3CNPIs (ORCPT ); Thu, 14 Mar 2013 11:08:48 -0400 In-Reply-To: <5141E6BA.2060404@siemens.com> Sender: kvm-owner@vger.kernel.org List-ID: Il 14/03/2013 16:03, Jan Kiszka ha scritto: >> > vcpu->srcu_idx = srcu_read_lock() >> > idx = srcu_read_lock(&vcpu->kvm->srcu); >> > srcu_read_unlock(&vcpu->kvm->srcu, vcpu->srcu_idx); >> > vcpu->srcu_idx = srcu_read_lock(&vcpu->kvm->srcu); >> > srcu_read_unlock(&vcpu->kvm->srcu, idx); >> > srcu_read_unlock(&vcpu->kvm->srcu, vcpu->srcu_idx); >> > >> > Not sure this is valid. > Grmbl, likely not. It might be. Isn't it the same as two different CPUs doing CPU 1 CPU 2 ------------------------------------------------------------------------------------------------ vcpu->srcu_idx = srcu_read_lock() idx = srcu_read_lock(&vcpu->kvm->srcu); srcu_read_unlock(&vcpu->kvm->srcu, vcpu->srcu_idx); vcpu->srcu_idx = srcu_read_lock(&vcpu->kvm->srcu); srcu_read_unlock(&vcpu->kvm->srcu, idx); srcu_read_unlock(&vcpu->kvm->srcu, vcpu->srcu_idx); ? Paolo