From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [PATCH v2 08/14] KVM: x86: remove notifiers from PIT discard policy Date: Thu, 18 Feb 2016 19:08:10 +0100 Message-ID: <56C6088A.5080207@redhat.com> References: <1455736496-374-1-git-send-email-rkrcmar@redhat.com> <1455736496-374-9-git-send-email-rkrcmar@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: QUOTED-PRINTABLE Cc: kvm@vger.kernel.org, Yuki Shibuya To: =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , linux-kernel@vger.kernel.org Return-path: In-Reply-To: <1455736496-374-9-git-send-email-rkrcmar@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 17/02/2016 20:14, Radim Kr=C4=8Dm=C3=A1=C5=99 wrote: > + /* pit->pit_state.lock was overloaded to prevent userspace from get= ting > + * an inconsistent state after running multiple KVM_REINJECT_CONTRO= L > + * ioctls in parallel. Use a separate lock if that ioctl isn't rar= e. > + */ > + mutex_lock(&pit->pit_state.lock); > + kvm_pit_set_reinject(pit, control->pit_reinject); > + mutex_unlock(&pit->pit_state.lock); =2E.. so in patch 7 concurrent _writes_ of reinject are protected by th= e lock, but reads are done outside it (in pit_timer_fn). WDYT about making reinject an atomic_t? Paolo