[libvirt] [PATCH 4/6] libxl: Add refcnt for args->vm during migration

John Ferlan posted 6 patches 7 years, 9 months ago
[libvirt] [PATCH 4/6] libxl: Add refcnt for args->vm during migration
Posted by John Ferlan 7 years, 9 months ago
When adding the @vm to the @args for usage during a thread or
callback, let's add the reference to it at the time of adding to
ensure nothing else deletes it. The corresponding Unref is then
added to the Dispose function.

Signed-off-by: John Ferlan <jferlan@redhat.com>
---
 src/libxl/libxl_migration.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/libxl/libxl_migration.c b/src/libxl/libxl_migration.c
index d7b494b392..7fe352306c 100644
--- a/src/libxl/libxl_migration.c
+++ b/src/libxl/libxl_migration.c
@@ -239,6 +239,7 @@ libxlMigrationDstArgsDispose(void *obj)
 
     libxlMigrationCookieFree(args->migcookie);
     VIR_FREE(args->socks);
+    virObjectUnref(args->vm);
 }
 
 static int
@@ -608,7 +609,7 @@ libxlDomainMigrationDstPrepareTunnel3(virConnectPtr dconn,
         goto error;
 
     args->conn = dconn;
-    args->vm = vm;
+    args->vm = virObjectRef(vm);
     args->flags = flags;
     args->migcookie = mig;
     /* Receive from pipeOut */
@@ -763,7 +764,7 @@ libxlDomainMigrationDstPrepare(virConnectPtr dconn,
         goto error;
 
     args->conn = dconn;
-    args->vm = vm;
+    args->vm = virObjectRef(vm);
     args->flags = flags;
     args->socks = socks;
     args->nsocks = nsocks;
-- 
2.13.6

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list
Re: [libvirt] [PATCH 4/6] libxl: Add refcnt for args->vm during migration
Posted by Marc Hartmayer 7 years, 9 months ago
On Tue, Apr 24, 2018 at 02:28 PM +0200, John Ferlan <jferlan@redhat.com> wrote:
> When adding the @vm to the @args for usage during a thread or
> callback, let's add the reference to it at the time of adding to
> ensure nothing else deletes it. The corresponding Unref is then
> added to the Dispose function.
>
> Signed-off-by: John Ferlan <jferlan@redhat.com>
> ---
>  src/libxl/libxl_migration.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/src/libxl/libxl_migration.c b/src/libxl/libxl_migration.c
> index d7b494b392..7fe352306c 100644
> --- a/src/libxl/libxl_migration.c
> +++ b/src/libxl/libxl_migration.c
> @@ -239,6 +239,7 @@ libxlMigrationDstArgsDispose(void *obj)
>
>      libxlMigrationCookieFree(args->migcookie);
>      VIR_FREE(args->socks);
> +    virObjectUnref(args->vm);
>  }
>
>  static int
> @@ -608,7 +609,7 @@ libxlDomainMigrationDstPrepareTunnel3(virConnectPtr dconn,
>          goto error;
>
>      args->conn = dconn;
> -    args->vm = vm;
> +    args->vm = virObjectRef(vm);
>      args->flags = flags;
>      args->migcookie = mig;
>      /* Receive from pipeOut */
> @@ -763,7 +764,7 @@ libxlDomainMigrationDstPrepare(virConnectPtr dconn,
>          goto error;
>
>      args->conn = dconn;
> -    args->vm = vm;
> +    args->vm = virObjectRef(vm);
>      args->flags = flags;
>      args->socks = socks;
>      args->nsocks = nsocks;
> --
> 2.13.6
>
> --
> libvir-list mailing list
> libvir-list@redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list
>

Reviewed-by: Marc Hartmayer <mhartmay@linux.vnet.ibm.com>

--
Beste Grüße / Kind regards
   Marc Hartmayer

IBM Deutschland Research & Development GmbH
Vorsitzende des Aufsichtsrats: Martina Koederitz
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294


--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list