reds: start QXL devices if VM is running

Like char devices, QXL devices need to be explicily started.

For some historical reason, char devices are started when in running
state. See commi bf1d9007b. Reading that commit comments, there was a
plan to provide an API to stop/start devices invidually, but that never
happened. Whether that API would really be useful now, I wonder.

For now, just follow the char devices behaviour and start QXL devices
added when vm_running.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.uuuuucom>
Acked-by: Frediano Ziglio <freddy77@gmail.com>
This commit is contained in:
Marc-André Lureau 2021-01-28 13:59:24 +04:00 committed by Frediano Ziglio
parent 76c59470ef
commit c23cbd6fa8

View File

@ -3255,6 +3255,9 @@ SPICE_GNUC_VISIBLE int spice_server_add_interface(SpiceServer *reds,
* be called. */
red_qxl_attach_worker(qxl);
red_qxl_set_compression_level(qxl, calc_compression_level(reds));
if (reds->vm_running) {
red_qxl_start(qxl);
}
} else if (strcmp(base_interface->type, SPICE_INTERFACE_TABLET) == 0) {
SpiceTabletInstance *tablet = SPICE_UPCAST(SpiceTabletInstance, sin);
spice_debug("SPICE_INTERFACE_TABLET");