On 11/12/2014 15:17, Vladimir Sementsov-Ogievskiy wrote: > Just migrate parts of dirty bitmaps, corresponding to the block being > migrated. Also, skip block migration if it is disabled (blk parameter > of migrate command is false). > > Skipping shared sectors: bitmaps are migrated independently of this, > just send blk without block data.
I think dirty bitmaps should be migrated separately from the block migration. It makes a lot of sense to migrate them even if you are not using block migration. Compared to new flags, the availability of migration capabilities can be queried via query-migrate-capabilities before actually invoking the migration. So they are preferred, and you should add a migration capability instead of a new argument. The bitmaps are transmitted many times in their entirety, but only the last copy actually means something. The others are lost. This means you should use the non-live interface (register_savevm). This will simplify the code a lot. Paolo