[Qemu-devel] ping Re: [PATCH v10 00/12] Dirty bitmaps postcopy migration

2018-03-02 Thread Vladimir Sementsov-Ogievskiy

ping

07.02.2018 18:58, Vladimir Sementsov-Ogievskiy wrote:

Hi all!

There is a new version of dirty bitmap postcopy migration series.

Now it is based on Max's block tree: 
https://github.com/XanClic/qemu/commits/block,
where it needs only one patch: "block: maintain persistent disabled bitmaps",
but I hope it is near to be merged.

v10

clone: tag postcopy-v10 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: 
https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v10

01,02: r-b Fam
03: adjust comments about locking
04: fixed 124 iotest (was broken because of small mistake in 
block/dirty-bitmap.c)
05: rebased on master, staff from migration_thread is moved to 
migration_iteration_run, so
 drop r-b by John and Juan
06: 2.11->2.12, r-b Fam
07,08,09,: r-b Fam

10: move to device names instead of node names, looks like libvirt don't care 
about
 same node-names.
 flag AUTOLOAD is ignored for now
 use QEMU_ALIGN_UP and DIV_ROUND_UP
 skip automatically inserted nodes, when search for dirty bitmaps
 allow migration of no bitmaps (see in dirty_bitmap_load_header new logic
with nothing variable, which avoids extra 
errors)
 handle return code of dirty_bitmap_load_header
 avoid iteration if there are no bitmaps (see new .no_bitmaps field of
  dirty_bitmap_mig_state)
 call dirty_bitmap_mig_before_vm_start from process_incoming_migration_bh 
too,
 to enable bitmaps in case of postcopy not actually started.
11: not add r-b Fam
 tiny reorganisation of do_test_migration parameters: remove useless default
 values and make shared_storage to be the last
 disable shared storage test for now, until it will be fixed (it will be 
separate
 series, more related to qcow2 than to migration)
12: r-b Fam

also, "iotests: add default node-name" is dropped, as not more needed.


v9

clone: tag postcopy-v9 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v9

01: r-b John
02: was incomplete, now add here bdrv_reclaim_dirty_bitmap fix
03: new
04: new
05: r-b John
07: fix type in commit message, r-b John
09: add comment about is_active_iterate, r-b Snow and keep Juan's r-b, hope 
comment is ok
10: change copyright to Virtuozzo
 reword comment at the top of the file
 rewrite init_dirty_bitmap_migration, to not do same things twice (John)
   and skip _only_ unnamed bitmaps, error out for unnamed nodes (John)
 use new "locked" state of bitmaps instead of frozen on source vm
 do not support migrating bitmap to existent one with the same name,
   keep only create-new-bitmap way
 break loop in dirty_bitmap_load_complete when bitmap is found
 use bitmap locking instead of context acquire
12: rewrite, to add more cases. (note, that 169 iotest is also in my
 "[PATCH v2 0/3] fix bitmaps migration through shared storage", which 
probably should
 go to qemu-stable. So this patch should rewrite it, but here I make it 
like new patch,
 to simplify review. When "[PATCH v2..." merged I'll rebase this on it), 
drop r-b
13: move to separate test, drop r-b


v8.1

clone: tag postcopy-v8.1 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: 
https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v8.1

05: fix compilation, add new version for cmma_save_pending too.


v8

clone: tag postcopy-v8 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v8

- rebased on master
- patches 01-03 from v7 are already merged to master
- patch order is changed to make it possible to merge block/dirty-bitmap patches
   in separate if is needed
01: new patch
03: fixed to use _locked version of bdrv_release_dirty_bitmap
06: qapi-schema.json -> qapi/migration.json
 2.9 -> 2.11
10: protocol changed a bit:
   instead of 1 byte "bitmap enabled flag" this byte becomes just "flags"
   and have "enabled", "persistent" and "autoloading" flags inside.
   also, make all migrated bitmaps to be not persistent (to prevent their
   storing on source vm)
14: new patch


patches status:
01-04 - are only about block/dirty-bitmap and have no r-b. Fam, John, Paolo 
(about bitmap lock),
 please look at. These patches are ok to be merged in separate (but before 
05-14)
other patches are about migration
05-09 has Juan's r-b (and some of them has John's and Eric's r-bs)
10 - the main patch (dirty bitmaps migration), has no r-b.
11 - preparation for tests, not related to migration directly, has Max's r-b, 
ok to be merged
 separately (but before 12-14)
12-14 - tests, 12 and 13 have Max's r-b, 14 is new


v7

clone: tag postcopy-v7 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v7

- rebased on dirty-bitmap byte-based 

[Qemu-devel] ping Re: [PATCH v10 00/12] Dirty bitmaps postcopy migration

2018-02-15 Thread Vladimir Sementsov-Ogievskiy

ping
07.02.2018 18:58, Vladimir Sementsov-Ogievskiy wrote:

Hi all!

There is a new version of dirty bitmap postcopy migration series.

Now it is based on Max's block tree: 
https://github.com/XanClic/qemu/commits/block,
where it needs only one patch: "block: maintain persistent disabled bitmaps",
but I hope it is near to be merged.

v10

clone: tag postcopy-v10 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: 
https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v10

01,02: r-b Fam
03: adjust comments about locking
04: fixed 124 iotest (was broken because of small mistake in 
block/dirty-bitmap.c)
05: rebased on master, staff from migration_thread is moved to 
migration_iteration_run, so
 drop r-b by John and Juan
06: 2.11->2.12, r-b Fam
07,08,09,: r-b Fam

10: move to device names instead of node names, looks like libvirt don't care 
about
 same node-names.
 flag AUTOLOAD is ignored for now
 use QEMU_ALIGN_UP and DIV_ROUND_UP
 skip automatically inserted nodes, when search for dirty bitmaps
 allow migration of no bitmaps (see in dirty_bitmap_load_header new logic
with nothing variable, which avoids extra 
errors)
 handle return code of dirty_bitmap_load_header
 avoid iteration if there are no bitmaps (see new .no_bitmaps field of
  dirty_bitmap_mig_state)
 call dirty_bitmap_mig_before_vm_start from process_incoming_migration_bh 
too,
 to enable bitmaps in case of postcopy not actually started.
11: not add r-b Fam
 tiny reorganisation of do_test_migration parameters: remove useless default
 values and make shared_storage to be the last
 disable shared storage test for now, until it will be fixed (it will be 
separate
 series, more related to qcow2 than to migration)
12: r-b Fam

also, "iotests: add default node-name" is dropped, as not more needed.


v9

clone: tag postcopy-v9 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v9

01: r-b John
02: was incomplete, now add here bdrv_reclaim_dirty_bitmap fix
03: new
04: new
05: r-b John
07: fix type in commit message, r-b John
09: add comment about is_active_iterate, r-b Snow and keep Juan's r-b, hope 
comment is ok
10: change copyright to Virtuozzo
 reword comment at the top of the file
 rewrite init_dirty_bitmap_migration, to not do same things twice (John)
   and skip _only_ unnamed bitmaps, error out for unnamed nodes (John)
 use new "locked" state of bitmaps instead of frozen on source vm
 do not support migrating bitmap to existent one with the same name,
   keep only create-new-bitmap way
 break loop in dirty_bitmap_load_complete when bitmap is found
 use bitmap locking instead of context acquire
12: rewrite, to add more cases. (note, that 169 iotest is also in my
 "[PATCH v2 0/3] fix bitmaps migration through shared storage", which 
probably should
 go to qemu-stable. So this patch should rewrite it, but here I make it 
like new patch,
 to simplify review. When "[PATCH v2..." merged I'll rebase this on it), 
drop r-b
13: move to separate test, drop r-b


v8.1

clone: tag postcopy-v8.1 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: 
https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v8.1

05: fix compilation, add new version for cmma_save_pending too.


v8

clone: tag postcopy-v8 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v8

- rebased on master
- patches 01-03 from v7 are already merged to master
- patch order is changed to make it possible to merge block/dirty-bitmap patches
   in separate if is needed
01: new patch
03: fixed to use _locked version of bdrv_release_dirty_bitmap
06: qapi-schema.json -> qapi/migration.json
 2.9 -> 2.11
10: protocol changed a bit:
   instead of 1 byte "bitmap enabled flag" this byte becomes just "flags"
   and have "enabled", "persistent" and "autoloading" flags inside.
   also, make all migrated bitmaps to be not persistent (to prevent their
   storing on source vm)
14: new patch


patches status:
01-04 - are only about block/dirty-bitmap and have no r-b. Fam, John, Paolo 
(about bitmap lock),
 please look at. These patches are ok to be merged in separate (but before 
05-14)
other patches are about migration
05-09 has Juan's r-b (and some of them has John's and Eric's r-bs)
10 - the main patch (dirty bitmaps migration), has no r-b.
11 - preparation for tests, not related to migration directly, has Max's r-b, 
ok to be merged
 separately (but before 12-14)
12-14 - tests, 12 and 13 have Max's r-b, 14 is new


v7

clone: tag postcopy-v7 from https://src.openvz.org/scm/~vsementsov/qemu.git
online: https://src.openvz.org/users/vsementsov/repos/qemu/browse?at=postcopy-v7

- rebased on dirty-bitmap byte-based