[libvirt] [PATCH 00/21] Make migration APIs more extensible
Michal Privoznik
mprivozn at redhat.com
Thu Jun 20 08:42:11 UTC 2013
On 18.06.2013 16:05, Jiri Denemark wrote:
> Current migration APIs support a fixed set of optional parameters and
> whenever there is a need for a new parameter, a whole bunch of new
> internal and external APIs have to be introduced. This patch set
> introduces new extensible APIs that use virTypedParameters for passing
> optional parameters to a migration protocol. Thus making it possible to
> introduce new parameters without the need for new APIs.
>
> The first 7 patches provide some basic infrastructure needed by the
> following patches. Patches 8 to 19 add support for the new extensible
> APIs and patches 20 and 21 make use of the new APIs to introduce
> additional migration parameter.
>
> Have fun.
>
> Jiri Denemark (21):
> 1 Rename virTypedParameterArrayValidate as virTypedParamsValidate
> 2 util: Emit proper error code in virTypedParamsValidate
> 3 Introduce virTypedParamsCheck internal API
> 4 Introduce virTypedParamsReplaceString internal API
> 5 Introduce VIR_TYPED_PARAMS_DEBUG macro for dumping typed params
> 6 Log input type parameters in API entry points
> 7 Introduce virTypedParamsCopy internal API
> 8 Introduce migration parameters
> 9 New internal migration APIs with extensible parameters
> 10 Implement extensible migration APIs in remote driver
> 11 Implement extensible migration APIs in qemu driver
> 12 qemu: Move internals of Begin phase to qemu_migration.c
> 13 qemu: Move internals of Prepare phase to qemu_migration.c
> 14 qemu: Move internals of Confirm phase to qemu_migration.c
> 15 Adapt virDomainMigrateVersion3 for extensible migration APIs
> 16 Adapt virDomainMigratePeer2Peer for extensible migration APIs
> 17 Extensible migration APIs
> 18 python: Add bindings for extensible migration APIs
> 19 virsh: Use extensible migration APIs
> 20 Introduce VIR_MIGRATE_PARAM_GRAPHICS_URI parameter
> 21 qemu: Implement support for VIR_MIGRATE_PARAM_GRAPHICS_URI
>
> daemon/remote.c | 331 ++++++++++++-
> docs/apibuild.py | 11 +-
> docs/hvsupport.pl | 7 +
> include/libvirt/libvirt.h.in | 87 ++++
> python/generator.py | 2 +
> python/libvirt-override-api.xml | 18 +
> python/libvirt-override.c | 218 +++++++++
> src/driver.h | 67 +++
> src/esx/esx_driver.c | 24 +-
> src/libvirt.c | 1022 ++++++++++++++++++++++++++++++++++-----
> src/libvirt_internal.h | 59 +++
> src/libvirt_private.syms | 14 +-
> src/libvirt_public.syms | 6 +
> src/libxl/libxl_driver.c | 12 +-
> src/lxc/lxc_driver.c | 40 +-
> src/nodeinfo.c | 16 +-
> src/openvz/openvz_driver.c | 16 +-
> src/qemu/qemu_driver.c | 633 ++++++++++++------------
> src/qemu/qemu_migration.c | 730 ++++++++++++++++++++--------
> src/qemu/qemu_migration.h | 45 +-
> src/remote/remote_driver.c | 398 +++++++++++++++
> src/remote/remote_protocol.x | 96 +++-
> src/remote_protocol-structs | 107 ++++
> src/test/test_driver.c | 8 +-
> src/util/virtypedparam.c | 163 ++++++-
> src/util/virtypedparam.h | 36 +-
> src/xen/xen_hypervisor.c | 12 +-
> tools/virsh-domain.c | 88 +++-
> tools/virsh.pod | 18 +-
> 29 files changed, 3548 insertions(+), 736 deletions(-)
>
I've not spotted anything obviously wrong in the patch set. But see my
inline comments to patches. Esp. in 05/21 please do report OOM error for
virAsprintf (I know I promised virAsprintf to report OOM error and I got
patches ready, but haven't posted yet).
ACK series
Michal
More information about the libvir-list
mailing list