From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH 1/2] kvm: fix dirty bit tracking for slots with large pages Date: Wed, 10 Jun 2009 14:54:00 +0300 Message-ID: <4A2F9ED8.6010502@redhat.com> References: <1244634691-9765-1-git-send-email-ieidus@redhat.com> <1244634691-9765-2-git-send-email-ieidus@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org, Marcelo Tosatti , Ryan Harper To: Izik Eidus Return-path: Received: from mx2.redhat.com ([66.187.237.31]:47619 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750949AbZFJLyB (ORCPT ); Wed, 10 Jun 2009 07:54:01 -0400 In-Reply-To: <1244634691-9765-2-git-send-email-ieidus@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: Izik Eidus wrote: > When slot is already allocted and being asked to be tracked we need to break the > large pages. > > This code flush the mmu when someone ask a slot to start dirty bit tracking. > > Signed-off-by: Izik Eidus > --- > virt/kvm/kvm_main.c | 2 ++ > 1 files changed, 2 insertions(+), 0 deletions(-) > > diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c > index 669eb4a..4a60c72 100644 > --- a/virt/kvm/kvm_main.c > +++ b/virt/kvm/kvm_main.c > @@ -1160,6 +1160,8 @@ int __kvm_set_memory_region(struct kvm *kvm, > new.userspace_addr = mem->userspace_addr; > else > new.userspace_addr = 0; > + > + kvm_arch_flush_shadow(kvm); > } > if (npages && !new.lpage_info) { > largepages = 1 + (base_gfn + npages - 1) / KVM_PAGES_PER_HPAGE; > Ryan, can you try this out with your large page migration failures? -- error compiling committee.c: too many arguments to function