]> xenbits.xensource.com Git - qemu-xen.git/commitdiff
block/nbd: fix channel object leak
authorRoman Kagan <rvkagan@yandex-team.ru>
Thu, 10 Jun 2021 10:07:32 +0000 (13:07 +0300)
committerEric Blake <eblake@redhat.com>
Fri, 18 Jun 2021 15:59:52 +0000 (10:59 -0500)
nbd_free_connect_thread leaks the channel object if it hasn't been
stolen.

Unref it and fix the leak.

Signed-off-by: Roman Kagan <rvkagan@yandex-team.ru>
Reviewed-by: Eric Blake <eblake@redhat.com>
Message-Id: <20210610100802.5888-3-vsementsov@virtuozzo.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
block/nbd.c

index 616f9ae6c4daf5576c42826f7bc10da01be772b0..f4b3407587dfc1bf3e7c5ad21637b8a7d503c57a 100644 (file)
@@ -381,6 +381,7 @@ static void nbd_free_connect_thread(NBDConnectThread *thr)
 {
     if (thr->sioc) {
         qio_channel_close(QIO_CHANNEL(thr->sioc), NULL);
+        object_unref(OBJECT(thr->sioc));
     }
     error_free(thr->err);
     qapi_free_SocketAddress(thr->saddr);