From 84ac6fa12df3e96fdae8f3d992a7c2914c9a6ca5 Mon Sep 17 00:00:00 2001 From: Fabiano Rosas Date: Thu, 1 Aug 2024 14:41:00 -0300 Subject: [PATCH] migration: Fix cleanup of iochannel in file migration The QIOChannelFile object already has its reference decremented by g_autoptr. Trying to unref an extra time causes: ERROR:../qom/object.c:1241:object_unref: assertion failed: (obj->ref > 0) Fixes: a701c03dec ("migration: Drop reference to QIOChannel if file seeking fails") Fixes: 6d3279655a ("migration: Fix file migration with fdset") Reported-by: Jim Fehlig Reviewed-by: Peter Xu Signed-off-by: Fabiano Rosas --- migration/file.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/migration/file.c b/migration/file.c index db870f2cf0..6451a21c86 100644 --- a/migration/file.c +++ b/migration/file.c @@ -112,7 +112,6 @@ void file_start_outgoing_migration(MigrationState *s, error_setg_errno(errp, errno, "failed to truncate migration file to offset %" PRIx64, offset); - object_unref(OBJECT(fioc)); return; } @@ -120,7 +119,6 @@ void file_start_outgoing_migration(MigrationState *s, ioc = QIO_CHANNEL(fioc); if (offset && qio_channel_io_seek(ioc, offset, SEEK_SET, errp) < 0) { - object_unref(OBJECT(fioc)); return; } qio_channel_set_name(ioc, "migration-file-outgoing");