From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takuya Yoshikawa Subject: Re: [PATCH 0/4] KVM: Dirty logging optimization using rmap Date: Tue, 29 Nov 2011 19:35:32 +0900 Message-ID: <4ED4B574.8090907@oss.ntt.co.jp> References: <20111114182041.43570cdf.yoshikawa.takuya@oss.ntt.co.jp> <4EC0EC90.1090202@redhat.com> <4EC0F3D3.9090907@oss.ntt.co.jp> <4EC10BFE.7050704@redhat.com> <4EC33C0B.1060807@oss.ntt.co.jp> <4EC37D18.4010609@redhat.com> <4ED4AF43.2040003@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: Avi Kivity , Marcelo Tosatti , KVM To: Xiao Guangrong Return-path: Received: from serv2.oss.ntt.co.jp ([222.151.198.100]:59594 "EHLO serv2.oss.ntt.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753989Ab1K2Ke5 (ORCPT ); Tue, 29 Nov 2011 05:34:57 -0500 In-Reply-To: <4ED4AF43.2040003@linux.vnet.ibm.com> Sender: kvm-owner@vger.kernel.org List-ID: (2011/11/29 19:09), Xiao Guangrong wrote: > Sorry, CC list is lost. :( > > On 11/29/2011 06:01 PM, Xiao Guangrong wrote: > >> Avi Kivity redhat.com> writes: >> >>> >>> On 11/16/2011 06:28 AM, Takuya Yoshikawa wrote: >>>> (2011/11/14 21:39), Avi Kivity wrote: >>>>> There was a patchset from Peter Zijlstra that converted mmu notifiers to >>>>> be preemptible, with that, we can convert the mmu spinlock to a mutex, >>>>> I'll see what happened to it. >>>> >>>> Interesting! >>>> >>>>> There is a third method of doing write protection, and that is by >>>>> write-protecting at the higher levels of the paging hierarchy. The >>>>> advantage there is that write protection is O(1) no matter how large the >>>>> guest is, or the number of dirty pages. >>>>> >>>>> To write protect all guest memory, we just write protect the 512 PTEs at >>>>> the very top, and leave the rest alone. When the guest writes to a >>>>> page, we allow writes for the top-level PTE that faulted, and >>>>> write-protect all the PTEs that it points to. >>>> >>>> One important point is that the guest, not GET DIRTY LOG caller, will pay >>>> for the write protection at the timing of faults. >>> >>> I don't think there is a significant difference. The number of write >>> faults does not change. The amount of work done per fault does, but not >>> by much, thanks to the writeable bitmap. >>> >> >> Avi, >> >> I think it needs more thinking if only less page need be write protected. >> >> For example, framebuffer-based device used by Xwindow, only ~64M pages needs >> to be write protected, but in your way, guest will get write page fault on all >> memory? Hmm? >> >> It has some tricks but i missed? Do you mean write protecting slot by slot is difficult in the case of O(1)? Takuya