qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v8 16/20] migration: Create thread infrastructur


From: Daniel P. Berrange
Subject: Re: [Qemu-devel] [PATCH v8 16/20] migration: Create thread infrastructure for multifd recv side
Date: Wed, 13 Sep 2017 12:42:31 +0100
User-agent: Mutt/1.8.3 (2017-05-23)

On Wed, Sep 13, 2017 at 12:59:49PM +0200, Juan Quintela wrote:
> We make the locking and the transfer of information specific, even if we
> are still receiving things through the main thread.
> 
> Signed-off-by: Juan Quintela <address@hidden>
> 
> --
> 
> We split when we create the main channel and where we start the main
> migration thread, so we wait for the creation of the other threads.
> 
> Use multifd_clear_pages().
> Don't remove object_unref()
> ---
>  migration/migration.c |  7 ++++---
>  migration/migration.h |  1 +
>  migration/ram.c       | 55 
> +++++++++++++++++++++++++++++++++++++++++++++++----
>  migration/socket.c    |  2 +-
>  4 files changed, 57 insertions(+), 8 deletions(-)
> 

> diff --git a/migration/socket.c b/migration/socket.c
> index 22fb05edc8..63dedb22e8 100644
> --- a/migration/socket.c
> +++ b/migration/socket.c
> @@ -180,12 +180,12 @@ static gboolean 
> socket_accept_incoming_migration(QIOChannel *ioc,
>  
>      qio_channel_set_name(QIO_CHANNEL(sioc), "migration-socket-incoming");
>      migration_channel_process_incoming(QIO_CHANNEL(sioc));
> -    object_unref(OBJECT(sioc));

As before - this creates a reference leak.  migration_channel_process_incoming
will acquire its own reference on 'sioc', so we must drop the reference that
this function owns.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|



reply via email to

[Prev in Thread] Current Thread [Next in Thread]