qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v2 00/11] migration: export cap/params to qdev props
@ 2017-07-17  8:26 Peter Xu
  2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 01/11] qdev: provide DEFINE_PROP_INT64() Peter Xu
                   ` (10 more replies)
  0 siblings, 11 replies; 36+ messages in thread
From: Peter Xu @ 2017-07-17  8:26 UTC (permalink / raw)
  To: qemu-devel
  Cc: Eduardo Habkost, Laurent Vivier, Peter Xu, Markus Armbruster,
	Juan Quintela, Dr . David Alan Gilbert

v2:
- extended the series from 3 -> 11 patches
- renamed all the properties with "x-" prefix
- handled the cap/param check for these new properties (mostly patch
  4-11, but it contains lots of refactorings in general)

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).

Please review. Thanks.

Peter Xu (11):
  qdev: provide DEFINE_PROP_INT64()
  migration: export parameters to props
  migration: export capabilities to props
  qom: call parent first on post_init()
  migration: introduce migrate_params_check()
  migration: provide migrate_params_apply()
  migration: check global params for validity
  migration: remove check against colo support
  migration: provide migrate_caps_check()
  migration: provide migrate_cap_add()
  migration: check global caps for validity

 hw/core/qdev-properties.c    |  32 +++++
 include/hw/qdev-properties.h |   3 +
 include/migration/colo.h     |   1 -
 migration/colo.c             |   5 -
 migration/migration.c        | 272 ++++++++++++++++++++++++++++++++++---------
 qom/object.c                 |   8 +-
 6 files changed, 253 insertions(+), 68 deletions(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 36+ messages in thread

end of thread, other threads:[~2017-07-18  7:11 UTC | newest]

Thread overview: 36+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-07-17  8:26 [Qemu-devel] [PATCH v2 00/11] migration: export cap/params to qdev props Peter Xu
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 01/11] qdev: provide DEFINE_PROP_INT64() Peter Xu
2017-07-17  8:30   ` Marcel Apfelbaum
2017-07-17 16:24   ` Juan Quintela
2017-07-17 16:30   ` Eric Blake
2017-07-18  1:25     ` Peter Xu
2017-07-17 17:49   ` Eduardo Habkost
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 02/11] migration: export parameters to props Peter Xu
2017-07-17 16:30   ` Juan Quintela
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 03/11] migration: export capabilities " Peter Xu
2017-07-17 16:58   ` Juan Quintela
2017-07-18  1:34     ` Peter Xu
2017-07-17 17:52   ` Eduardo Habkost
2017-07-18  1:00     ` Peter Xu
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 04/11] qom: call parent first on post_init() Peter Xu
2017-07-17 18:02   ` Eduardo Habkost
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 05/11] migration: introduce migrate_params_check() Peter Xu
2017-07-17 17:04   ` Juan Quintela
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 06/11] migration: provide migrate_params_apply() Peter Xu
2017-07-17 19:01   ` Juan Quintela
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 07/11] migration: check global params for validity Peter Xu
2017-07-17 17:50   ` Juan Quintela
2017-07-17 18:25   ` Eduardo Habkost
2017-07-18  1:56     ` Peter Xu
2017-07-18  2:33       ` Eduardo Habkost
2017-07-18  2:41         ` Peter Xu
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 08/11] migration: remove check against colo support Peter Xu
2017-07-17 17:07   ` Juan Quintela
2017-07-18  7:13   ` Zhang Chen
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 09/11] migration: provide migrate_caps_check() Peter Xu
2017-07-17 19:03   ` Juan Quintela
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 10/11] migration: provide migrate_cap_add() Peter Xu
2017-07-17 17:14   ` Juan Quintela
2017-07-18  3:10     ` Peter Xu
2017-07-17  8:26 ` [Qemu-devel] [PATCH v2 11/11] migration: check global caps for validity Peter Xu
2017-07-17 19:48   ` Juan Quintela

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).