diff options
author | Fabiano Rosas <farosas@suse.de> | 2025-02-13 14:59:19 -0300 |
---|---|---|
committer | Fabiano Rosas <farosas@suse.de> | 2025-02-14 15:19:05 -0300 |
commit | a47f0cfba8d33f7001bcc4616f96e42dbd553135 (patch) | |
tree | a0e19c2be012aeb1ce67e49c5a8de4c19c168a1a /migration | |
parent | e0ad300fe1a0e0b12b90994bab6e4df77dd1ee8a (diff) | |
download | qemu-a47f0cfba8d33f7001bcc4616f96e42dbd553135.zip qemu-a47f0cfba8d33f7001bcc4616f96e42dbd553135.tar.gz qemu-a47f0cfba8d33f7001bcc4616f96e42dbd553135.tar.bz2 |
migration: Set migration error outside of migrate_cancel
There's no point passing the error into migration cancel only for it
to call migrate_set_error().
Reviewed-by: Peter Xu <peterx@redhat.com>
Message-ID: <20250213175927.19642-2-farosas@suse.de>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Diffstat (limited to 'migration')
-rw-r--r-- | migration/migration.c | 7 | ||||
-rw-r--r-- | migration/migration.h | 2 | ||||
-rw-r--r-- | migration/ram.c | 4 |
3 files changed, 6 insertions, 7 deletions
diff --git a/migration/migration.c b/migration/migration.c index 3969285..7728f52 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -342,11 +342,8 @@ void migration_bh_schedule(QEMUBHFunc *cb, void *opaque) qemu_bh_schedule(bh); } -void migration_cancel(const Error *error) +void migration_cancel() { - if (error) { - migrate_set_error(current_migration, error); - } if (migrate_dirty_limit()) { qmp_cancel_vcpu_dirty_limit(false, -1, NULL); } @@ -365,7 +362,7 @@ void migration_shutdown(void) * Cancel the current migration - that will (eventually) * stop the migration using this structure */ - migration_cancel(NULL); + migration_cancel(); object_unref(OBJECT(current_migration)); /* diff --git a/migration/migration.h b/migration/migration.h index eb84f75..f083f4f 100644 --- a/migration/migration.h +++ b/migration/migration.h @@ -563,7 +563,7 @@ void migration_make_urgent_request(void); void migration_consume_urgent_request(void); bool migration_rate_limit(void); void migration_bh_schedule(QEMUBHFunc *cb, void *opaque); -void migration_cancel(const Error *error); +void migration_cancel(void); void migration_populate_vfio_info(MigrationInfo *info); void migration_reset_vfio_bytes_transferred(void); diff --git a/migration/ram.c b/migration/ram.c index 6f460fd..589b650 100644 --- a/migration/ram.c +++ b/migration/ram.c @@ -4465,8 +4465,10 @@ static void ram_mig_ram_block_resized(RAMBlockNotifier *n, void *host, * Abort and indicate a proper reason. */ error_setg(&err, "RAM block '%s' resized during precopy.", rb->idstr); - migration_cancel(err); + migrate_set_error(migrate_get_current(), err); error_free(err); + + migration_cancel(); } switch (ps) { |