[libvirt] [Qemu-devel] [PATCH v2 0/2] add pci-bridge support

Doug Goldstein cardoe at gentoo.org
Tue Jan 8 04:44:07 UTC 2013


On Mon, Jan 7, 2013 at 7:58 PM, liguang <lig.fnst at cn.fujitsu.com> wrote:
> Now, it's impossible to arrange devices into multi-pci-bus,
> for example:
>    <sound model='ac97'>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
>    </sound>
>    <video>
>       <model type='cirrus' vram='9216' heads='1'/>
>       <address type='pci' domain='0x0000' bus='0x1' slot='0x02' function='0x0'/>
>    </video>
> libvirt will complain about "bus != 0",
> fortunately, qemu supports pci-to-pci bridge,
> if we want to use multi-pci-bus, we can define
> 2 pci bridge controllers, then attach 1 to the other
> as a subordinate pci-bus, so, 2 pci-buses appear.
> for example:
>    <controller type='pci-bridge' index='0'/>
>    <controller type='pci-bridge' index='1'>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0' bridge='0'/>
>    </controller>
>    <sound model='ac97'>
>       <address type='pci' domain='0x0000' bus='0x01' slot='0x02' function='0x0' bridge='1'/>
>    </sound>
>    <video>
>       <model type='cirrus' vram='9216' heads='1'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' bridge='0'/>
>    </video>
>
>
>  src/conf/device_conf.c |   11 ++++++++++-
>  src/conf/device_conf.h |    1 +
>  src/conf/domain_conf.c |    5 ++++-
>  src/conf/domain_conf.h |    1 +
>  src/qemu/qemu_command.c |   25 ++++++++++++++++++++-----
>  5 files changed, 36 insertions(+), 7 deletions(-)
>

I had a few comments to the specific patches. I think you're missing
one part to the whole series which should probably be 1/3 in the patch
series. Adding a QEMU_CAP for PCI Bridge support and specifically
probing it or adding it where it was supported. Since we're modifying
the QEMU command line arguments this series probably needs to add some
test cases as well.

-- 
Doug Goldstein




More information about the libvir-list mailing list