From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Juan Quintela <quintela@redhat.com>
Cc: lvivier@redhat.com, qemu-devel@nongnu.org, peterx@redhat.com,
dgilbert@redhat.com
Subject: Re: [Qemu-devel] [PATCH v11 01/15] migration: Set error state in case of error
Date: Fri, 16 Mar 2018 17:57:19 +0000 [thread overview]
Message-ID: <20180316175719.GF3066@redhat.com> (raw)
In-Reply-To: <20180316174907.GZ3066@redhat.com>
On Fri, Mar 16, 2018 at 05:49:07PM +0000, Daniel P. Berrangé wrote:
> On Fri, Mar 16, 2018 at 12:53:49PM +0100, Juan Quintela wrote:
> > Signed-off-by: Juan Quintela <quintela@redhat.com>
> > ---
> > 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.
Oh wait, I'm being mislead by the unusual parameter name.
An "errp" name should only ever be used for a "Error **", but we
only have an "Error *" here.
So just fix the parameter name to be "err" instead of "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_send_state->count; i++) {
> > MultiFDSendParams *p = &multifd_send_state->params[i];
> >
> > @@ -514,6 +524,16 @@ static void terminate_multifd_recv_threads(Error *errp)
This parameter name needs fixing too.
These are actually a pre-existing problem in current GIT, so worth fixing
in a separate patch.
> > {
> > 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 :|
>
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 :|
next prev parent reply other threads:[~2018-03-16 17:57 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-16 11:53 [Qemu-devel] [RFC v11 00/15] mutifd Juan Quintela
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 01/15] migration: Set error state in case of error Juan Quintela
2018-03-16 17:49 ` Daniel P. Berrangé
2018-03-16 17:57 ` Daniel P. Berrangé [this message]
2018-04-06 17:10 ` Juan Quintela
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 02/15] migration: In case of error just end the migration Juan Quintela
2018-03-16 17:49 ` Daniel P. Berrangé
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 03/15] migration: terminate_* can be called for other threads Juan Quintela
2018-03-16 17:51 ` Daniel P. Berrangé
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 04/15] migration: Introduce multifd_recv_new_channel() Juan Quintela
2018-03-16 17:51 ` Daniel P. Berrangé
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 05/15] migration: Be sure all recv channels are created Juan Quintela
2018-03-16 17:52 ` Daniel P. Berrangé
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 06/15] migration: Export functions to create send channels Juan Quintela
2018-03-16 17:53 ` Daniel P. Berrangé
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 07/15] migration: Synchronize send threads Juan Quintela
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 08/15] migration: Synchronize recv threads Juan Quintela
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 09/15] migration: Add multifd traces for start/end thread Juan Quintela
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 10/15] migration: Create multifd channels Juan Quintela
2018-03-16 17:58 ` Daniel P. Berrangé
2018-03-16 11:53 ` [Qemu-devel] [PATCH v11 11/15] migration: Delay start of migration main routines Juan Quintela
2018-03-16 18:03 ` Daniel P. Berrangé
2018-03-16 11:54 ` [Qemu-devel] [PATCH v11 12/15] migration: Transmit initial package through the multifd channels Juan Quintela
2018-03-16 18:06 ` Daniel P. Berrangé
2018-03-16 11:54 ` [Qemu-devel] [PATCH v11 13/15] migration: Create ram_multifd_page Juan Quintela
2018-03-16 11:54 ` [Qemu-devel] [PATCH v11 14/15] migration: Create pages structure for reception Juan Quintela
2018-03-16 11:54 ` [Qemu-devel] [PATCH v11 15/15] [RFC] migration: Send pages through the multifd channels Juan Quintela
2018-03-16 18:08 ` [Qemu-devel] [RFC v11 00/15] mutifd Daniel P. Berrangé
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180316175719.GF3066@redhat.com \
--to=berrange@redhat.com \
--cc=dgilbert@redhat.com \
--cc=lvivier@redhat.com \
--cc=peterx@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).