[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v11 01/15] migration: Set error state in case of
From: |
Daniel P . Berrangé |
Subject: |
Re: [Qemu-devel] [PATCH v11 01/15] migration: Set error state in case of error |
Date: |
Fri, 16 Mar 2018 17:49:07 +0000 |
User-agent: |
Mutt/1.9.2 (2017-12-15) |
On Fri, Mar 16, 2018 at 12:53:49PM +0100, Juan Quintela wrote:
> Signed-off-by: Juan Quintela <address@hidden>
> ---
> migration/ram.c | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/migration/ram.c b/migration/ram.c
> index 7266351fd0..1b8095a358 100644
> --- a/migration/ram.c
> +++ b/migration/ram.c
> @@ -414,6 +414,16 @@ static void terminate_multifd_send_threads(Error *errp)
> {
> int i;
>
> + if (errp) {
> + MigrationState *s = migrate_get_current();
> + migrate_set_error(s, errp);
This doesn't look quiet right. You're checking if 'errp' is a non-NULL,
which just tells you if the caller wants to collect the error, not
whether an error has happened. For the latter you need
if (errp && *errp)
seems a little strange though for the caller to pass an error into this
method for reporting.
> + if (s->state == MIGRATION_STATUS_SETUP ||
> + s->state == MIGRATION_STATUS_ACTIVE) {
> + migrate_set_state(&s->state, s->state,
> + MIGRATION_STATUS_FAILED);
> + }
> + }
> +
> for (i = 0; i < multifd_send_state->count; i++) {
> MultiFDSendParams *p = &multifd_send_state->params[i];
>
> @@ -514,6 +524,16 @@ static void terminate_multifd_recv_threads(Error *errp)
> {
> int i;
>
> + if (errp) {
> + MigrationState *s = migrate_get_current();
> + migrate_set_error(s, errp);
> + if (s->state == MIGRATION_STATUS_SETUP ||
> + s->state == MIGRATION_STATUS_ACTIVE) {
> + migrate_set_state(&s->state, s->state,
> + MIGRATION_STATUS_FAILED);
> + }
> + }
> +
> for (i = 0; i < multifd_recv_state->count; i++) {
> MultiFDRecvParams *p = &multifd_recv_state->params[i];
>
> --
> 2.14.3
>
>
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- [Qemu-devel] [RFC v11 00/15] mutifd, Juan Quintela, 2018/03/16
- [Qemu-devel] [PATCH v11 02/15] migration: In case of error just end the migration, Juan Quintela, 2018/03/16
- [Qemu-devel] [PATCH v11 05/15] migration: Be sure all recv channels are created, Juan Quintela, 2018/03/16
- [Qemu-devel] [PATCH v11 06/15] migration: Export functions to create send channels, Juan Quintela, 2018/03/16
- [Qemu-devel] [PATCH v11 01/15] migration: Set error state in case of error, Juan Quintela, 2018/03/16
- Re: [Qemu-devel] [PATCH v11 01/15] migration: Set error state in case of error,
Daniel P . Berrangé <=
- [Qemu-devel] [PATCH v11 08/15] migration: Synchronize recv threads, Juan Quintela, 2018/03/16
- [Qemu-devel] [PATCH v11 09/15] migration: Add multifd traces for start/end thread, Juan Quintela, 2018/03/16
- [Qemu-devel] [PATCH v11 04/15] migration: Introduce multifd_recv_new_channel(), Juan Quintela, 2018/03/16
- [Qemu-devel] [PATCH v11 03/15] migration: terminate_* can be called for other threads, Juan Quintela, 2018/03/16
- [Qemu-devel] [PATCH v11 07/15] migration: Synchronize send threads, Juan Quintela, 2018/03/16
- [Qemu-devel] [PATCH v11 11/15] migration: Delay start of migration main routines, Juan Quintela, 2018/03/16