[libvirt] [PATCH 0/3] Transport Open vSwitch per-port data during live migration

Kyle Mestery kmestery at cisco.com
Fri Sep 14 16:38:12 UTC 2012


This series of commits has the end goal of allowing per-port data stored
in the Open vSwitch DB to be transported during live migration. This is
done by first providing a generic infrastructure for transporting network
data, adding some utility functions specific to Open vSwitch, and hooking
the two together.

The framework provided is generic in that other networking data could be
transferred as well by simply adding in additional hooks as needed.

Kyle Mestery (3):
  Add the ability for the Qemu V3 migration protocol to include    
    transporting network configuration. A generic framework is proposed
        with this patch to allow for the transfer of opaque data.
  Add utility functions for Open vSwitch to both save per-port data    
    before a live migration, and restore the per-port data after a    
    live migration.
  Transport Open vSwitch per-port data during live migration by    
    using the utility functions virNetDevOpenvswitchGetMigrateData()   
     and virNetDevOpenvswitchSetMigrateData().

 cfg.mk                                             |   9 +
 configure.ac                                       |  36 +-
 docs/formatdomain.html.in                          |  45 +-
 docs/schemas/domaincommon.rng                      |  75 ++-
 src/conf/domain_conf.c                             | 394 +++++++++++-
 src/conf/domain_conf.h                             |  32 +
 src/esx/esx_util.c                                 |   7 +-
 src/libvirt.c                                      |  20 +-
 src/libvirt_private.syms                           |   5 +
 src/parallels/parallels_driver.c                   | 133 +++-
 src/qemu/qemu_capabilities.c                       | 679 +++++++++++++++------
 src/qemu/qemu_capabilities.h                       |  49 +-
 src/qemu/qemu_command.c                            | 660 +++++++++++---------
 src/qemu/qemu_command.h                            |  56 +-
 src/qemu/qemu_domain.c                             |  16 +-
 src/qemu/qemu_domain.h                             |   4 +-
 src/qemu/qemu_driver.c                             |  50 +-
 src/qemu/qemu_hotplug.c                            | 141 ++---
 src/qemu/qemu_migration.c                          | 295 ++++++++-
 src/qemu/qemu_monitor.c                            | 114 ++--
 src/qemu/qemu_monitor.h                            |  10 +-
 src/qemu/qemu_monitor_json.c                       |  77 ++-
 src/qemu/qemu_monitor_json.h                       |   5 +-
 src/qemu/qemu_monitor_text.c                       | 335 +++-------
 src/qemu/qemu_process.c                            |  62 +-
 src/rpc/virnetserverprogram.c                      |  11 +-
 src/rpc/virnettlscontext.c                         |   6 +-
 src/util/bitmap.c                                  |  19 +
 src/util/bitmap.h                                  |   6 +
 src/util/virnetdevopenvswitch.c                    |  71 +++
 src/util/virnetdevopenvswitch.h                    |   6 +
 src/vbox/vbox_tmpl.c                               |  14 +-
 src/vmware/vmware_driver.c                         |   4 +-
 tests/Makefile.am                                  |  10 +-
 .../domain-parallels-ct-simple.xml                 |  27 +
 tests/qemuhelptest.c                               |  16 +-
 tests/qemumonitortestutils.c                       |  12 +-
 .../qemuxml2argv-cpu-eoi-disabled.args             |   4 +
 .../qemuxml2argv-cpu-eoi-disabled.xml              |  28 +
 .../qemuxml2argv-cpu-eoi-enabled.args              |   4 +
 .../qemuxml2argv-cpu-eoi-enabled.xml               |  28 +
 .../qemuxml2argv-eoi-disabled.args                 |   4 +
 .../qemuxml2argvdata/qemuxml2argv-eoi-disabled.xml |  25 +
 .../qemuxml2argvdata/qemuxml2argv-eoi-enabled.args |   4 +
 .../qemuxml2argvdata/qemuxml2argv-eoi-enabled.xml  |  25 +
 .../qemuxml2argv-usb-redir-filter.args             |  10 +
 .../qemuxml2argv-usb-redir-filter.xml              |  45 ++
 tests/qemuxml2argvtest.c                           |  23 +-
 tests/qemuxml2xmltest.c                            |   6 +
 tests/qemuxmlnstest.c                              |   6 +-
 tests/undefine                                     |  72 ---
 tests/virsh-undefine                               |  72 +++
 tools/virsh-domain.c                               |   4 +-
 tools/virsh-network.c                              |   8 +-
 tools/virsh-pool.c                                 |   8 +-
 tools/virsh-volume.c                               |   8 +-
 56 files changed, 2678 insertions(+), 1217 deletions(-)
 create mode 100644 tests/domainschemadata/domain-parallels-ct-simple.xml
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-cpu-eoi-disabled.args
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-cpu-eoi-disabled.xml
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-cpu-eoi-enabled.args
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-cpu-eoi-enabled.xml
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-eoi-disabled.args
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-eoi-disabled.xml
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-eoi-enabled.args
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-eoi-enabled.xml
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-usb-redir-filter.args
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-usb-redir-filter.xml
 delete mode 100755 tests/undefine
 create mode 100755 tests/virsh-undefine

-- 
1.7.11.4




More information about the libvir-list mailing list