Bug 64840

Summary: Hang on F19 beta guest
Product: Spice Reporter: Zeeshan Ali <zeenix>
Component: xorg qxlAssignee: Spice Bug List <spice-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: medium    
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: libvirt domain log

Description Zeeshan Ali 2013-05-21 20:39:45 UTC
Created attachment 79629 [details]
libvirt domain log

If you setup F19 guest in Boxes, the guest hangs when you click 'Start using GNOME 3' in the initial setup UI shown on first login (its /usr/libexec/gnome-initial-setup if you want to run it manually after first login to test). Here is the warning that is shown on the Boxes console:

(gnome-boxes:20263): GSpice-CRITICAL **: cursor_handle_init: assertion `c->init_done == FALSE' failed

I know that guest is hung because I fail to change the VT using virt-manager's send-keys and the following command tells me that qemu itself is not hung:

$ virsh qemu-monitor-command --domain fedora19 --hmp info status
VM status: running

Here is the bt of qemu process I get by attaching gdb externally after the hang:

(gdb) bt
#0  0x00007fa4ecdc4653 in select () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fa4f3c80bdf in os_host_main_loop_wait (timeout=1000) at main-loop.c:230
#2  main_loop_wait (nonblocking=<optimized out>) at main-loop.c:416
#3  0x00007fa4f3b5baa5 in main_loop () at vl.c:2001
#4  main (argc=<optimized out>, argv=<optimized out>, envp=<optimized out>) at vl.c:4326
(gdb) thread apply all bt

Thread 11 (Thread 0x7fa4dffff700 (LWP 20397)):
#0  0x00007fa4ecdc3fb7 in ioctl () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fa4f3d412f4 in kvm_vcpu_ioctl (cpu=cpu@entry=0x7fa4f5e71270, type=type@entry=44672)
    at /usr/src/debug/qemu-1.4.1/kvm-all.c:1673
#2  0x00007fa4f3d413ff in kvm_cpu_exec (env=env@entry=0x7fa4f5e71360) at /usr/src/debug/qemu-1.4.1/kvm-all.c:1562
#3  0x00007fa4f3cedb01 in qemu_kvm_cpu_thread_fn (arg=0x7fa4f5e71360) at /usr/src/debug/qemu-1.4.1/cpus.c:759
#4  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4dffff700) at pthread_create.c:308
#5  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 10 (Thread 0x7fa4df7fe700 (LWP 20398)):
#0  0x00007fa4ecdc3fb7 in ioctl () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fa4f3d412f4 in kvm_vcpu_ioctl (cpu=cpu@entry=0x7fa4f5e9ced0, type=type@entry=44672)
    at /usr/src/debug/qemu-1.4.1/kvm-all.c:1673
#2  0x00007fa4f3d413ff in kvm_cpu_exec (env=env@entry=0x7fa4f5e9cfc0) at /usr/src/debug/qemu-1.4.1/kvm-all.c:1562
#3  0x00007fa4f3cedb01 in qemu_kvm_cpu_thread_fn (arg=0x7fa4f5e9cfc0) at /usr/src/debug/qemu-1.4.1/cpus.c:759
#4  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4df7fe700) at pthread_create.c:308
#5  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 9 (Thread 0x7fa4deffd700 (LWP 20399)):
#0  0x00007fa4ecdc3fb7 in ioctl () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fa4f3d412f4 in kvm_vcpu_ioctl (cpu=cpu@entry=0x7fa4f5ead650, type=type@entry=44672)
    at /usr/src/debug/qemu-1.4.1/kvm-all.c:1673
#2  0x00007fa4f3d413ff in kvm_cpu_exec (env=env@entry=0x7fa4f5ead740) at /usr/src/debug/qemu-1.4.1/kvm-all.c:1562
#3  0x00007fa4f3cedb01 in qemu_kvm_cpu_thread_fn (arg=0x7fa4f5ead740) at /usr/src/debug/qemu-1.4.1/cpus.c:759
#4  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4deffd700) at pthread_create.c:308
#5  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 8 (Thread 0x7fa4de7fc700 (LWP 20400)):
#0  0x00007fa4ecdc3fb7 in ioctl () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fa4f3d412f4 in kvm_vcpu_ioctl (cpu=cpu@entry=0x7fa4f5ebddd0, type=type@entry=44672)
    at /usr/src/debug/qemu-1.4.1/kvm-all.c:1673
#2  0x00007fa4f3d413ff in kvm_cpu_exec (env=env@entry=0x7fa4f5ebdec0) at /usr/src/debug/qemu-1.4.1/kvm-all.c:1562
#3  0x00007fa4f3cedb01 in qemu_kvm_cpu_thread_fn (arg=0x7fa4f5ebdec0) at /usr/src/debug/qemu-1.4.1/cpus.c:759
#4  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4de7fc700) at pthread_create.c:308
#5  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 7 (Thread 0x7fa4dcffa700 (LWP 20401)):
#0  0x00007fa4ecdc28fd in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fa4edab02e7 in red_worker_main (arg=0x7ffff578a8c0) at red_worker.c:12254
#2  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4dcffa700) at pthread_create.c:308
#3  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113
---Type <return> to continue, or q <return> to quit---

Thread 6 (Thread 0x7fa4751f7700 (LWP 20977)):
#0  sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101
#1  0x00007fa4f3e09c57 in qemu_sem_timedwait (sem=sem@entry=0x7fa4f460dc40 <sem>, ms=ms@entry=10000)
    at util/qemu-thread-posix.c:237
#2  0x00007fa4f3cc199e in worker_thread (unused=<optimized out>) at thread-pool.c:88
#3  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4751f7700) at pthread_create.c:308
#4  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 5 (Thread 0x7fa4749f6700 (LWP 20978)):
#0  sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101
#1  0x00007fa4f3e09c57 in qemu_sem_timedwait (sem=sem@entry=0x7fa4f460dc40 <sem>, ms=ms@entry=10000)
    at util/qemu-thread-posix.c:237
#2  0x00007fa4f3cc199e in worker_thread (unused=<optimized out>) at thread-pool.c:88
#3  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4749f6700) at pthread_create.c:308
#4  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 4 (Thread 0x7fa4759f8700 (LWP 20979)):
#0  sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101
#1  0x00007fa4f3e09c57 in qemu_sem_timedwait (sem=sem@entry=0x7fa4f460dc40 <sem>, ms=ms@entry=10000)
    at util/qemu-thread-posix.c:237
#2  0x00007fa4f3cc199e in worker_thread (unused=<optimized out>) at thread-pool.c:88
#3  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4759f8700) at pthread_create.c:308
#4  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 3 (Thread 0x7fa4769fa700 (LWP 20980)):
#0  sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101
#1  0x00007fa4f3e09c57 in qemu_sem_timedwait (sem=sem@entry=0x7fa4f460dc40 <sem>, ms=ms@entry=10000)
    at util/qemu-thread-posix.c:237
#2  0x00007fa4f3cc199e in worker_thread (unused=<optimized out>) at thread-pool.c:88
#3  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4769fa700) at pthread_create.c:308
#4  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 2 (Thread 0x7fa4e4d8a700 (LWP 20981)):
#0  sem_timedwait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S:101
#1  0x00007fa4f3e09c57 in qemu_sem_timedwait (sem=sem@entry=0x7fa4f460dc40 <sem>, ms=ms@entry=10000)
    at util/qemu-thread-posix.c:237
#2  0x00007fa4f3cc199e in worker_thread (unused=<optimized out>) at thread-pool.c:88
#3  0x00007fa4f1d27c53 in start_thread (arg=0x7fa4e4d8a700) at pthread_create.c:308
#4  0x00007fa4ecdccecd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 1 (Thread 0x7fa4f3a85a40 (LWP 20395)):
---Type <return> to continue, or q <return> to quit---
#0  0x00007fa4ecdc4653 in select () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007fa4f3c80bdf in os_host_main_loop_wait (timeout=1000) at main-loop.c:230
#2  main_loop_wait (nonblocking=<optimized out>) at main-loop.c:416
#3  0x00007fa4f3b5baa5 in main_loop () at vl.c:2001
#4  main (argc=<optimized out>, argv=<optimized out>, envp=<optimized out>) at vl.c:4326
Comment 1 Zeeshan Ali 2013-05-21 20:52:54 UTC
Additional info that might be useful:

* I can only reproduce this when Boxes is connected to (SPICE) display and running in fullscreen.
* I can't reproduce this against virt-manager for some reason. Its fullscreen doesn't exactly seem like fullscreen to me cause its obviously scaling the display while Boxes is correctly setting the right display in the guest using the agent.
* If X starts when Boxes is already connecting to display, I get the hang immediately in there with a black/blank display.

Versions of components:

qemu-1.4.1-3.fc19
spice-server-0.12.2-5.fc19

I forgot to mention that I can't reproduce the bug if I change the QXL video device to VGA and hence the reason I file it here.
Comment 2 Marc-Andre Lureau 2013-05-21 21:11:10 UTC
virt-manager doesn't resize-guest, whereas Boxes does by default.
Comment 3 Zeeshan Ali 2014-10-22 19:38:55 UTC
I'm guessing this was fixed. If not, please mark as obsolete as F19 is no longer supported anyway.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.