Bug 507546 - failed to create guest on ia64
failed to create guest on ia64
Status: CLOSED NOTABUG
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: xen (Show other bugs)
5.4
ia64 Linux
high Severity high
: rc
: ---
Assigned To: Michal Novotny
Virtualization Bugs
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2009-06-23 05:34 EDT by Alex Jia
Modified: 2014-02-02 17:37 EST (History)
6 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-06-24 04:33:42 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Alex Jia 2009-06-23 05:34:32 EDT
Description of problem:
failed to create guest with xen kernel on ia64,including xenpv or xenfv type 

Version-Release number of selected component (if applicable):
[root@dhcp-66-81-33 libvirt]# uname -a
Linux dhcp-66-81-33.nay.redhat.com 2.6.18-154.el5xen #1 SMP Wed Jun 17 18:14:37 EDT 2009 ia64 ia64 ia64 GNU/Linux
[root@dhcp-66-81-33 libvirt]# rpm -qa | grep libvirt
libvirt-python-0.6.3-11.el5
libvirt-0.6.3-11.el5
libvirt-debuginfo-0.6.3-11.el5
libvirt-cim-debuginfo-0.5.5-2.el5
libvirt-cim-0.5.5-2.el5
libvirt-devel-0.6.3-11.el5

How reproducible:
(1)xenpv

[root@dhcp-66-81-33 libvirt]# python
Python 2.4.3 (#1, Jun 11 2009, 14:10:20)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import libvirt
>>> conn=libvirt.open(None)
>>> fp=open("guest.xml","r")
>>> xmldesc=fp.read()
>>> print xmldesc
<?xml version='1.0' encoding='UTF-8'?>
<domain type='xen'>
  <name>rhel5u4</name>
  <uuid>368b92e8-1388-427c-9b35-606b6e669186</uuid>
  <memory>1048576</memory>
  <vcpu>1</vcpu>
  <os>
    <type>linux</type>
    <kernel>/var/lib/libvirt/boot/vmlinuz</kernel>
    <initrd>/var/lib/libvirt/boot/initrd.img</initrd>
    <cmdline>ks=http://10.66.70.201/libvirt.5.4.ks.cfg</cmdline>
  </os>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <devices>
    <disk device='disk' type='file'>
      <driver name='file'/>
      <source file='/var/lib/libvirt/images/rhel5.4.img'/>
      <target dev='xvda'/>
    </disk>
    <interface type='bridge'>
      <mac address='80:a6:9c:6e:b3:6d'/>
      <source bridge='xenbr0'/>
      <script path='/etc/xen/scripts/vif-bridge'/>
    </interface>
    <input bus='xen' type='mouse'/>
    <graphics keymap='en-us' type='vnc' port='-1'/>
    <console/>
  </devices>
</domain>
>>>conn.createXML(xmldesc,0)
libvir: Xen Daemon error : POST operation failed: xend_post: error from xen daemon: (xend.err "Error creating domain: (1, 'Internal error', 'xc_dom_mem_init: arch hooks not set\\n')")
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "/usr/lib/python2.4/site-packages/libvirt.py", line 994, in createXML
    if ret is None:raise libvirtError('virDomainCreateXML() failed', conn=self)
libvirt.libvirtError: POST operation failed: xend_post: error from xen daemon: (xend.err "Error creating domain: (1, 'Internal error', 'xc_dom_mem_init: arch hooks not set\\n')")

(2)xenfv

[root@dhcp-66-81-33 libvirt]# python
Python 2.4.3 (#1, Jun 11 2009, 14:10:20)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import libvirt
>>> conn=libvirt.open(None)
>>> fp=open("rhel5u4fv.xml","r")
>>> xmldesc=fp.read()
>>> print xmldesc
<?xml version='1.0' encoding='UTF-8'?>
<domain type='xen'>
  <name>rhel5u4</name>
  <uuid>31bd1c9d-c7c9-4750-981d-d08b99763ed6</uuid>
  <memory>1048576</memory>
  <vcpu>1</vcpu>
  <os>
    <type>hvm</type>
    <loader>/usr/lib/xen/boot/hvmloader</loader>
    <boot dev='cdrom'/>
  </os>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <devices>
    <emulator>/usr/lib64/xen/bin/qemu-dm</emulator>
    <disk device='cdrom' type='file'>
      <driver name='file'/>
      <source file='/tmp/custom.iso'/>
      <target dev='hdc'/>
    </disk>
    <disk device='disk' type='file'>
      <driver name='file'/>
      <source file='/var/lib/libvirt/images/rhel5.4.img'/>
      <target dev='hda'/>
    </disk>
    <interface type='bridge'>
      <mac address='92:57:9d:4a:76:86'/>
      <source bridge='xenbr0'/>
      <script path='/etc/xen/scripts/vif-bridge'/>
    </interface>
    <input bus='ps2' type='mouse'/>
    <graphics keymap='en-us' type='vnc' port='-1'/>
    <console/>
  </devices>
</domain>


>>> conn.createXML(xmldesc,0)
libvir: Xen Daemon error : POST operation failed: xend_post: error from xen daemon: (xend.err 'Error creating domain: Kernel image does not exist: /usr/lib/xen/boot/hvmloader')
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "/usr/lib/python2.4/site-packages/libvirt.py", line 994, in createXML
    if ret is None:raise libvirtError('virDomainCreateXML() failed', conn=self)
libvirt.libvirtError: POST operation failed: xend_post: error from xen daemon: (xend.err 'Error creating domain: Kernel image does not exist: /usr/lib/xen/boot/hvmloader')


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:
libvirt can run well on ia64

Additional info:
[root@dhcp-66-81-33 libvirt]# ll /usr/lib/xen/boot/hvmloader
ls: /usr/lib/xen/boot/hvmloader: No such file or directory
[root@dhcp-66-81-33 libvirt]# ll /usr/lib/xen/
total 8
drwxr-xr-x 2 root root 4096 Jun 19 19:14 bin
Comment 1 Daniel Veillard 2009-06-23 08:55:37 EDT
All those errors are coming back from the xend layer as far as I understand:

xc_dom_mem_init is part of xen C low level library if I remember correctly

/usr/lib/xen/boot/hvmloader is a resource which should be provided by the
xen package.

Seems to me the xen install on ia64 you are testing is just not working
and I doubt it's libvirt fault, so reassigning to the xen component.

Daniel
Comment 3 Chris Lalancette 2009-06-23 09:37:12 EDT
(In reply to comment #0)
> <?xml version='1.0' encoding='UTF-8'?>
> <domain type='xen'>
>   <name>rhel5u4</name>
>   <uuid>31bd1c9d-c7c9-4750-981d-d08b99763ed6</uuid>
>   <memory>1048576</memory>
>   <vcpu>1</vcpu>
>   <os>
>     <type>hvm</type>
>     <loader>/usr/lib/xen/boot/hvmloader</loader>

This is almost certainly wrong for ia64.  I can't remember the details, but you need to install the ia64-guest-firmware package, and set this to (possibly) something different.

Before we get too involved debugging custom code: does any of this work if you use our standard tools, like virt-install?  That is, can you install a PV or an FV guest on ia64 using virt-install?

Chris Lalancette
Comment 4 Alex Jia 2009-06-24 03:47:23 EDT
I have installed xen-ia64-guest-firmware rpm package,and create ia64 guest(xenpv and xenfv),the result shows that guest can be create on ia64 via virt-install and libvirt api.
Comment 5 Chris Lalancette 2009-06-24 04:33:42 EDT
Hm, OK.  I didn't remember that you needed the firmware for PV guests, but I know essentially zero about ia64, so that's not surprising.  In any case, this seems not to be a bug, so I'm going to close it as such.

Chris Lalancette

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