]> git.ipfire.org Git - thirdparty/libvirt.git/commit
conf: new pci controller model pci-expander-bus
authorLaine Stump <laine@laine.org>
Fri, 4 Mar 2016 15:26:23 +0000 (10:26 -0500)
committerLaine Stump <laine@laine.org>
Thu, 14 Apr 2016 18:00:34 +0000 (14:00 -0400)
commit52f3d0a4d2de2f3a633bd49b4ebc46a31329a04c
treec910159d980563dc4ca77b69704051d70f126bf3
parent5d4e2b1721d98c6f9fc24b2be760267b96d97092
conf: new pci controller model pci-expander-bus

This is a standard PCI root bus (not a bridge) that can be added to a
440fx-based domain. Although it uses a PCI slot, this is *not* how it
is connected into the PCI bus hierarchy, but is only used for
control. Each pci-expander-bus provides 32 slots (0-31) that can
accept hotplug of standard PCI devices.

The usefulness of pci-expander-bus relative to a pci-bridge is that
the NUMA node of the bus can be specified with the <node> subelement
of <target>. This gives guest-side visibility to the NUMA node of
attached devices (presuming that management apps only assign a device
to a bus that has a NUMA node number matching the node number of the
device on the host).

Each pci-expander-bus also has a "busNr" attribute. The expander-bus
itself will take the busNr specified, and all buses that are connected
to this bus (including the pci-bridge that is automatically added to
any expander bus of model "pxb" (see the next commit)) will use
busNr+1, busNr+2, etc, and the pci-root (or the expander-bus with next
lower busNr) will use bus numbers lower than busNr.
docs/formatdomain.html.in
docs/schemas/domaincommon.rng
src/conf/domain_addr.c
src/conf/domain_conf.c
src/conf/domain_conf.h
src/qemu/qemu_domain_address.c
tests/qemuxml2argvdata/qemuxml2argv-pci-expander-bus.xml [new file with mode: 0644]
tests/qemuxml2xmloutdata/qemuxml2xmlout-pci-expander-bus.xml [new file with mode: 0644]
tests/qemuxml2xmltest.c