I picked this topic out as suggested by Juan. Also I did what Juan has suggested in previous discussions that I moved lots of global parameters into MigrationState, and let them be properties. Then we can use HW_COMPAT_* and "-global migration.xxx=xxx" formular.
If without xen_init(), we can remove more LOC. However there is it, so I changed the bits as best as I can. If this can be merged and okay, we can move on to convert more things into properties for migration. Please review. Thanks. Peter Xu (6): migration: let MigrationState be a qdev migration: move global_state.optional out migration: use compat bit for global_state migration: move only_migratable to MigrationState migration: move skip_configuration out migration: move skip_section_footers hw/i386/pc_piix.c | 3 -- hw/ppc/spapr.c | 3 -- include/hw/compat.h | 12 ++++++ include/migration/migration.h | 33 +++++++++++++++++ include/sysemu/sysemu.h | 1 - migration/migration.c | 85 +++++++++++++++++++++++++++++++------------ migration/savevm.c | 22 +++++------ vl.c | 9 ++++- 8 files changed, 123 insertions(+), 45 deletions(-) -- 2.7.4