[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 09/23] migration: Refactor and simplify error checki
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH 09/23] migration: Refactor and simplify error checking in migrate_fd_put_ready |
Date: |
Fri, 23 Sep 2011 14:56:58 +0200 |
Signed-off-by: Juan Quintela <address@hidden>
---
migration.c | 21 ++++++++++-----------
1 files changed, 10 insertions(+), 11 deletions(-)
diff --git a/migration.c b/migration.c
index abb99ea..740483d 100644
--- a/migration.c
+++ b/migration.c
@@ -373,23 +373,22 @@ static void migrate_fd_put_ready(void *opaque)
DPRINTF("done iterating\n");
vm_stop(RSTATE_PRE_MIGRATE);
- if ((qemu_savevm_state_complete(s->mon, s->file)) < 0) {
- if (old_vm_running) {
- vm_start();
+ if (qemu_savevm_state_complete(s->mon, s->file) < 0) {
+ migrate_fd_error(s);
+ } else {
+ if (migrate_fd_cleanup(s) < 0) {
+ migrate_fd_error(s);
+ } else {
+ s->state = MIG_STATE_COMPLETED;
+ runstate_set(RSTATE_POST_MIGRATE);
+ notifier_list_notify(&migration_state_notifiers, NULL);
}
- s->state = MIG_STATE_ERROR;
}
- if (migrate_fd_cleanup(s) < 0) {
+ if (s->get_status(s) != MIG_STATE_COMPLETED) {
if (old_vm_running) {
vm_start();
}
- s->state = MIG_STATE_ERROR;
}
- if (s->state == MIG_STATE_ACTIVE) {
- s->state = MIG_STATE_COMPLETED;
- runstate_set(RSTATE_POST_MIGRATE);
- }
- notifier_list_notify(&migration_state_notifiers, NULL);
}
}
--
1.7.6.2
- [Qemu-devel] [PATCH 16/23] migration: another case of global variable assigned to local one, (continued)
- [Qemu-devel] [PATCH 16/23] migration: another case of global variable assigned to local one, Juan Quintela, 2011/09/20
- [Qemu-devel] [PATCH 20/23] migration: Make state definitions local, Juan Quintela, 2011/09/20
- [Qemu-devel] [PATCH 22/23] migration: propagate error correctly, Juan Quintela, 2011/09/20
- [Qemu-devel] [PATCH v3 00/23] Refactor and cleanup migration code, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 02/23] migration: Use FdMigrationState instead of MigrationState when possible, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 01/23] migration: Make *start_outgoing_migration return FdMigrationState, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 03/23] migration: Fold MigrationState into FdMigrationState, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 04/23] migration: Rename FdMigrationState MigrationState, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 08/23] migration: Introduce MIG_STATE_NONE, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 07/23] migration: move migrate_create_state to do_migrate, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 09/23] migration: Refactor and simplify error checking in migrate_fd_put_ready,
Juan Quintela <=
- [Qemu-devel] [PATCH 06/23] migration: Make all posible migration functions static, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 05/23] migration: Refactor MigrationState creation, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 10/23] migration: Introduce migrate_fd_completed() for consistency, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 12/23] migration: Remove get_status() accessor, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 15/23] migration: use global variable directly, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 17/23] migration: make sure we always have a migration state, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 13/23] migration: Remove migration cancel() callback, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 19/23] migration: Export a function that tells if the migration has finished correctly, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 18/23] migration: Use bandwidth_limit directly, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 14/23] migration: Move exported functions to the end of the file, Juan Quintela, 2011/09/23