On Tue, 23 Mar 2010 19:07:21 +0100 Markus Armbruster <arm...@redhat.com> wrote:
> Human monitor error message changes from "unknown migration protocol: > FOO" to "Invalid parameter uri". > > The conversion is shallow: the FOO_start_outgoing_migration() aren't > converted. Converting them is a big job for relatively little > practical benefit, so leave it for later. > > Signed-off-by: Markus Armbruster <arm...@redhat.com> > --- > migration.c | 9 +++++---- > 1 files changed, 5 insertions(+), 4 deletions(-) > > diff --git a/migration.c b/migration.c > index 05f6cc5..47d2ab5 100644 > --- a/migration.c > +++ b/migration.c > @@ -56,14 +56,14 @@ void qemu_start_incoming_migration(const char *uri) > > int do_migrate(Monitor *mon, const QDict *qdict, QObject **ret_data) > { > - MigrationState *s = NULL; > + MigrationState *s; > const char *p; > int detach = qdict_get_int(qdict, "detach"); > const char *uri = qdict_get_str(qdict, "uri"); > > if (current_migration && > current_migration->get_status(current_migration) == > MIG_STATE_ACTIVE) { > - monitor_printf(mon, "migration already in progress\n"); > + qerror_report(QERR_MIGRATION_IN_PROGRESS); > return -1; > } What about QERR_OPERATION_IN_PROGRESS? So that we have: "Operation already in progress: migration". > > @@ -86,12 +86,13 @@ int do_migrate(Monitor *mon, const QDict *qdict, QObject > **ret_data) > (int)qdict_get_int(qdict, "inc")); > #endif > } else { > - monitor_printf(mon, "unknown migration protocol: %s\n", uri); > + qerror_report(QERR_INVALID_PARAMETER, "uri"); > return -1; > } > > if (s == NULL) { > - monitor_printf(mon, "migration failed\n"); > + /* TODO push error reporting into the FOO_start_outgoing_migration() > */ > + qerror_report(QERR_MIGRATION_FAILED); > return -1; > } I think this one is no better than the automatic UndefinedError which is going to be triggered. I would only touch this when/if we get the migration functions converted.