aboutsummaryrefslogtreecommitdiff
path: root/vl.c
diff options
context:
space:
mode:
authorMiroslav Rezanina <mrezanin@redhat.com>2014-03-14 13:06:54 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2014-03-17 13:21:12 +0100
commit025172d56e11ba3d86d0937933a23aab3b8606b1 (patch)
treefeb53effeb837f810e330a15e0b727a75e1d8f87 /vl.c
parent83d1c8ae881e88d70cf23bc8007cf5739313d23c (diff)
vl.c: Output error on invalid machine type
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> [Replace printf with error_printf, suggested by Markus Armbruster. - Paolo] Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'vl.c')
-rw-r--r--vl.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/vl.c b/vl.c
index 842e897d75..b363a21779 100644
--- a/vl.c
+++ b/vl.c
@@ -2651,15 +2651,20 @@ static MachineClass *machine_parse(const char *name)
if (mc) {
return mc;
}
- printf("Supported machines are:\n");
- for (el = machines; el; el = el->next) {
- MachineClass *mc = el->data;
- QEMUMachine *m = mc->qemu_machine;
- 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");
+ error_printf("Use -machine help to list supported machines!\n");
+ } else {
+ printf("Supported machines are:\n");
+ for (el = machines; el; el = el->next) {
+ MachineClass *mc = el->data;
+ QEMUMachine *m = mc->qemu_machine;
+ 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)" : "");
}
g_slist_free(machines);