> Cc: Rik van Riel; v...@zeniv.linux.org.uk; linux-kernel@vger.kernel.org; > quint...@redhat.com; amit.s...@redhat.com; pbonz...@redhat.com; > dgilb...@redhat.com; linux...@kvack.org; k...@vger.kernel.org; qemu- > de...@nongnu.org; ag...@suse.de; borntrae...@de.ibm.com > Subject: Re: [PATCH kernel 1/2] mm: add the related functions to build the > free page bitmap > > On Tue, Apr 19, 2016 at 03:02:09PM +0000, Li, Liang Z wrote: > > > On Tue, 2016-04-19 at 22:34 +0800, Liang Li wrote: > > > > The free page bitmap will be sent to QEMU through virtio interface > > > > and used for live migration optimization. > > > > Drop the cache before building the free page bitmap can get more > > > > free pages. Whether dropping the cache is decided by user. > > > > > > > > > > How do you prevent the guest from using those recently-freed pages > > > for something else, between when you build the bitmap and the live > > > migration completes? > > > > Because the dirty page logging is enabled before building the bitmap, > > there is no need to prevent the guest from using the recently-freed > pages ... > > > > Liang > > Well one point of telling host that page is free is so that it can mark it > clean > even if it was dirty previously. > So I think you must pass the pages to guest under the lock.
Thanks! You mean save the free page bitmap in host pages? > This will allow host optimizations such as marking these pages > MADV_DONTNEED or MADV_FREE > Otherwise it's all too tied up to a specific usecase - you aren't telling > host that > a page is free, you are telling it that a page was free in the past. > Then we should prevent the guest from using those recently-freed pages, before doing the MADV_DONTNEED or MADV_FREE, or the pages in the free page bitmap may be not free any more. In which case we will do something like this? Balloon? Liang > -- > MST