[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 10/23] migration: Introduce migrate_fd_completed() f
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH 10/23] migration: Introduce migrate_fd_completed() for consistency |
Date: |
Fri, 23 Sep 2011 14:56:59 +0200 |
This function is a bit different of the others that change the state,
in the sense that if migrate_fd_cleanup() returns an error, it set the
status to error, not completed.
Signed-off-by: Juan Quintela <address@hidden>
---
migration.c | 20 +++++++++++++-------
1 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/migration.c b/migration.c
index 740483d..40fda7d 100644
--- a/migration.c
+++ b/migration.c
@@ -318,6 +318,18 @@ void migrate_fd_error(MigrationState *s)
migrate_fd_cleanup(s);
}
+static void migrate_fd_completed(MigrationState *s)
+{
+ DPRINTF("setting completed state\n");
+ if (migrate_fd_cleanup(s) < 0) {
+ s->state = MIG_STATE_ERROR;
+ } else {
+ s->state = MIG_STATE_COMPLETED;
+ runstate_set(RSTATE_POST_MIGRATE);
+ }
+ notifier_list_notify(&migration_state_notifiers, NULL);
+}
+
static void migrate_fd_put_notify(void *opaque)
{
MigrationState *s = opaque;
@@ -376,13 +388,7 @@ static void migrate_fd_put_ready(void *opaque)
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);
- }
+ migrate_fd_completed(s);
}
if (s->get_status(s) != MIG_STATE_COMPLETED) {
if (old_vm_running) {
--
1.7.6.2
- [Qemu-devel] [PATCH v3 00/23] Refactor and cleanup migration code, (continued)
- [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, 2011/09/23
- [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 <=
- [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
- [Qemu-devel] [PATCH 11/23] migration: Our release callback was just free, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 16/23] migration: another case of global variable assigned to local one, Juan Quintela, 2011/09/23
- [Qemu-devel] [PATCH 22/23] migration: propagate error correctly, Juan Quintela, 2011/09/23