[libvirt] [virt-tools-list] Questions about virt-manager running on Arch of Itanium 64

Cole Robinson crobinso at redhat.com
Mon Jan 4 16:46:06 UTC 2010


On 12/25/2009 03:48 AM, Dustin Xiong wrote:

>>> If i want to update qemu_conf.c to handle ia64 , which files or 
>>> datastruct needs to update ? Only the qemu_conf.c ?
>>
>> If you search for the table 
>>
>> static const struct qemu_arch_info const arch_info_hvm[] = {
>>
>> It is probably (hopefully?) sufficient to just add 
>>
>> { "ia64", 64, NULL, "/usr/bin/qemu-system-ia64", NULL, NULL, 0 },
>>
>> The key test is that when you later run
>>
>> virsh capabilities
>>
>> it should show the /usr/bin/qemu-system-ia64 binary, and also report that
>> KVM is present. 
>>
>> I have a feeling you might also need to add code to the src/nodeinfo.c
>> file, since I think that /proc/cpuinfo on ia64 is in a different format
>> to that on x86_64. ie, change the linuxNodeInfoCPUPopulate() method so
>> it can also parse the ia64 format. This is used by the command
>>
>> virsh nodeinfo
>>
>>
>> So once 'capabilities' and 'nodeinfo' are working on ia64, then it should
>> be possible to use virt-manager properly
>>
> I modify the src, and build it to rpm. The libvirt could work.
> 
> And as you said, i add ia64 info into the qemu_conf.c. The result as below:
> 
>  
> 
> [root at kvm bin]# virsh capabilities
> <capabilities>
> 
>   <host>
>     <cpu>
>       <arch>ia64</arch>
>     </cpu>
>     <topology>
>       <cells num='1'>
>         <cell id='0'>
>           <cpus num='16'>
>             <cpu id='0'/>
>             <cpu id='1'/>
>             <cpu id='2'/>
>             <cpu id='3'/>
>             <cpu id='4'/>
>             <cpu id='5'/>
>             <cpu id='6'/>
>             <cpu id='7'/>
>             <cpu id='8'/>
>             <cpu id='9'/>
>             <cpu id='10'/>
>             <cpu id='11'/>
>             <cpu id='12'/>
>             <cpu id='13'/>
>             <cpu id='14'/>
>             <cpu id='15'/>
>           </cpus>
>         </cell>
>       </cells>
>     </topology>
>   </host>
> 
>   <guest>
>     <os_type>hvm</os_type>
>     <arch name='ia64'>
>       <wordsize>64</wordsize>
>       <emulator>/usr/bin/qemu-system-ia64</emulator>
>       <machine>ia64</machine>
>       <machine>xenner</machine>
>       <domain type='qemu'>
>       </domain>
>       <domain type='kvm'>
>         <emulator>/usr/bin/kvm</emulator>
>       </domain>
>     </arch>
>     <features>
>       <acpi default='on' toggle='yes'/>
>       <apic default='on' toggle='no'/>
>     </features>
>   </guest>
> 
> </capabilities>
> 
>  
> 
> [root at kvm bin]# virsh nodeinfo
> CPU model:           ia64
> CPU(s):              16
> CPU frequency:       1330 MHz
> CPU socket(s):       16
> Core(s) per socket:  1
> Thread(s) per core:  1
> NUMA cell(s):        1
> Memory size:         8252480 kB
> 
>  
> 
> But the virt-manager still can't work. When i create a new vm. 
> 
> The error as below:
> 
>  
> 
> Unable to complete install 'libvirt.libvirtError internal error Domain ad didn't show up
> 
> Traceback (most recent call last):
>   File "/usr/share/virt-manager/virtManager/create.py", line 718, in do_install
>     dom = guest.start_install(False, meter = meter)
>   File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 660, in start_install
>     return self._do_install(consolecb, meter, removeOld, wait)
>   File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 758, in _do_install
>     self.domain = self.conn.createLinux(install_xml, 0)
>   File "/usr/lib/python2.4/site-packages/libvirt.py", line 974, in createLinux
>     if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
> libvirtError: internal error Domain ad didn't show up
> 
> 
> I don't know how to resolve this error.
> 
> Thank you for your advice.
> 

What is the output in /var/log/libvirt/qemu/$vmname.log ?

- Cole




More information about the libvir-list mailing list