Hi
This is a cleanup on top of my previous series. It does:
- create one .h file for each migration/* file
- export with meaningful include names the migration functions that we export
- untangle the includes mess (migration.h in8cluded vmstate.h who
included qemu-file.h). Fixed all callers.
- once there, old MigrationParams are gone. Now block migration can be configured
with migration capabilities like everything else in migration (old command line
parameters are maintained, but on top of this)
- start moving hmp* functions to monitor.c
ToDo:
- move the two remaining hmp commands to monitor.c
really I should move them to block/* something, because they all use
block functions, nothing from migration.c.
- savevm.c/vmstate.c/migration.c: they are still tangled, but I wanted
to send the easy parts for review.
- half of the savevm.c functions are still exported from
sysemu/sysemu.h moving that to a different file, have to think about
it to make patches easier to understand.
- split capabilities/qmp commands/... from migration.c they don't
belong there, and once they are out it would be easier to untangle
the remaining bits.
- goal is still untangle normal migration/xbzrle/compression and rdma,
they are still too untangled together.
- I can still remove some includes that are not needed, but with the
current code, it gets really complicated until there is more cleanup there.
Please, comment.
Juan Quintela (19):
migration: to_dst_file at that point is NULL
migration: They are called vmstate_foo, move them to vmstate.c
migration: Split migration/channel.c for channel operations
migration: Remove MigrationState from migration_channel_incomming()
migration: Export exec.c functions in its own file
migration: Export fd.c functions in its own file
migration: Export socket.c functions in its own file
migration: Export tls.c functions in its own file
migration: Create block capabilities for shared and enable
migration: Remove use of old MigrationParams
migration: Remove old MigrationParams
migration: Remove unneeded includes
migration: Remove qemu-file.h from vmstate.h
migration: Remove vmstate.h from migration.h
migration: Export qemu-file-channel.c functions in its own file
migration: Export ram.c functions in its own file
migration: Export rdma.c functions in its own file
monitor: move hmp_savevm() to monitor.c
monitor: remove monitor parameter from save_vmstate
include/hw/hw.h | 1 +
include/migration/channel.h | 24 +++++++
include/migration/colo.h | 3 -
include/migration/exec.h | 20 ++++++
include/migration/fd.h | 20 ++++++
include/migration/migration.h | 86 ++-----------------------
include/migration/qemu-file-channel.h | 22 +++++++
include/migration/qemu-file.h | 3 -
include/migration/ram.h | 54 ++++++++++++++++
include/migration/rdma.h | 22 +++++++
include/migration/socket.h | 25 ++++++++
include/migration/tls.h | 27 ++++++++
include/migration/vmstate.h | 4 --
include/qemu/typedefs.h | 1 -
include/sysemu/sysemu.h | 6 +-
migration/Makefile.objs | 2 +-
migration/block.c | 26 ++------
migration/channel.c | 72 +++++++++++++++++++++
migration/colo-comm.c | 2 +-
migration/colo-failover.c | 1 +
migration/colo.c | 8 +--
migration/exec.c | 6 +-
migration/fd.c | 6 +-
migration/migration.c | 116 +++++++++++++++-------------------
migration/postcopy-ram.c | 4 +-
migration/qemu-file-channel.c | 2 +-
migration/qemu-file.c | 4 +-
migration/ram.c | 5 +-
migration/rdma.c | 5 +-
migration/savevm.c | 63 ++++--------------
migration/socket.c | 6 +-
migration/tls.c | 5 +-
migration/vmstate.c | 16 +++++
monitor.c | 5 ++
qapi-schema.json | 7 +-
replay/replay-snapshot.c | 2 +-
36 files changed, 417 insertions(+), 264 deletions(-)
create mode 100644 include/migration/channel.h
create mode 100644 include/migration/exec.h
create mode 100644 include/migration/fd.h
create mode 100644 include/migration/qemu-file-channel.h
create mode 100644 include/migration/ram.h
create mode 100644 include/migration/rdma.h
create mode 100644 include/migration/socket.h
create mode 100644 include/migration/tls.h
create mode 100644 migration/channel.c
--
2.9.3