[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 26/41] migration: make migrate_fd_wait_for_unfre
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH 26/41] migration: make migrate_fd_wait_for_unfreeze() return errors |
Date: |
Fri, 21 Sep 2012 14:44:50 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120911 Thunderbird/15.0.1 |
Il 21/09/2012 10:47, Juan Quintela ha scritto:
> Adjust all callers
>
> Signed-off-by: Juan Quintela <address@hidden>
> ---
> buffered_file.c | 8 ++++++--
> migration.c | 7 ++++---
> migration.h | 2 +-
> 3 files changed, 11 insertions(+), 6 deletions(-)
>
> diff --git a/buffered_file.c b/buffered_file.c
> index 9db73dc..6d9a50b 100644
> --- a/buffered_file.c
> +++ b/buffered_file.c
> @@ -149,8 +149,12 @@ static int buffered_close(void *opaque)
> if (ret < 0) {
> break;
> }
> - if (s->freeze_output)
> - migrate_fd_wait_for_unfreeze(s->migration_state);
> + if (s->freeze_output) {
> + ret = migrate_fd_wait_for_unfreeze(s->migration_state);
> + if (ret < 0) {
> + break;
> + }
> + }
> }
>
> ret2 = migrate_fd_close(s->migration_state);
> diff --git a/migration.c b/migration.c
> index 56014dd..6a505c1 100644
> --- a/migration.c
> +++ b/migration.c
> @@ -368,13 +368,13 @@ static void migrate_fd_cancel(MigrationState *s)
> migrate_fd_cleanup(s);
> }
>
> -void migrate_fd_wait_for_unfreeze(MigrationState *s)
> +int migrate_fd_wait_for_unfreeze(MigrationState *s)
> {
> int ret;
>
> DPRINTF("wait for unfreeze\n");
> if (s->state != MIG_STATE_ACTIVE)
> - return;
> + return -EINVAL;
>
> do {
> fd_set wfds;
> @@ -386,8 +386,9 @@ void migrate_fd_wait_for_unfreeze(MigrationState *s)
> } while (ret == -1 && (s->get_error(s)) == EINTR);
>
> if (ret == -1) {
> - qemu_file_set_error(s->file, -s->get_error(s));
> + return -s->get_error(s);
> }
> + return 0;
> }
>
> int migrate_fd_close(MigrationState *s)
> diff --git a/migration.h b/migration.h
> index ec022d6..1c3e9b7 100644
> --- a/migration.h
> +++ b/migration.h
> @@ -81,7 +81,7 @@ void migrate_fd_connect(MigrationState *s);
> ssize_t migrate_fd_put_buffer(MigrationState *s, const void *data,
> size_t size);
> void migrate_fd_put_ready(MigrationState *s);
> -void migrate_fd_wait_for_unfreeze(MigrationState *s);
> +int migrate_fd_wait_for_unfreeze(MigrationState *s);
> int migrate_fd_close(MigrationState *s);
>
> void add_migration_state_change_notifier(Notifier *notify);
>
Reviewed-by: Paolo Bonzini <address@hidden>
- [Qemu-devel] [PATCH 21/41] buffered_file: unfold migrate_fd_put_buffer, (continued)
- [Qemu-devel] [PATCH 21/41] buffered_file: unfold migrate_fd_put_buffer, Juan Quintela, 2012/09/21
- [Qemu-devel] [PATCH 19/41] buffered_file: unfold migrate_fd_put_buffer, Juan Quintela, 2012/09/21
- [Qemu-devel] [PATCH 15/41] migration: Add dirty_pages_rate to query migrate output, Juan Quintela, 2012/09/21
- [Qemu-devel] [PATCH 27/41] savevm: unexport qemu_fflush, Juan Quintela, 2012/09/21
- [Qemu-devel] [PATCH 23/41] buffered_file: We can access directly to bandwidth_limit, Juan Quintela, 2012/09/21
- [Qemu-devel] [PATCH 26/41] migration: make migrate_fd_wait_for_unfreeze() return errors, Juan Quintela, 2012/09/21
- Re: [Qemu-devel] [PATCH 26/41] migration: make migrate_fd_wait_for_unfreeze() return errors,
Paolo Bonzini <=
- [Qemu-devel] [PATCH 29/41] savevm: Remove qemu_fseek(), Juan Quintela, 2012/09/21
- [Qemu-devel] [PATCH 30/41] savevm: make qemu_fflush() return an error code, Juan Quintela, 2012/09/21
- [Qemu-devel] [PATCH 38/41] block-migration: handle errors with the return codes correctly, Juan Quintela, 2012/09/21
- [Qemu-devel] [PATCH 40/41] savevm: make qemu_file_put_notify() return errors, Juan Quintela, 2012/09/21