[libvirt] [PATCH v2 1/8] Added public API to enable post-copy migration

Jiri Denemark jdenemar at redhat.com
Tue Sep 30 15:11:03 UTC 2014


On Tue, Sep 30, 2014 at 16:39:22 +0200, Cristian Klein wrote:
> Signed-off-by: Cristian Klein <cristian.klein at cs.umu.se>
> ---
>  include/libvirt/libvirt.h.in | 1 +
>  src/libvirt.c                | 7 +++++++
>  2 files changed, 8 insertions(+)
> 
> diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in
> index 5217ab3..82f3aeb 100644
> --- a/include/libvirt/libvirt.h.in
> +++ b/include/libvirt/libvirt.h.in
> @@ -1225,6 +1225,7 @@ typedef enum {
>      VIR_MIGRATE_ABORT_ON_ERROR    = (1 << 12), /* abort migration on I/O errors happened during migration */
>      VIR_MIGRATE_AUTO_CONVERGE     = (1 << 13), /* force convergence */
>      VIR_MIGRATE_RDMA_PIN_ALL      = (1 << 14), /* RDMA memory pinning */
> +    VIR_MIGRATE_POSTCOPY          = (1 << 15), /* enable (but don't start) post-copy */
>  } virDomainMigrateFlags;

I still think we should add an extra flag to start post copy
immediately. To address your concerns about it, I don't think it's
implementing a policy in libvirt. It's for apps that want to make sure
migration converges without having to spawn another thread and monitor
the progress or wait for a timeout. It's a bit similar to migrating a
paused domain vs. migrating a running domain and pausing it when it
doesn't seem to converge.

Yesterday, I talked to VDSM guys and it seems like this extra flag would
be what they'd start with when implementing support for post-copy
migration. It's already a significant change for them so they'd like to
start with a simple usage pattern first.

(I'll continue reviewing this series tomorrow.)

Jirka




More information about the libvir-list mailing list