On Sat, Jun 01, 2019 at 11:34:41AM +0800, Peter Xu wrote: >On Fri, May 31, 2019 at 05:43:37PM +0100, Dr. David Alan Gilbert wrote: >> * Wei Yang (richardw.y...@linux.intel.com) wrote: >> > During migration, we would sync bitmap from ram_list.dirty_memory to >> > RAMBlock.bmap in cpu_physical_memory_sync_dirty_bitmap(). >> > >> > Since we set RAMBlock.bmap and ram_list.dirty_memory both to all 1, this >> > means at the first round this sync is meaningless and is a duplicated >> > work. >> > >> > Leaving RAMBlock->bmap blank on allocating would have a side effect on >> > migration_dirty_pages, since it is calculated from the result of >> > cpu_physical_memory_sync_dirty_bitmap(). To keep it right, we need to >> > set migration_dirty_pages to 0 in ram_state_init(). >> > >> > Signed-off-by: Wei Yang <richardw.y...@linux.intel.com> >> >> I've looked at this for a while, and I think it's OK, so >> >> Reviewed-by: Dr. David Alan Gilbert <dgilb...@redhat.com> >> >> Peter, Juan: Can you just see if there's arny reason this would be bad, >> but I think it's actually more sensible than what we have. > >I really suspect it will work in all cases... Wei, have you done any >test (or better, thorough tests) with this change? My reasoning of >why we should need the bitmap all set is here: >
I have done some migration cases, like migrate a linux guest through tcp. Other cases suggested to do? >https://lists.gnu.org/archive/html/qemu-devel/2019-05/msg07361.html > >Regards, > >-- >Peter Xu -- Wei Yang Help you, Help me