Bug 677926

Summary: libvirt crash when configure domain graphics with spice and passwdValidTo option.
Product: Red Hat Enterprise Linux 6 Reporter: Johnny Liu <jialiu>
Component: libvirtAssignee: Daniel Veillard <veillard>
Status: CLOSED DUPLICATE QA Contact: Virtualization Bugs <virt-bugs>
Severity: high Docs Contact:
Priority: high    
Version: 6.1CC: berrange, dyuan, eblake, llim, xen-maint, yoyzhang
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-02-16 10:27:07 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Johnny Liu 2011-02-16 09:57:30 UTC
Description of problem:
When configure domain with the following graphics:
<graphics type='spice' autoport='yes' listen='0' passwd='test' passwdValidTo='1970-01-01T00:00:01'/>

Try to start this domain, libvirtd crashed.
# virsh start rhel55
error: Failed to start domain rhel55
error: server closed connection: 

/var/log/messages:
...
Feb 16 12:50:15 dhcp-93-91 kernel: libvirtd[30940]: segfault at 0 ip 0000003245a80022 sp 00007f0670feb0a8 error 4 in libc-2.12.so[3245a00000+175000]
Feb 16 12:50:15 dhcp-93-91 abrt[31052]: saved core dump of pid 30934 (/usr/sbin/libvirtd) to /var/spool/abrt/ccpp-1297878615-30934.new/coredump (69533696 bytes)
....

Version-Release number of selected component (if applicable):
libvirt-0.8.7-6.el6.x86_64
kernel-2.6.32-113.el6.x86_64
qemu-kvm-0.12.1.2-2.144.el6.x86_64
spice-server-0.7.2-4.el6.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Define a domain with the xml file:
<domain type='kvm'>
  <name>rhel55</name>
  <uuid>2814d348-ee12-9dd3-2373-99bb9301e8a7</uuid>
  <memory>1048576</memory>
  <currentMemory>1048576</currentMemory>
  <vcpu>1</vcpu>
  <os>
    <type arch='x86_64' machine='rhel6.0.0'>hvm</type>
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <clock offset='utc'/>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/libexec/qemu-kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='none'/>
      <source file='/var/lib/libvirt/images/rhel55.img'/>
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' unit='0'/>
    </disk>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <interface type='network'>
      <mac address='52:54:00:8e:71:23'/>
      <source network='default'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <input type='mouse' bus='ps2'/>
    <graphics type='spice' autoport='yes' listen='0' passwd='test' passwdValidTo='1970-01-01T00:00:01'/>
    <video>
      <model type='cirrus' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </memballoon>
  </devices>
</domain>


2. Try to start it.

  
Actual results:
libvirtd crashed.

# virsh start rhel55
error: Failed to start domain rhel55
error: server closed connection: 

Expected results:
libvirtd should works fine, no crash.

Additional info:
1. Modify graphics type to "vnc", it works fine.
2. Keep graphics type with "spice", remove passwdValidTo='1970-01-01T00:00:01' attribute, domain is started successfully.

Comment 2 Daniel Berrangé 2011-02-16 10:27:07 UTC

*** This bug has been marked as a duplicate of bug 677709 ***