[Qemu-devel] [PATCH 00/11] Misc migration cleanups

Juan Quintela posted 11 patches 6 years, 10 months ago
Failed in applying to current master (apply log)
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%)
[Qemu-devel] [PATCH 00/11] Misc migration cleanups
Posted by Juan Quintela 6 years, 10 months ago
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%)

-- 
2.9.4


Re: [Qemu-devel] [PATCH 00/11] Misc migration cleanups
Posted by Philippe Mathieu-Daudé 6 years, 10 months ago
for patches 1 to 10:
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

On 06/01/2017 06:29 PM, Juan Quintela wrote:
> 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%)
>