[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 01/11] migration: provide an error message to migration_cancel()
From: |
Juan Quintela |
Subject: |
[PULL 01/11] migration: provide an error message to migration_cancel() |
Date: |
Wed, 3 Nov 2021 09:45:55 +0100 |
From: Laurent Vivier <lvivier@redhat.com>
This avoids to call migrate_get_current() in the caller function
whereas migration_cancel() already needs the pointer to the current
migration state.
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
---
migration/migration.h | 2 +-
migration/migration.c | 9 ++++++---
migration/ram.c | 3 +--
3 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/migration/migration.h b/migration/migration.h
index 7a5aa8c2fd..8130b703eb 100644
--- a/migration/migration.h
+++ b/migration/migration.h
@@ -388,7 +388,7 @@ int foreach_not_ignored_block(RAMBlockIterFunc func, void
*opaque);
void migration_make_urgent_request(void);
void migration_consume_urgent_request(void);
bool migration_rate_limit(void);
-void migration_cancel(void);
+void migration_cancel(const Error *error);
void populate_vfio_info(MigrationInfo *info);
diff --git a/migration/migration.c b/migration/migration.c
index 53b9a8af96..ec3d87f0a9 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -215,8 +215,11 @@ void migration_object_init(void)
dirty_bitmap_mig_init();
}
-void migration_cancel(void)
+void migration_cancel(const Error *error)
{
+ if (error) {
+ migrate_set_error(current_migration, error);
+ }
migrate_fd_cancel(current_migration);
}
@@ -226,7 +229,7 @@ void migration_shutdown(void)
* Cancel the current migration - that will (eventually)
* stop the migration using this structure
*/
- migration_cancel();
+ migration_cancel(NULL);
object_unref(OBJECT(current_migration));
/*
@@ -2334,7 +2337,7 @@ void qmp_migrate(const char *uri, bool has_blk, bool blk,
void qmp_migrate_cancel(Error **errp)
{
- migration_cancel();
+ migration_cancel(NULL);
}
void qmp_migrate_continue(MigrationStatus state, Error **errp)
diff --git a/migration/ram.c b/migration/ram.c
index 680a5158aa..f5d39db4e4 100644
--- a/migration/ram.c
+++ b/migration/ram.c
@@ -4323,9 +4323,8 @@ 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);
- migrate_set_error(migrate_get_current(), err);
+ migration_cancel(err);
error_free(err);
- migration_cancel();
}
switch (ps) {
--
2.33.1
- [PULL 00/11] Migration 20211102 patches, Juan Quintela, 2021/11/03
- [PULL 08/11] Removed the qemu_fclose() in colo_process_incoming_thread, Juan Quintela, 2021/11/03
- [PULL 09/11] Changed the last-mode to none of first start COLO, Juan Quintela, 2021/11/03
- [PULL 01/11] migration: provide an error message to migration_cancel(),
Juan Quintela <=
- [PULL 02/11] migration: initialise compression_counters for a new migration, Juan Quintela, 2021/11/03
- [PULL 05/11] Fixed qemu crash when guest power off in COLO mode, Juan Quintela, 2021/11/03
- [PULL 10/11] colo: Don't dump colo cache if dump-guest-core=off, Juan Quintela, 2021/11/03
- [PULL 11/11] Optimized the function of fill_connection_key., Juan Quintela, 2021/11/03
- [PULL 06/11] Fixed SVM hang when do failover before PVM crash, Juan Quintela, 2021/11/03
- [PULL 07/11] colo: fixed 'Segmentation fault' when the simplex mode PVM poweroff, Juan Quintela, 2021/11/03
- [PULL 04/11] Some minor optimizations for COLO, Juan Quintela, 2021/11/03
- [PULL 03/11] migration: Zero migration compression counters, Juan Quintela, 2021/11/03
- Re: [PULL 00/11] Migration 20211102 patches, Richard Henderson, 2021/11/04