Hi On Mon, Oct 8, 2018 at 9:33 PM Markus Armbruster <arm...@redhat.com> wrote: > > Calling error_report() in a function that takes an Error ** argument > is suspicious. save_snapshot() and load_snapshot() do that, and then > fail without setting an error. Wrong. The HMP commands survive this > unscathed, since hmp_handle_error() does nothing when no error has > been set. Callers main() (on behalf of -loadvm) and > replay_vmstate_init() crash, but I'm not sure the error is possible > there. > > Screwed up when commit 377b21ccea1 (v2.12.0) added incorrect error > handling right next to correct examples. Fix by calling error_setg() > instead of error_report(). > > Fixes: 377b21ccea1755a8b0dae822c29567c58dda6939 > Cc: Paolo Bonzini <pbonz...@redhat.com> > Signed-off-by: Markus Armbruster <arm...@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lur...@redhat.com> > --- > migration/savevm.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/migration/savevm.c b/migration/savevm.c > index 2d10e45582..5f8eb38676 100644 > --- a/migration/savevm.c > +++ b/migration/savevm.c > @@ -2414,8 +2414,8 @@ int save_snapshot(const char *name, Error **errp) > AioContext *aio_context; > > if (!replay_can_snapshot()) { > - error_report("Record/replay does not allow making snapshot " > - "right now. Try once more later."); > + error_setg(errp, "Record/replay does not allow making snapshot " > + "right now. Try once more later."); > return ret; > } > > @@ -2611,8 +2611,8 @@ int load_snapshot(const char *name, Error **errp) > MigrationIncomingState *mis = migration_incoming_get_current(); > > if (!replay_can_snapshot()) { > - error_report("Record/replay does not allow loading snapshot " > - "right now. Try once more later."); > + error_setg(errp, "Record/replay does not allow loading snapshot " > + "right now. Try once more later."); > return -EINVAL; > } > > -- > 2.17.1 > > -- Marc-André Lureau