[libvirt] [PATCH 8/8] Use max speed specified in domain conf when migrating

Daniel P. Berrange berrange at redhat.com
Thu Sep 1 12:43:06 UTC 2011


On Fri, Aug 26, 2011 at 12:10:27PM -0600, Jim Fehlig wrote:
> Prefer qemuMigrationRun() 'resource' parameter, but consider value
> set in domain conf if 'resource' is 0.
> ---
>  src/qemu/qemu_migration.c |    6 ++++--
>  1 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
> index 910cd8d..878d163 100644
> --- a/src/qemu/qemu_migration.c
> +++ b/src/qemu/qemu_migration.c
> @@ -1415,6 +1415,8 @@ qemuMigrationRun(struct qemud_driver *driver,
>      qemuMigrationCookiePtr mig = NULL;
>      qemuMigrationIOThreadPtr iothread = NULL;
>      int fd = -1;
> +    unsigned long migrate_speed = resource ? resource :
> +            vm->def->migration_max_bandwidth;
>  
>      VIR_DEBUG("driver=%p, vm=%p, cookiein=%s, cookieinlen=%d, "
>                "cookieout=%p, cookieoutlen=%p, flags=%lx, resource=%lu, "
> @@ -1450,8 +1452,8 @@ qemuMigrationRun(struct qemud_driver *driver,
>                                         QEMU_ASYNC_JOB_MIGRATION_OUT) < 0)
>          goto cleanup;
>  
> -    if (resource > 0 &&
> -        qemuMonitorSetMigrationSpeed(priv->mon, resource) < 0) {
> +    if (migrate_speed > 0 &&
> +        qemuMonitorSetMigrationSpeed(priv->mon, migrate_speed) < 0) {
>          qemuDomainObjExitMonitorWithDriver(driver, vm);
>          goto cleanup;
>      }

Again, if we make sure we always have an internal default migration
bandwidth, we can make this unconditonal, and avoid reliance on
unpredictable QEMU defaults


Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list