| Summary: | Non-existant path to serial console file causes libvirtd to crash | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Gurhan Ozen <gozen> |
| Component: | libvirt | Assignee: | Eric Blake <eblake> |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | Virtualization Bugs <virt-bugs> |
| Severity: | high | Docs Contact: | |
| Priority: | high | ||
| Version: | 6.0 | CC: | dallan, dyuan, jburke, mzhan, rwu, vbian, ydu |
| 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-09-21 19:51:04 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
Gurhan Ozen
2011-08-16 19:00:10 UTC
Gurhan, can you attach the guest XML? Thanks, Dave Dave, here is the xml:
debug : virDomainCreateXML:1937 : conn=0x7fa4e8000a20, xmlDesc=<domain type='kvm'>
<name>RH6_x86_64_hvm_guest</name>
<currentMemory>1048576</currentMemory>
<memory>1048576</memory>
<uuid>0cdd3673-8ebb-b653-95ec-64b26439210e</uuid>
<os>
<type arch='x86_64'>hvm</type>
<kernel>/var/lib/libvirt/boot/virtinst-vmlinuz.CCG4j9</kernel>
<initrd>/var/lib/libvirt/boot/virtinst-initrd.img.orZywG</initrd>
<cmdline>method=nfs:bigpapi.bos.redhat.com:/vol/engarchive2/redhat/released/RHEL-6/6.0/Client/x86_64/os ks=http://lab2.rhts.eng.bos.redhat.com/cblr/svc/op/ks/system/guest-80-99.rhts.eng.bos.redhat.com</cmdline>
</os>
<features>
<acpi/><apic/><pae/>
</features>
<clock offset="utc"/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>destroy</on_reboot>
<on_crash>destroy</on_crash>
<vcpu>1</vcpu>
<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/RH6_x86_64_hvm_guest_aaaa.img'/>
<target dev='vda' bus='virtio'/>
</disk>
<interface type='bridge'>
<source bridge='br0'/>
<mac address='52:54:00:35:cf:ea'/>
<model type='virtio'/>
</interface>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='-1' keymap='en-us'/>
<serial type='file'>
<source path='/mnt/tests/distribution/virt/install/rh6_x86_64_hvm_guest/logs/console.log'/>
</serial>
<video>
<model type='cirrus'/>
</video>
</devices>
</domain>
And i will try to reproduce this on 6.2 as well.
This works fine with 6.2 (RHEL6.2-20110816.n.1 tree)
Wed, 17 Aug 2011 01:25:27 ERROR Unable to pre-create chardev file '/mnt/tests/distribution/virt/install/NOPATH/no.log': No such file or directory
Wed, 17 Aug 2011 01:25:27 DEBUG Traceback (most recent call last):
File "/usr/sbin/virt-install", line 620, in start_install
noboot=options.noreboot)
File "/usr/lib/python2.6/site-packages/virtinst/Guest.py", line 1223, in start_install
noboot)
File "/usr/lib/python2.6/site-packages/virtinst/Guest.py", line 1291, in _create_guest
dom = self.conn.createLinux(start_xml or final_xml, 0)
File "/usr/lib64/python2.6/site-packages/libvirt.py", line 1966, in createLinux
if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
libvirtError: Unable to pre-create chardev file '/mnt/tests/distribution/virt/install/NOPATH/no.log': No such file or directory
Wed, 17 Aug 2011 01:25:27 DEBUG Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
virsh --connect qemu:///system start GuestTwo_ser
otherwise, please restart your installation.
Domain installation does not appear to have been successful.
If it was, you can restart your domain by running:
virsh --connect qemu:///system start GuestTwo_ser
otherwise, please restart your installation.
# service libvirtd status
libvirtd (pid 3930) is running...
I test this bug on rhel6.1 with libvirt-0.8.7-18.el6_1.1.x86_64, and can't reproduce this bug. Steps: 1. Add console=ttyS0,115200 to guest kernel line. 2. Add the following XML to a domain. <serial type='file'> <source path='/tmp/solog/vm-serial.log'/> <target port='1'/> </serial> 3. Start the domain. # virsh start demo error: Failed to start domain demo error: Unable to pre-create chardev file '/tmp/solog/vm-serial.log': No such file or directory if directory "/tmp/solog/" exist, and vm-serial.log will be created automatically. |