Description of problem: It's possible to define a run a non-bootloader guest. However, if you dump the XML of this guest and then try to define and then start a guest using the XML later on, the start fails. Version-Release number of selected component (if applicable): libvirt-devel-0.4.1-3.fc9 libvirt-0.4.1-3.fc9 How reproducible: Always - also seen this issue using libvirt 0.4.0 on a SLES 10 system. Steps to Reproduce: 1. Define guest using <kernel> and <initrd> tags instead of a bootloader (see XML below). 2. Start guest to verify guest properly works. 3. virsh dumpxml and save the output. 4. Shutdown and undefine guest. 5. Define guest using the XML captured from virsh dumpxml. 6. Start guest - this will fail. 7. virsh dumpxml - notice that the <kernel> and <initrd> tags have been stripped away. Actual results: Start fails with the following error: libvir: Xen Daemon error : POST operation failed: (xend.err "(2, 'Invalid kernel', 'xc_dom_find_loader: no loader found\\n')") error: Failed to start domain no_bootloader Expected results: The guest should start properly. Additional info: 1) The steps to reproduce are contrived, but can cause problems like the following: xml = virDomainGetXMLDesc() on SystemA virDomainDefineXML(conn, xml) on SystemB. The define is successful, but the user is unable to start the guest on SystemB. 2) After Step 3 above, remove the <bootloader /> tag from the XML generated by dumpxml. You should be able to start the guest with no problems. 3) XML used for guest: <domain type='xen' id='1683'> <name>no_bootloader</name> <uuid>feee7d6a-cde2-11dc-9f3b-0011259da336</uuid> <os> <type>linux</type> <kernel>/data/users/kaitlin/default-xen-kernel</kernel> <initrd>/data/users/kaitlin/default-xen-initrd</initrd> <cmdline>TERM=xterm </cmdline> </os> <memory>131172</memory> <vcpu>1</vcpu> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <interface type='network'> <source network='default'/> <mac address="11:22:33:44:55:66"/> </interface> <disk type='file' device='disk'> <driver name='file'/> <source file='/data/users/kaitlin/default-xen-dimage'/> <target dev='xvda'/> </disk> <console tty='/dev/pts/4'/> </devices> </domain>
Changing version to '9' as part of upcoming Fedora 9 GA. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
THis problem should be fixed in latest version of libvirt 0.5.1