Bug 1192775
Summary: | Qemu and Libvirtd crash while do hot-plug guest agent with guest configured with virtio console | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | vivian zhang <vivianzhang> | ||||||||
Component: | qemu-kvm-rhev | Assignee: | Amit Shah <amit.shah> | ||||||||
Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | ||||||||
Severity: | high | Docs Contact: | |||||||||
Priority: | high | ||||||||||
Version: | 7.1 | CC: | amit.shah, cristi.falcas, dyuan, hhuang, huding, juzhang, lhuang, mzhan, ngu, virt-maint, xfu, zhwang | ||||||||
Target Milestone: | rc | ||||||||||
Target Release: | --- | ||||||||||
Hardware: | Unspecified | ||||||||||
OS: | Unspecified | ||||||||||
Whiteboard: | |||||||||||
Fixed In Version: | qemu-2.3 | Doc Type: | Bug Fix | ||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | Environment: | ||||||||||
Last Closed: | 2015-12-04 16:27:26 UTC | Type: | Bug | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Attachments: |
|
Description
vivian zhang
2015-02-15 09:09:38 UTC
Created attachment 991870 [details]
libvirtd.log
Created attachment 991871 [details]
guest qemu log
Created attachment 991872 [details]
guest xml
hi, Amit I found a similar issue with the same steps described in this bug comment 0 Qemu could also crash when do hot-plug below pty channel device with guest configured virtio console ... <channel type='pty'> <target type='virtio' name='arbitrary.virtio.serial.port.name'/> <address type='virtio-serial' controller='0' bus='0' port='1'/> </channel> ... I attach the core dump for your check, could you please help us check whether this is the same root cause, or a new qemu core dump issue (gdb) c Continuing. [New Thread 0x7fafa17fe700 (LWP 3102)] [New Thread 0x7fafa0ffd700 (LWP 3105)] [New Thread 0x7faf4bfff700 (LWP 3106)] [New Thread 0x7faf4b7fe700 (LWP 3107)] [New Thread 0x7faf4affd700 (LWP 3108)] [New Thread 0x7faf4a7fc700 (LWP 3109)] [New Thread 0x7faf49ffb700 (LWP 3110)] [New Thread 0x7faf497fa700 (LWP 3111)] [New Thread 0x7faf48ff9700 (LWP 3112)] [New Thread 0x7faf2ffff700 (LWP 3113)] [New Thread 0x7faf2f7fe700 (LWP 3114)] [Thread 0x7fafa17fe700 (LWP 3102) exited] [Thread 0x7faf4bfff700 (LWP 3106) exited] [Thread 0x7fafa8bc5700 (LWP 2992) exited] [Thread 0x7faf49ffb700 (LWP 3110) exited] [Thread 0x7faf2ffff700 (LWP 3113) exited] [Thread 0x7faf2f7fe700 (LWP 3114) exited] [Thread 0x7faf4affd700 (LWP 3108) exited] [Thread 0x7faf497fa700 (LWP 3111) exited] [Thread 0x7faf48ff9700 (LWP 3112) exited] [Thread 0x7faf4b7fe700 (LWP 3107) exited] [Thread 0x7faf4a7fc700 (LWP 3109) exited] [Thread 0x7fafa0ffd700 (LWP 3105) exited] Program received signal SIGSEGV, Segmentation fault. 0x00007fafb1bba2e6 in __strcmp_ssse3 () from /lib64/libc.so.6 (gdb) t a a bt Thread 3 (Thread 0x7fafa3dfe700 (LWP 2995)): #0 0x00007fafb1b6a257 in ioctl () from /lib64/libc.so.6 #1 0x00007fafb91b3f25 in kvm_vcpu_ioctl (cpu=cpu@entry=0x7fafba86cb60, type=type@entry=44672) at /usr/src/debug/qemu-2.1.2/kvm-all.c:1853 #2 0x00007fafb91b3fdc in kvm_cpu_exec (cpu=cpu@entry=0x7fafba86cb60) at /usr/src/debug/qemu-2.1.2/kvm-all.c:1722 #3 0x00007fafb91a32d2 in qemu_kvm_cpu_thread_fn (arg=0x7fafba86cb60) at /usr/src/debug/qemu-2.1.2/cpus.c:883 #4 0x00007fafb7cc1df5 in start_thread () from /lib64/libpthread.so.0 #5 0x00007fafb1b731ad in clone () from /lib64/libc.so.6 Thread 2 (Thread 0x7fafa2dff700 (LWP 3023)): #0 0x00007fafb1b68b7d in poll () from /lib64/libc.so.6 #1 0x00007fafb2d6ad37 in red_worker_main () from /lib64/libspice-server.so.1 #2 0x00007fafb7cc1df5 in start_thread () from /lib64/libpthread.so.0 #3 0x00007fafb1b731ad in clone () from /lib64/libc.so.6 Thread 1 (Thread 0x7fafb90aca40 (LWP 2982)): #0 0x00007fafb1bba2e6 in __strcmp_ssse3 () from /lib64/libc.so.6 #1 0x00007fafb91c4c50 in find_port_by_name (name=0x7fafbb410b60 "arbitrary.virtio.serial.port.name") at /usr/src/debug/qemu-2.1.2/hw/char/virtio-serial-bus.c:67 #2 virtser_port_device_realize (dev=0x7fafbab7fe60, errp=0x7fff363c47b0) at /usr/src/debug/qemu-2.1.2/hw/char/virtio-serial-bus.c:874 #3 0x00007fafb92e2ef8 in device_set_realized (obj=<optimized out>, value=<optimized out>, errp=0x7fff363c48d8) at hw/core/qdev.c:834 #4 0x00007fafb935f67e in property_set_bool (obj=0x7fafbab7fe60, v=<optimized out>, opaque=0x7fafbb410ab0, name=<optimized out>, errp=0x7fff363c48d8) at qom/object.c:1473 #5 0x00007fafb9361e27 in object_property_set_qobject (obj=0x7fafbab7fe60, value=<optimized out>, name=0x7fafb9421610 "realized", errp=0x7fff363c48d8) at qom/qom-qobject.c:24 #6 0x00007fafb9360a40 in object_property_set_bool (obj=obj@entry=0x7fafbab7fe60, value=value@entry=true, name=name@entry=0x7fafb9421610 "realized", errp=errp@entry=0x7fff363c48d8) at qom/object.c:888 #7 0x00007fafb926f8cf in qdev_device_add (opts=opts@entry=0x7fafba9c59c0) at qdev-monitor.c:554 #8 0x00007fafb926fcaa in do_device_add (mon=<optimized out>, qdict=<optimized out>, ret_data=<optimized out>) at qdev-monitor.c:677 #9 0x00007fafb91a7847 in qmp_call_cmd (cmd=<optimized out>, params=0x7fafbb1ede00, mon=0x7fafba57ec60) at /usr/src/debug/qemu-2.1.2/monitor.c:5038 #10 handle_qmp_command (parser=<optimized out>, tokens=<optimized out>) at /usr/src/debug/qemu-2.1.2/monitor.c:5104 #11 0x00007fafb93de2a2 in json_message_process_token (lexer=0x7fafba703150, token=0x7fafba9c56c0, type=JSON_OPERATOR, x=167, y=99) at qobject/json-streamer.c:87 #12 0x00007fafb93f005f in json_lexer_feed_char (lexer=lexer@entry=0x7fafba703150, ch=<optimized out>, flush=flush@entry=false) at qobject/json-lexer.c:303 #13 0x00007fafb93f012e in json_lexer_feed (lexer=0x7fafba703150, buffer=<optimized out>, size=<optimized out>) at qobject/json-lexer.c:356 --Type <return> to continue, or q <return> to quit-- #14 0x00007fafb93de439 in json_message_parser_feed (parser=<optimized out>, buffer=<optimized out>, size=<optimized out>) at qobject/json-streamer.c:110 #15 0x00007fafb91a57df in monitor_control_read (opaque=<optimized out>, buf=<optimized out>, size=<optimized out>) at /usr/src/debug/qemu-2.1.2/monitor.c:5125 #16 0x00007fafb927ade0 in qemu_chr_be_write (len=<optimized out>, buf=0x7fff363c4b30 "}w㱯\177", s=0x7fafba551b80) at qemu-char.c:213 #17 tcp_chr_read (chan=<optimized out>, cond=<optimized out>, opaque=0x7fafba551b80) at qemu-char.c:2729 #18 0x00007fafb75ca9ba in g_main_context_dispatch () from /lib64/libglib-2.0.so.0 #19 0x00007fafb9399628 in glib_pollfds_poll () at main-loop.c:190 #20 os_host_main_loop_wait (timeout=<optimized out>) at main-loop.c:235 #21 main_loop_wait (nonblocking=<optimized out>) at main-loop.c:484 #22 0x00007fafb917d09e in main_loop () at vl.c:2017 #23 main (argc=<optimized out>, argv=<optimized out>, envp=<optimized out>) at vl.c:4606 (gdb) It's the same issue; patch posted upstream. Fix is upstream b18a755c4266a340a25ab4118525bd57c3dfc3fa Have done test(hot plug a virtio serial chardev device while there is already the virtio console device) with both qemu cmd and libvirt virsh cmd, the bug did not occur any more, the detialed software versions are as follows: Host kernel: 3.10.0-254.el7.x86_64 Qemu-kvm-rhev: qemu-kvm-rhev-2.3.0-2.el7.x86_64 Libvirt: libvirt-1.2.8-16.el7.x86_64 So the bug if fixed and verified well. (In reply to Gu Nini from comment #8) > Have done test(hot plug a virtio serial chardev device while there is > already the virtio console device) with both qemu cmd and libvirt virsh cmd, > the bug did not occur any more, the detialed software versions are as > follows: > > Host kernel: 3.10.0-254.el7.x86_64 > Qemu-kvm-rhev: qemu-kvm-rhev-2.3.0-2.el7.x86_64 > Libvirt: libvirt-1.2.8-16.el7.x86_64 > > So the bug if fixed and verified well. So the bug **is** fixed and verified well. Sorry for the typo error. Based on Comment 8, set this bug to VERIFIED. Best regards, Huiqing Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2015-2546.html |