* Peter Xu (pet...@redhat.com) wrote:
> We have the MigrationState as QDev now (which seems crazy). Let's
> continue to benefit.
> 
> This series is exporting all migration capabilities/params as global
> parameters. Then we can do something like this:
> 
>   qemu -global migration.postcopy-ram=true \
>        -global migration.max-bandwidth=4096
> 
> The values will be inited just like we typed these values into HMP
> monitor. It'll simplify lots of migration scripts.
> 
> The changes are fairly straightforward. One tiny loss is that we still
> don't support:
> 
>   -global migration.max-bandwidth=1g
> 
> ...just like what we did in HMP:
> 
>   migrate_set_speed 1g
> 
> ...while we need to use:
> 
>   -global migration.max-bandwidth=1073741824
> 
> However that should only be used in scripts, and that's good enough
> imho.
> 
> These properties should only be used for debugging/testing purpose,
> and we should not guarantee any interface compatibility for them (just
> like HMP).

I guess the sanity checks in qmp_migrate_set_parameters and
qmp_migrate_set_capabilities aren't run?

Also, have you done any checks on multiple migrations; e.g. it's good
to check that the flags/state are all preserved if we do a migrate, that
migrate fails or is cancelled and then you do a 2nd migrate.

Dave

> Please review. Thanks.
> 
> Peter Xu (3):
>   qdev: provide DEFINE_PROP_INT64()
>   migration: export parameters to props
>   migration: export capabilities to props
> 
>  hw/core/qdev-properties.c    | 32 +++++++++++++++++++++++++++
>  include/hw/qdev-properties.h |  3 +++
>  migration/migration.c        | 52 
> +++++++++++++++++++++++++++++++++++---------
>  3 files changed, 77 insertions(+), 10 deletions(-)
> 
> -- 
> 2.7.4
> 
--
Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK

Reply via email to