Hi
This are a bit of everything:
- Remove unneeded argumets for migration_channel_incomming
- Lots of changes to make migration.h local to only migration
* Move self_annonce_delay() to misc.h
I know this conflicts for announce changes from Vlad, but
I want to remove migration.h from being exported.
* split registrantion functions to register.h
* Almost everything uses vmsd's for registration
* Move constants to the places that use it
And they are not used outside of migration/*
* create global_state.c, as they don't belong anywhere else
ToSend:
* RAMState is a dynamic variable on my tree
* save_{setup,cleanup} and load_{setup,cleanup}
Yes Kevin, that is for block layer
* move all ram.c to use load_setup/cleanup
ToDo easy: (probably post 2.10)
* split qapi functions from migration.c
They don't belong there, and it would be clearer about what is configuratio
and what is code
* block.c and page_cache.c still use DPRINTF, they should move to use tracing
this is easy, volunteers, please.
* Now that it is clear what functions are exported and which not, writting
documentation could
be a good idea for them.
ToDo, difficult:
* rdma.c -> this needs some love, it uses a completely different set of hooks
that everything
else, should have to integrate somehow everything together.
* abstract compression, xbzrle, postcopy and rdma into something that
is easier to understand.
Please, review.
Thanks, Juan.
Juan Quintela (11):
migration: Remove MigrationState from migration_channel_incomming()
migration: Move self_announce_delay() to misc.h
migration: Split registration functions from vmstate.h
migration: Move dump_vmsate_json_to_file() to misc.h
migration: Move constants to savevm.h
migration: Commands are only used inside migration.c
migration: ram_control_* are implemented in qemu_file
migration: create global_state.c
migration: Move remaining exported functions to migration/misc.h
migration: Move migration.h to migration/
migration: Remove unneeded includes
hw/i386/pc_piix.c | 3 +-
hw/net/virtio-net.c | 1 +
hw/net/vmxnet3.c | 1 +
hw/ppc/spapr.c | 4 +-
hw/s390x/s390-skeys.c | 1 +
hw/s390x/s390-virtio-ccw.c | 1 +
hw/xen/xen-common.c | 3 +-
include/migration/colo.h | 3 -
include/migration/global_state.h | 25 ++++
include/migration/misc.h | 28 +++++
include/migration/register.h | 64 ++++++++++
include/migration/vmstate.h | 57 ---------
migration/Makefile.objs | 2 +-
migration/block.c | 9 +-
migration/channel.c | 7 +-
migration/channel.h | 3 +-
migration/colo-comm.c | 2 +-
migration/colo-failover.c | 2 +
migration/colo.c | 4 +-
migration/exec.c | 4 +-
migration/fd.c | 4 +-
migration/global_state.c | 139 +++++++++++++++++++++
migration/migration.c | 176 +++++----------------------
{include/migration => migration}/migration.h | 67 ----------
migration/postcopy-ram.c | 6 +-
migration/qemu-file.c | 4 +-
migration/qemu-file.h | 17 +++
migration/ram.c | 7 +-
migration/rdma.c | 2 +-
migration/savevm.c | 11 +-
migration/savevm.h | 15 +++
migration/socket.c | 5 +-
migration/tls.c | 4 +-
migration/vmstate-types.c | 2 +-
migration/vmstate.c | 3 +-
qdev-monitor.c | 2 +-
slirp/slirp.c | 1 +
tests/test-vmstate.c | 3 +-
ui/spice-core.c | 2 +-
vl.c | 2 +-
40 files changed, 368 insertions(+), 328 deletions(-)
create mode 100644 include/migration/global_state.h
create mode 100644 include/migration/register.h
create mode 100644 migration/global_state.c
rename {include/migration => migration}/migration.h (62%)