Daniel, I got it. We need do machine detection for the special PPC platforms. Thank you for comments. Olivia > -----Original Message----- > From: Daniel P. Berrange [mailto:berrange@xxxxxxxxxx] > Sent: Tuesday, March 04, 2014 10:53 PM > To: Yin Olivia-R63875 > Cc: libvir-list@xxxxxxxxxx > Subject: Re: [PATCH] qemu: add PCI-multibus support for ppc > > On Fri, Feb 28, 2014 at 09:10:47AM +0000, Hong-Hua.Yin@xxxxxxxxxxxxx wrote: > > Hi Daniel, > > > > Refer to libvirt/src/qemu/qemu_capabilities.c, only x86_64/i686 support > PCI_MULTIBUS. > > /* Currently only x86_64 and i686 support PCI-multibus. */ > > if (qemuCaps->arch == VIR_ARCH_X86_64 || > > qemuCaps->arch == VIR_ARCH_I686) { > > virQEMUCapsSet(qemuCaps, QEMU_CAPS_PCI_MULTIBUS); > > > > libvirt/src/qemu/qemu_capabilities.h: > > QEMU_CAPS_PCI_MULTIBUS = 52, /* bus=pci.0 vs bus=pci */ > > > > > > Exactly there're several PowerPC platforms also use pci.0 as PCI bus name. > > $ grep -r "pci\.0" qemu/hw/ > > qemu/hw/ppc/prep.c: pci_bus = (PCIBus *)qdev_get_child_bus(dev, > "pci.0"); > > qemu/hw/ppc/e500.c: pci_bus = (PCIBus *)qdev_get_child_bus(dev, > "pci.0"); > > qemu/hw/ppc/ppc440_bamboo.c: pcibus = (PCIBus *)qdev_get_child_bus(dev, > "pci.0"); > > > > There's no much platform specific code in libvirt. > > How can we get the exact PCI bus name and make "pci.0" work on the above > PowerPC platforms? > > As I said in my previous comments, if PPC is now using 'pci.0' as the bus > name, this is a change from previous QEMU behaviour. If you just make > libvirt use 'pci.0' for all PPC arches you will be breaking compatibility > with old QEMU versions. You must therefore do proper version detection for > this. > > Regards, > Daniel > -- > |: http://berrange.com -o- > http://www.flickr.com/photos/dberrange/ :| > |: http://libvirt.org -o- http://virt- > manager.org :| > |: http://autobuild.org -o- > http://search.cpan.org/~danberr/ :| > |: http://entangle-photo.org -o- http://live.gnome.org/gtk- > vnc :| > -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list