aboutsummaryrefslogtreecommitdiff
path: root/softmmu
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2020-07-02 15:25:19 +0200
committerGerd Hoffmann <kraxel@redhat.com>2020-07-06 17:01:11 +0200
commitdea1fb887c37f163891fb18313403a07752948d8 (patch)
treea64b5f965ce9296d61c6db7b85197b1d803e41cc /softmmu
parent8859f0727927d830174dd7a94d871b9fe348452b (diff)
softmmu: initialize spice and audio earlier
audiodev must be initialized before machine_set_property so the machine can have audiodev property aliases. spice must initialize before audiodev because the default audiodev is spice only in case spice is actually enabled. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Message-id: 20200702132525.6849-15-kraxel@redhat.com
Diffstat (limited to 'softmmu')
-rw-r--r--softmmu/vl.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/softmmu/vl.c b/softmmu/vl.c
index 3e15ee2435..8ee9121906 100644
--- a/softmmu/vl.c
+++ b/softmmu/vl.c
@@ -4131,12 +4131,17 @@ void qemu_init(int argc, char **argv, char **envp)
fsdev_init_func, NULL, &error_fatal);
#endif
+ /* spice needs the timers to be initialized by this point */
+ /* spice must initialize before audio as it changes the default auiodev */
+ qemu_spice_init();
+
/*
- * Note: we need to create block backends before
+ * Note: we need to create audio and block backends before
* machine_set_property(), so machine properties can refer to
* them.
*/
configure_blockdev(&bdo_queue, machine_class, snapshot);
+ audio_init_audiodevs();
machine_opts = qemu_get_machine_opts();
qemu_opt_foreach(machine_opts, machine_set_property, current_machine,
@@ -4230,9 +4235,6 @@ void qemu_init(int argc, char **argv, char **envp)
semihosting_arg_fallback(kernel_filename, kernel_cmdline);
}
- /* spice needs the timers to be initialized by this point */
- qemu_spice_init();
-
cpu_ticks_init();
if (default_net) {
@@ -4342,8 +4344,6 @@ void qemu_init(int argc, char **argv, char **envp)
create_default_memdev(current_machine, mem_path);
}
- audio_init_audiodevs();
-
/* from here on runstate is RUN_STATE_PRELAUNCH */
machine_run_board_init(current_machine);