vl: Parse legacy default_machine_opts
authorJason Andryuk <jandryuk@gmail.com>
Tue, 13 Jul 2021 02:15:52 +0000 (22:15 -0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 20 Jul 2021 15:06:28 +0000 (17:06 +0200)
qemu can't start a xen vm after commit d8fb7d0969d5
"vl: switch -M parsing to keyval" with:

$ ./qemu-system-i386 -M xenfv
Unexpected error in object_property_find_err() at ../qom/object.c:1298:
qemu-system-i386: Property 'xenfv-3.1-machine.accel' not found
Aborted (core dumped)

The default_machine_opts handling doesn't process the legacy machine
options like "accel".  Call qemu_apply_legacy_machine_options to provide
the legacy handling.

Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
Message-Id: <20210713021552.19110-1-jandryuk@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
softmmu/vl.c

index 4df149610185dccb44cee8c454e5f8f084c7b8bd..f4d8630fc6f907932f46a6ad5c36136811bc0de5 100644 (file)
@@ -2126,6 +2126,7 @@ static void qemu_create_machine(QDict *qdict)
         QDict *default_opts =
             keyval_parse(machine_class->default_machine_opts, NULL, NULL,
                          &error_abort);
+        qemu_apply_legacy_machine_options(default_opts);
         object_set_properties_from_keyval(OBJECT(current_machine), default_opts,
                                           false, &error_abort);
         qobject_unref(default_opts);