On Mon, Jan 7, 2013 at 7:58 PM, liguang <lig.fnst@xxxxxxxxxxxxxx> 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 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list