Bug 237730 - libvir: Xen Daemon error : POST operation failed
Summary: libvir: Xen Daemon error : POST operation failed
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: virt-manager
Version: 5.0
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
: ---
Assignee: Cole Robinson
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-04-25 00:54 UTC by Steve Milner
Modified: 2008-02-27 02:35 UTC (History)
6 users (show)

Fixed In Version: 5.1
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-02-27 02:35:56 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
virt-manager log for the last attempt (5.20 KB, text/plain)
2007-05-02 00:26 UTC, Steve Milner
no flags Details
tail -n 500 /var/log/xen/xend-debug.log | less > /tmp/xend-debug.log (13.95 KB, text/plain)
2007-05-02 00:29 UTC, Steve Milner
no flags Details
tail -n 500 /var/log/xen/xend.log | less > /tmp/xend.log (77.56 KB, text/plain)
2007-05-02 00:30 UTC, Steve Milner
no flags Details

Description Steve Milner 2007-04-25 00:54:04 UTC
Description of problem:
When trying to create a xen virtual machine using virt-manager the following
error is shown via the GUI: 

Guest Install Error
ERROR: virDomainCreateLinux() failed

Running virt-manager from a terminal yields a bit more information:

[root@greatjob ~]# virt-manager 
libvir: Xen Daemon error : POST operation failed: (xend.err 'destroyDevice()
takes exactly 3 arguments (2 given)')
Failed to get devices for domain kklsjdflksd

The system is an inspiron e1505 laptop. 

From cpuinfo ....
model name: Intel(R) Core(TM)2 CPU         T7200  @ 2.00GHz
flags: fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx
fxsr sse sse2 ss ht tm pbe nx lm constant_tsc up pni monitor ds_cpl vmx est tm2
cx16 xtpr lahf_lm

Version-Release number of selected component (if applicable):
[root@greatjob ~]# uname -a
Linux greatjob 2.6.18-8.1.1.el5xen #1 SMP Mon Feb 26 21:05:12 EST 2007 i686 i686
i386 GNU/Linux
[root@greatjob ~]# rpm -qa | grep xen
kmod-ipw3945-xen-1.0-4.7.el5
xen-3.0.3-25.0.3.el5
xen-libs-3.0.3-25.0.3.el5
kernel-xen-2.6.18-8.1.1.el5
[root@greatjob ~]# rpm -qa | grep virt
rhn-virtualization-host-1.0.1-41
virt-manager-0.2.6-7.0.2.el5
rhn-kickstart-virtualization-2.0.10-2.el5
libvirt-python-0.1.8-15.el5
rhn-virtualization-common-1.0.1-41
python-virtinst-0.99.0-2.el5
libvirt-0.1.8-15.el5
[root@greatjob ~]# 

How reproducible:
For me it happens no matter what I try to use. FC6, RHEL5, Rawhide, it doesn't
matter what the guest is ....

Steps to Reproduce:
1. Attempt to create a vm on an inspiron E1505 using virt manager
2. use either type of virtualization
3. see the error
  
Actual results:
The error posted in description

Expected results:
It creates the vm

Additional info:
If you are in the rdu office you can come see it first hand if that would help
(it errors on my laptop).

Comment 1 Steve Milner 2007-04-25 02:00:46 UTC
Even though this error occurs I can still seem to run a VM install by restarting
the virt-manager, selecting the new vm and unpausing it ...

Comment 2 Daniel Veillard 2007-04-25 07:48:30 UTC
Hum, if it's in a paused state this seems to indicate the error comes 
when activating the devices (now why would it try to destroy one, maybe
one of the device gave a problem). Usually the sequence is 
   1/ create the domain
   2/ activate the devices
   3/ unpause the domain

so step 2 fails on some device apparently. Having an idea of what parameters
you used for the domain creation would certainly help, it's gonna be near
impossible to diagnose without further details.

Daniel

Comment 3 Steve Milner 2007-04-27 00:18:42 UTC
Here is my latest attempt .... (using virt-manager) ....

System Name: fc7
Type: Paravirtualized
Install Media URL:
http://download.fedora.redhat.com/pub/fedora/linux/core/test/6.93/Fedora/i386/os/
Simple File: /tmp/fc7disk (5GB Allocate entire disk)
VM Max MB: 500MB
VM Startup MB: 500MB
VCPUs: 1

Comment 4 Steve Milner 2007-04-29 00:28:57 UTC
Here is another ....

System Name: Gentoo
Type: Full Virt
Install Media: Downloaded ISO
Disk Image: LVM Partition called genroo
VM Max MB: 500
VM Startup MB: 500
VPUs: 1

Error is:
libvir: Xen Daemon error : POST operation failed: (xend.err 'destroyDevice()
takes exactly 3 arguments (2 given)')
Failed to get devices for domain gentoo

The only difference I notice is that non-FC/RH distros don't even start after
unpausing in full virtualization mode.

Comment 5 Daniel Berrangé 2007-04-29 22:56:36 UTC
Can you provide the following log files as attachements to this ticket

 - /var/log/audit/audit.log
 - /var/log/xen/xend.log
 - /var/log/xen/xend-debug.log
 - /root/.virt-manager/virt-manager.log


NB, for the latter, please capture it immediately after the 'new vm wizard'
shows failure, because it is cleared everytime virt-manager starts.

WRT to comment #3  - if you have SELinux enabled you need to make sure the disk
is located under /var/lib/xen/images.

WRT to comment #4 - if using an ISO image, that also needs to be under
/var/lib/xen/images.

These restrictions don't apply to use of LVM partitions, or direct use of the
host CDROM device.  Alternatively, you can have a separate directory somewhere &
label it with 'xen_image_t'  - eg  chcon -t xen_image_t /some/dir 

The 'destroyDevice()' error message always indicates that either a virtual NIC,
or block device setup process failed  in some way. Based on info thus far I
think SELinux denial is most likely explanation, but the log files I mention
above should be able to confirm this.

Comment 6 Steve Milner 2007-05-02 00:26:15 UTC
Created attachment 153908 [details]
virt-manager log for the last attempt

Comment 7 Steve Milner 2007-05-02 00:29:20 UTC
Created attachment 153909 [details]
tail -n 500 /var/log/xen/xend-debug.log | less > /tmp/xend-debug.log

Comment 8 Steve Milner 2007-05-02 00:30:30 UTC
Created attachment 153910 [details]
tail -n 500 /var/log/xen/xend.log | less > /tmp/xend.log

Comment 9 Steve Milner 2007-05-02 00:36:58 UTC
I verified that selinux us disabled via /etc/sysconfig/selinux as well as
system-config-securitylevel-tui. audit.log is simply just variations of:

type=USER_END msg=audit(1178057522.377:112): user pid=3105 uid=0 auid=0
msg='PAM: session close acct=root : exe="/usr
/sbin/crond" (hostname=?, addr=?, terminal=cron res=success)'
ty

I have attached the last 500 lines from the other files to this ticket.

Comment 10 Mark Haney 2007-06-27 12:36:16 UTC
I get a similar error using virt-install from an ssh session:

libvir: Xen Daemon error : GET operation failed:
libvir: Xen Daemon error : POST operation failed: (xend.err "Error creating
domain: (2, 'Invalid kernel', 'xc_dom_find_loader: no loader found\\n')")
Traceback (most recent call last):
  File "/usr/sbin/virt-install", line 629, in <module>
    main()
  File "/usr/sbin/virt-install", line 578, in main
    dom = guest.start_install(conscb,progresscb)
  File "/usr/lib/python2.5/site-packages/virtinst/Guest.py", line 649, in
start_install
    return self._do_install(consolecb, meter)
  File "/usr/lib/python2.5/site-packages/virtinst/Guest.py", line 666, in
_do_install
    self.domain = self.conn.createLinux(install_xml, 0)
  File "/usr/lib/python2.5/site-packages/libvirt.py", line 503, in createLinux
    if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
libvirt.libvirtError: virDomainCreateLinux() failed POST operation failed:
(xend.err "Error creating domain: (2, 'Invalid kernel', 'xc_dom_find_loader: no
loader found\\n')")


But apparently, I cannot continue the install after this point. 

Comment 11 Davide Benini 2007-08-29 10:07:24 UTC
I'm getting the same problem, both with a paravirtualized and a fully
virtualized guest on RHEL 5 (SELinux disabled):

[root@dbenini ~]# virt-install -n test1 -r 512 -f /mnt/test/Xen/test1.dsk -s 2
-v -c /dev/scd0 
Would you like to enable graphics support? (yes or no) no
 

Starting install...
libvir: Xen Daemon error : POST operation failed: (xend.err 'destroyDevice()
takes exactly 3 arguments (2 given)')
Failed to get devices for domain test1
Traceback (most recent call last):
  File "/usr/sbin/virt-install", line 447, in ?
    main()
  File "/usr/sbin/virt-install", line 411, in main
    dom = guest.start_install(conscb)
  File "/usr/lib/python2.4/site-packages/virtinst/XenGuest.py", line 367, in
start_install
    self.domain = self.conn.createLinux(cxml, 0)
  File "/usr/lib/python2.4/site-packages/libvirt.py", line 249, in createLinux
    if ret is None:raise libvirtError('virDomainCreateLinux() failed')
libvirt.libvirtError: virDomainCreateLinux() failed


Comment 12 Cole Robinson 2007-10-23 16:32:59 UTC
Davide (comment #11) and Steve (comment #9),

Can you try reproducing this against the latest RHEL5.1 spin? If you still have
problems, please re-report the error message and the package versions.

Mark (comment #10),

This doesn't appear to be the same error message as the others reported in this
bug. Can you try to reproduce your issue, and if you still encounter problems
open a separate bug?



Comment 13 Davide Benini 2008-02-25 16:13:02 UTC
After some months of testing on RHEL 5.1, I never experienced this issue again.

Thanks.


Comment 14 Chris Lalancette 2008-02-27 02:35:56 UTC
Yes, I believe the destroyDevice() bug was fixed by another BZ during 5.1
development.  Closing this out based on Comment #13.

Chris Lalancette


Note You need to log in before you can comment on or make changes to this bug.