qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] QEMU: PCI bus name on PowerPC platforms


From: address@hidden
Subject: [Qemu-devel] QEMU: PCI bus name on PowerPC platforms
Date: Wed, 5 Mar 2014 10:42:56 +0000

Hi Gibson,

I noticed your patch http://git.qemu.org/?p=qemu.git;a=commitdiff;h=89dfd6e1
and have some question about PCI bus name on PowerPC.

When I use libvirt to start VM on PowerPC platforms, it failed as below: 
# virsh start sdk
error: Failed to start domain sdk
error: internal error: early end of file from monitor: possible problem:
qemu-system-ppc: -device piix3-usb-uhci,id=usb,bus=pci,addr=0x1: Bus 'pci' not 
found

Exactly it should be 'pci.0' according to the default qdev core logic.

But currently in libvirt it only recognize PCI bus name as 'pci.0' on 
x86_64/i686 Arch.
-------------------------------------------------------------------
libvirt/src/qemu/qemu_capabilities.c
    /* 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 */
-------------------------------------------------------------------

Looking at 'info qtree' output it seems "pseries" is the only PPC machine type 
using "pci" (out of those we managed to run):

$ ./ppc64-softmmu/qemu-system-ppc64 -M ?
Supported machines are:
virtex-ml507         Xilinx Virtex ML507 reference design
pseries              pSeries Logical Partition (PAPR compliant) (default)
prep                 PowerPC PREP platform
bamboo               bamboo
ref405ep             ref405ep
taihu                taihu
mpc8544ds            mpc8544ds
g3beige              Heathrow based PowerMAC
mac99                Mac99 based PowerMAC
ppce500              generic paravirt e500 platform
none                 empty machine

1) virtex-ml507
2) pseries
Warning: Disabling some instructions which are not emulated by TCG (0x0, 0x4)
    bus: pci
3) prep
    bus: pci.0
4) bamboo
    bus: pci.0
5) ref405ep
qemu-system-ppc64: Could not load PowerPC BIOS 'ppc405_rom.bin'
6) taihu
qemu-system-ppc64: Could not load PowerPC BIOS 'ppc405_rom.bin'
7) mpc8544ds
    bus: pci.0
8) g3beige
    bus: pci.0
9) mac99
    bus: pci.0
10) ppce500
    bus: pci.0


Could pseries also use 'pci.0' as PCI bus name? 
If yes, could we set QEMU_CAPS_PCI_MULTIBUS in libvirt for all the 
PowerPC platforms? Otherwise, we need detect the machine to fix this issue.

The discussion in libvirt mailing list is here:
https://www.redhat.com/archives/libvir-list/2014-March/msg00228.html

I think we need reach an agreement in QEMU and then work on libvirt.

Best Regards,
Olivia



reply via email to

[Prev in Thread] Current Thread [Next in Thread]