Oops: spice configured but not active

Bug #986770 reported by Alexandr
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Fix Released
Undecided
Unassigned

Bug Description

with latest qemu-kvm from git i have following problem:

 /usr/bin/kvm -daemonize -smp 4 -cpu host -vga qxl -enable-kvm -m 4096 -localtime -drive file=/home/sss/vm/win_xp/tmp_sys.img,if=virtio,media=disk,cache=none -drive file=/home/sss/vm/data.img,if=virtio,media=disk,cache=none -net nic,vlan=0,model=virtio,macaddr=6a:94:fc:2d:b9:04 -net tap,vlan=0,ifname=vtap0,script=no -usb -usbdevice tablet -name "Windows XP qt" -spice port=5934,addr=127.0.0.1,ipv4,playback-compression=off,disable-ticketing -monitor telnet::4448,server,nowait -device virtio-serial -chardev spicevmc,id=vdagent,name=vdagent -device virtserialport,chardev=vdagent,name=com.redhat.spice.0 -balloon virtio
qemu-system-x86_64: Oops: spice configured but not active

Tags: spice
Revision history for this message
Alon Levy (alonlevy1) wrote :

Seems commit ad1be89948f88e89708b04ccd782456ccec3a6f0 from qemu needs to go in to qemu-kvm.

Could you try that and report if it fixes the issue for you?

commit ad1be89948f88e89708b04ccd782456ccec3a6f0
Author: Alon Levy <email address hidden>
Date: Wed Mar 14 20:33:37 2012 +0200

    spice: fix broken initialization

    Commit 1b71f7c14fab6f00c2680d4489fbee7baf796e4f moved MODULE_INIT_QOM to
    way before MODULE_INIT_MACHINE, thereby breaking assumptions made in
    spice-core.c which registered both a type initializer and a machine
    intializer.

    This fix removes the type registration, and replaces it with calling
    qemu_spice_init in vl.c after command line parsing (second pass) is
    done, and after timers are armed, required by spice server.

    Signed-off-by: Alon Levy <email address hidden>
    Signed-off-by: Gerd Hoffmann <email address hidden>

diff --git a/ui/spice-core.c b/ui/spice-core.c
index 80535b6..a468524 100644
--- a/ui/spice-core.c
+++ b/ui/spice-core.c
@@ -554,7 +554,7 @@ void qemu_spice_init(void)

     qemu_thread_get_self(&me);

- if (!opts) {
+ if (!opts) {
         return;
     }
     port = qemu_opt_get_number(opts, "port", 0);
@@ -787,10 +787,3 @@ static void spice_register_config(void)
     qemu_add_opts(&qemu_spice_opts);
 }
 machine_init(spice_register_config);
-
-static void spice_register_types(void)
-{
- qemu_spice_init();
-}
-
-type_init(spice_register_types)
diff --git a/vl.c b/vl.c
index bd95539..eeb634b 100644
--- a/vl.c
+++ b/vl.c
@@ -3369,6 +3369,11 @@ int main(int argc, char **argv, char **envp)
         exit(1);
     }

+#ifdef CONFIG_SPICE
+ /* spice needs the timers to be initialized by this point */
+ qemu_spice_init();
+#endif
+
     if (icount_option && (kvm_enabled() || xen_enabled())) {
         fprintf(stderr, "-icount is not allowed with kvm or xen\n");
         exit(1);

Revision history for this message
Alexandr (sss123next) wrote :

thx, this solves problem, but patches failed, i have to edit code manually

Revision history for this message
Thomas Huth (th-huth) wrote :

Commit ad1be89948f88e8 has been included long ago, so let's set this ticket to "Fix released" now.

Changed in qemu:
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.