| Summary: | libvirt: Accessing incorrect union field when setting up SPICE password causes crash | ||||||
|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Jakub Libosvar <jlibosva> | ||||
| Component: | libvirt | Assignee: | Daniel Veillard <veillard> | ||||
| Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | ||||
| Severity: | urgent | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 6.0 | CC: | berrange, danken, dyuan, eblake, jialiu, jyang, mgoldboi, mjenner, mzhan, vbian, xen-maint | ||||
| Target Milestone: | rc | Keywords: | Regression, TestBlocker | ||||
| Target Release: | --- | ||||||
| Hardware: | All | ||||||
| OS: | Linux | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | libvirt-0.8.7-7.el6 | Doc Type: | Bug Fix | ||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | 2011-05-19 13:27:38 UTC | Type: | --- | ||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Attachments: |
|
||||||
This is another mistake like the one in bug 676374. A mixup of vnc/spice in qemuInitPasswords: if (vm->def->ngraphics == 1) { if (vm->def->graphics[0]->type == VIR_DOMAIN_GRAPHICS_TYPE_VNC) { ret = qemuInitGraphicsPasswords(driver, vm, VIR_DOMAIN_GRAPHICS_TYPE_VNC, &vm->def->graphics[0]->data.vnc.auth, driver->vncPassword); } else if (vm->def->graphics[0]->type == VIR_DOMAIN_GRAPHICS_TYPE_SPICE) { ret = qemuInitGraphicsPasswords(driver, vm, VIR_DOMAIN_GRAPHICS_TYPE_SPICE, &vm->def->graphics[0]->data.vnc.auth, driver->vncPassword); } } *** Bug 677926 has been marked as a duplicate of this bug. *** *** Bug 678319 has been marked as a duplicate of this bug. *** verfied with libvirt-0.8.7-7.el6.x86_64
[reproducer with libvirt-0.8.7-6.el6.x86_64]
# virsh dumpxml test1 |grep spice
<graphics type='spice' port='5900' autoport='no' listen='0.0.0.0' keymap='en-us' passwdValidTo='2011-04-09T15:51:00'/>
# virsh start test1
error: Failed to start domain test1
error: server closed connection:
# service libvirtd status
libvirtd dead but pid file exists
[verification with libvirt-0.8.7-7.el6.x86_64 ]
# virsh dumpxml test1 |grep spice
<graphics type='spice' port='5900' autoport='no' listen='0.0.0.0' keymap='en-us' passwdValidTo='2011-04-09T15:51:00'/>
# virsh start test1
Domain test1 started
# spicec -h 10.66.93.106 -p 5900 -w aaabbb could access the spice interface successfully .
So set bug status to VERIFIED
tested with
libvirt-0.8.7-17.el6.x86_64
qemu-kvm-0.12.1.2-2.158.el6.x86_64
kernel-2.6.32-131.0.1.el6.x86_64
spice-client-0.7.3-1.el6.x86_64
spice-server-0.8.0-1.el6.x86_64
[Steps]
# virsh dumpxml test1 |grep spice
<graphics type='spice' port='5900' autoport='no' listen='0.0.0.0'
keymap='en-us' passwdValidTo='2011-04-18T15:51:00'/>
# virsh start test1
Domain test1 started
# spicec -h 10.66.4.220 -p 5900 -w aaabbb could access the spice interface
successfully .
So keep bug status VERIFIED
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2011-0596.html |
Created attachment 478906 [details] Backtrace + log Description of problem: When attempting to run VM from RHEV-M, libvirtd stops working. Version-Release number of selected component (if applicable): libvirt-0.8.7-6.el6.x86_64 vdsm-4.9-47.el6.x86_64 kernel-2.6.32-113.el6.x86_64 How reproducible: Always Steps to Reproduce: 1. Have RHEV-Manager with some machines on it using rhel 6 host 2. Run VM on this host with libvirt Actual results: Libvirt crashes Expected results: Libvirt works and VM is running Additional info: Backtrace from gdb and libvirt logs are attached