* [Qemu-devel] [PATCH v6] vl.c: Output error on invalid machine type @ 2014-02-05 13:44 mrezanin 2014-03-10 8:35 ` Miroslav Rezanina 2014-03-10 9:41 ` Markus Armbruster 0 siblings, 2 replies; 4+ messages in thread From: mrezanin @ 2014-02-05 13:44 UTC (permalink / raw) To: qemu-devel From: Miroslav Rezanina <mrezanin@redhat.com> Output error message using qemu's error_report() function when user provides the invalid machine type on the command line. This also saves time to find what issue is when you downgrade from one version of qemu to another that doesn't support required machine type yet (the version user downgraded to have to have this patch applied too, of course). Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> --- v6: - print help instead of list supported machines on error vl.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/vl.c b/vl.c index 383be1b..3297c0a 100644 --- a/vl.c +++ b/vl.c @@ -2600,13 +2600,19 @@ static QEMUMachine *machine_parse(const char *name) if (machine) { return machine; } - printf("Supported machines are:\n"); - for (m = first_machine; m != NULL; m = m->next) { - if (m->alias) { - printf("%-20s %s (alias of %s)\n", m->alias, m->desc, m->name); + + if (name && !is_help_option(name)) { + error_report("Unsupported machine type"); + printf("\nUse '-M help' to list supported machines!\n"); + } else { + printf("Supported machines are:\n"); + for (m = first_machine; m != NULL; m = m->next) { + if (m->alias) { + printf("%-20s %s (alias of %s)\n", m->alias, m->desc, m->name); + } + printf("%-20s %s%s\n", m->name, m->desc, + m->is_default ? " (default)" : ""); } - printf("%-20s %s%s\n", m->name, m->desc, - m->is_default ? " (default)" : ""); } exit(!name || !is_help_option(name)); } -- 1.8.5.3 ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH v6] vl.c: Output error on invalid machine type 2014-02-05 13:44 [Qemu-devel] [PATCH v6] vl.c: Output error on invalid machine type mrezanin @ 2014-03-10 8:35 ` Miroslav Rezanina 2014-03-10 18:21 ` Andreas Färber 2014-03-10 9:41 ` Markus Armbruster 1 sibling, 1 reply; 4+ messages in thread From: Miroslav Rezanina @ 2014-03-10 8:35 UTC (permalink / raw) To: qemu-devel; +Cc: afaerber, Peter Maydell Hi, is there any issue with this patch? Mirek ----- Original Message ----- > From: mrezanin@redhat.com > To: qemu-devel@nongnu.org > Sent: Wednesday, February 5, 2014 2:44:23 PM > Subject: [Qemu-devel] [PATCH v6] vl.c: Output error on invalid machine type > > From: Miroslav Rezanina <mrezanin@redhat.com> > > Output error message using qemu's error_report() function when user > provides the invalid machine type on the command line. This also saves > time to find what issue is when you downgrade from one version of qemu > to another that doesn't support required machine type yet (the version > user downgraded to have to have this patch applied too, of course). > > Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> > --- > v6: > - print help instead of list supported machines on error > vl.c | 18 ++++++++++++------ > 1 file changed, 12 insertions(+), 6 deletions(-) > > diff --git a/vl.c b/vl.c > index 383be1b..3297c0a 100644 > --- a/vl.c > +++ b/vl.c > @@ -2600,13 +2600,19 @@ static QEMUMachine *machine_parse(const char *name) > if (machine) { > return machine; > } > - printf("Supported machines are:\n"); > - for (m = first_machine; m != NULL; m = m->next) { > - if (m->alias) { > - printf("%-20s %s (alias of %s)\n", m->alias, m->desc, m->name); > + > + if (name && !is_help_option(name)) { > + error_report("Unsupported machine type"); > + printf("\nUse '-M help' to list supported machines!\n"); > + } else { > + printf("Supported machines are:\n"); > + for (m = first_machine; m != NULL; m = m->next) { > + if (m->alias) { > + printf("%-20s %s (alias of %s)\n", m->alias, m->desc, > m->name); > + } > + printf("%-20s %s%s\n", m->name, m->desc, > + m->is_default ? " (default)" : ""); > } > - printf("%-20s %s%s\n", m->name, m->desc, > - m->is_default ? " (default)" : ""); > } > exit(!name || !is_help_option(name)); > } > -- > 1.8.5.3 > > > -- Miroslav Rezanina Software Engineer - Virtualization Team ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH v6] vl.c: Output error on invalid machine type 2014-03-10 8:35 ` Miroslav Rezanina @ 2014-03-10 18:21 ` Andreas Färber 0 siblings, 0 replies; 4+ messages in thread From: Andreas Färber @ 2014-03-10 18:21 UTC (permalink / raw) To: Miroslav Rezanina, qemu-devel Cc: Peter Maydell, Michael S. Tsirkin, Marcel Apfelbaum Hi, Am 10.03.2014 09:35, schrieb Miroslav Rezanina: > Hi, > is there any issue with this patch? It conflicts with Marcel's machine rework that I have queued. I wonder if we can avoid the reindent to minimize the collision by adding an exit(EXIT_FAILURE) in the new if? Regards, Andreas > Mirek > ----- Original Message ----- >> From: mrezanin@redhat.com >> To: qemu-devel@nongnu.org >> Sent: Wednesday, February 5, 2014 2:44:23 PM >> Subject: [Qemu-devel] [PATCH v6] vl.c: Output error on invalid machine type >> >> From: Miroslav Rezanina <mrezanin@redhat.com> >> >> Output error message using qemu's error_report() function when user >> provides the invalid machine type on the command line. This also saves >> time to find what issue is when you downgrade from one version of qemu >> to another that doesn't support required machine type yet (the version >> user downgraded to have to have this patch applied too, of course). >> >> Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> >> --- >> v6: >> - print help instead of list supported machines on error >> vl.c | 18 ++++++++++++------ >> 1 file changed, 12 insertions(+), 6 deletions(-) >> >> diff --git a/vl.c b/vl.c >> index 383be1b..3297c0a 100644 >> --- a/vl.c >> +++ b/vl.c >> @@ -2600,13 +2600,19 @@ static QEMUMachine *machine_parse(const char *name) >> if (machine) { >> return machine; >> } >> - printf("Supported machines are:\n"); >> - for (m = first_machine; m != NULL; m = m->next) { >> - if (m->alias) { >> - printf("%-20s %s (alias of %s)\n", m->alias, m->desc, m->name); >> + >> + if (name && !is_help_option(name)) { >> + error_report("Unsupported machine type"); >> + printf("\nUse '-M help' to list supported machines!\n"); >> + } else { >> + printf("Supported machines are:\n"); >> + for (m = first_machine; m != NULL; m = m->next) { >> + if (m->alias) { >> + printf("%-20s %s (alias of %s)\n", m->alias, m->desc, >> m->name); >> + } >> + printf("%-20s %s%s\n", m->name, m->desc, >> + m->is_default ? " (default)" : ""); >> } >> - printf("%-20s %s%s\n", m->name, m->desc, >> - m->is_default ? " (default)" : ""); >> } >> exit(!name || !is_help_option(name)); >> } >> -- >> 1.8.5.3 -- SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Qemu-devel] [PATCH v6] vl.c: Output error on invalid machine type 2014-02-05 13:44 [Qemu-devel] [PATCH v6] vl.c: Output error on invalid machine type mrezanin 2014-03-10 8:35 ` Miroslav Rezanina @ 2014-03-10 9:41 ` Markus Armbruster 1 sibling, 0 replies; 4+ messages in thread From: Markus Armbruster @ 2014-03-10 9:41 UTC (permalink / raw) To: mrezanin; +Cc: qemu-devel mrezanin@redhat.com writes: > From: Miroslav Rezanina <mrezanin@redhat.com> > > Output error message using qemu's error_report() function when user > provides the invalid machine type on the command line. This also saves > time to find what issue is when you downgrade from one version of qemu > to another that doesn't support required machine type yet (the version > user downgraded to have to have this patch applied too, of course). > > Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> > --- > v6: > - print help instead of list supported machines on error > vl.c | 18 ++++++++++++------ > 1 file changed, 12 insertions(+), 6 deletions(-) > > diff --git a/vl.c b/vl.c > index 383be1b..3297c0a 100644 > --- a/vl.c > +++ b/vl.c > @@ -2600,13 +2600,19 @@ static QEMUMachine *machine_parse(const char *name) static QEMUMachine *machine_parse(const char *name) { QEMUMachine *m, *machine = NULL; if (name) { machine = find_machine(name); } > if (machine) { > return machine; > } > - printf("Supported machines are:\n"); > - for (m = first_machine; m != NULL; m = m->next) { > - if (m->alias) { > - printf("%-20s %s (alias of %s)\n", m->alias, m->desc, m->name); > + > + if (name && !is_help_option(name)) { I don't think !name can happen, but you're sticking to what the existing code does. Okay. > + error_report("Unsupported machine type"); > + printf("\nUse '-M help' to list supported machines!\n"); I like this. It gives a concise error message followed by a hint, instead of dumping lengthy help on me without a clear indication why I need it. -M TYPE is sugar for -machine type=TYPE. It was deprecated in commit 80f52a6, and purged from documentation and help texts, except for two occurences in qemu-doc.texi. Unless we un-deprecate -M, this patch should point to the documented option -machine type=help, and we should update qemu-doc.texi to use -machine instead of -M. > + } else { > + printf("Supported machines are:\n"); > + for (m = first_machine; m != NULL; m = m->next) { > + if (m->alias) { > + printf("%-20s %s (alias of %s)\n", m->alias, m->desc, m->name); > + } > + printf("%-20s %s%s\n", m->name, m->desc, > + m->is_default ? " (default)" : ""); > } > - printf("%-20s %s%s\n", m->name, m->desc, > - m->is_default ? " (default)" : ""); > } > exit(!name || !is_help_option(name)); > } ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-03-10 18:22 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-02-05 13:44 [Qemu-devel] [PATCH v6] vl.c: Output error on invalid machine type mrezanin 2014-03-10 8:35 ` Miroslav Rezanina 2014-03-10 18:21 ` Andreas Färber 2014-03-10 9:41 ` Markus Armbruster
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).