> Date: Tue, 24 Nov 2009 10:33:48 +0000 > From: berrange@xxxxxxxxxx > To: x_k_123@xxxxxxxxxxx > CC: crobinso@xxxxxxxxxx; libvirt-list@xxxxxxxxxx; virt-tools-list@xxxxxxxxxx > Subject: Re: [virt-tools-list] Questions about virt-manager running on Arch of Itanium 64 > > On Tue, Nov 24, 2009 at 10:05:08AM +0800, Dustin Xiong wrote: > > > Date: Mon, 23 Nov 2009 16:16:05 +0000 > > > From: berrange@xxxxxxxxxx > > > To: crobinso@xxxxxxxxxx > > > CC: x_k_123@xxxxxxxxxxx; libvirt-list@xxxxxxxxxx; virt-tools-list@xxxxxxxxxx > > > Subject: Re: [virt-tools-list] Questions about virt-manager running on Arch of Itanium 64 > > > > > > On Mon, Nov 23, 2009 at 11:09:28AM -0500, Cole Robinson wrote: > > > > On 11/23/2009 01:43 AM, Dustin Xiong wrote: > > > > > > > > > > yes, my libvirt rpm and other related rpms all ca! me from the RHEL 5.4 > > > > > iso. And they all build for itanium 64 > > > > > # rpm -qa | grep libvirt > > > > > libvirt-python-0.6.3-20.el5 > > > > > libvirt-devel-0.6.3-20.el5 > > > > > libvirt-0.6.3-20.el5 > > > > > > > > > > And i try to make a link, it still doesn't work. > > > > > ln -s /usr/local/bin/qemu-system-ia64 /usr/libexec/qemu-system-ia64 > > > > > > > > > > > > > Actually I think that destination needs to be /usr/libexec/qemu-kvm, not > > > > qemu-system-ia64. And looking at the rhel5 code, this can also be > > > > /usr/bin/qemu-kvm > > > > > > > > > That's not going to help. 'ia64' is not listed as a valid architecture > > > in qemu_conf.c, so it'll never be pulled into the capabilitie! s, and thus > > > libvirt will never even look for! a KVM b inary > > > > > > > The libvirt and virt-manager rpm all come from the iso of > > Red Hat Enterprise Linux 5.4 Server (Itanium)Does the redhat have the > > plans to implement the architecture ia64 in libvirt ? > > libvirt as an open source project is happy to support any architecture. > > In RHEL, Red Hat only support a sub-set of the functionality / platforms. > RHEL-5 Xen supports i386, x86_64 and ia64. RHEL-5 KVM only supports x86_64 > > > > Someone needs to update qemu_conf.c to handle ia64 correctly. > > > > > > > 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@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'/> &nbs! p; <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> &n! bsp; </cells> &nb! sp; < /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'/> &l! t;/features> </guest> </capabilities> [root@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. Merry Christmas ! -dustin. Windows Live: Keep your friends up to date with what you do online. |
-- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list