From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH v2 2/6] KVM: MMU: don't drop spte if overwrite it from W to RO Date: Thu, 18 Nov 2010 18:41:34 +0200 Message-ID: <4CE5573E.4050100@redhat.com> References: <4CE355A0.6020907@cn.fujitsu.com> <4CE355CA.80106@cn.fujitsu.com> <20101117154241.GB18959@amt.cnet> <4CE3FB74.8050705@redhat.com> <4CE4D1F8.7090701@cn.fujitsu.com> <20101118153240.GE14327@amt.cnet> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Xiao Guangrong , LKML , KVM To: Marcelo Tosatti Return-path: In-Reply-To: <20101118153240.GE14327@amt.cnet> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 11/18/2010 05:32 PM, Marcelo Tosatti wrote: > > >> There is no need to flush on sync_page path since the guest is > > >> responsible for it. > > >> > > > > > > If we don't, the next rmap_write_protect() will incorrectly decide that > > > there's no need to flush tlbs. > > > > > > > Maybe it's not a problem if guest can flush all tlbs after overwrite it? > > Marcelo, what's your comment about this? > > It can, but there is no guarantee. Your patch is correct. We keep tripping on the same problem again and again. spte.w (and tlb.pte.w) is multiplexed between guest and host, hence we cannot trust the guest regarding its consistency. I wish we had a systematic way of dealing with this. -- error compiling committee.c: too many arguments to function