On Fri, 16 Mar 2012 15:30:45 +0800 Xiao Guangrong <xiaoguangrong@xxxxxxxxxxxxxxxxxx> wrote: > >> There is a example: > >> > >> CPU A CPU B > >> guest page is written by write-emulation > >> > >> hold mmu-lock and see dirty-bitmap > >> is not be changed, then migration is > >> completed. > > > > We do not allow this break. > > > > > Hmm? what can avoid this? Could you please point it out? Stopping the guest before actualy migrating the guest means VCPU threads must be back in the userspace at the moment, no? So when the final GET_DIRTY_LOG is being executed, thread A cannot be in KVM. > The problem is the guest page is written before dirty-bitmap is set, > we may log the dirty page in this window like above case... Exactly, but the next GET_DIRTY_LOG call can take that because, as I wrote above, at this time the GET_DIRTY_LOG must not be the final one. Makes sense? Takuya -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html