[libvirt] [RFC PATCH 00/12] Support multiple PHBs on pSeries guests

Andrea Bolognani abologna at redhat.com
Tue Feb 28 16:12:32 UTC 2017


Note: if you want to try this out, you'll need to make sure
      your QEMU binary includes this commit[1]; moreover,
      that commit is missing a way for libvirt to detect
      whether the new naming scheme is in place, so this
      will have to remain an RFC until the QEMU side has
      been sorted out.

Patches 1-3 are just setting up the stage.

Patch 4 starts actually introducing the feature, by
relaxing some checks that can no longer be as strict.

Patches 5-10 puts all the boring bits (XML parsing and
formatting, QEMU capabilities) in place.

Patch 11 enables the feature at last.

Patch 12 introduces a single test, a bunch more will be
added before posting this for real (not as RFC).


[1] https://github.com/dgibson/qemu/commit/0a6a9ba2adc48a9a5ea7406d1a5fb3c36f0073e0

Andrea Bolognani (12):
  qemu: Allow qemuBuildControllerDevStr() to return NULL
  qemu: Tweak index number checking
  conf: Move index number checking to drivers
  qemu: Relax pci-root index requirement for pSeries guests
  schema: Allow <target index='...'/>
  schema: Add 'spapr-pci-host-bridge' controller model
  conf: Parse and format <target index='...'/>
  conf: Add 'spapr-pci-host-bridge' controller model
  qemu: Automatically pick index and model for pci-root controllers
  qemu: Introduce QEMU_CAPS_DEVICE_SPAPR_PCI_HOST_BRIDGE
  qemu: Use multiple PHBs for pSeries guests
  tests: Add tests for pSeries guests with multiple PHBs

 docs/schemas/domaincommon.rng                      |   7 ++
 src/bhyve/bhyve_domain.c                           |  15 +++
 src/conf/domain_conf.c                             |  34 ++++--
 src/conf/domain_conf.h                             |   2 +
 src/libxl/libxl_domain.c                           |  14 +++
 src/lxc/lxc_domain.c                               |  14 +++
 src/openvz/openvz_driver.c                         |  14 +++
 src/qemu/qemu_capabilities.c                       |   2 +
 src/qemu/qemu_capabilities.h                       |   1 +
 src/qemu/qemu_command.c                            | 126 +++++++++++++++++----
 src/qemu/qemu_command.h                            |   9 +-
 src/qemu/qemu_domain.c                             |  13 +++
 src/qemu/qemu_domain_address.c                     |  47 +++++++-
 src/qemu/qemu_hotplug.c                            |   5 +-
 src/uml/uml_driver.c                               |  14 +++
 src/vz/vz_driver.c                                 |  14 +++
 src/xen/xen_driver.c                               |  14 +++
 .../qemuargv2xmldata/qemuargv2xml-pseries-disk.xml |   5 +-
 .../qemuargv2xml-pseries-nvram.xml                 |   5 +-
 tests/qemucapabilitiesdata/caps_2.6.0.ppc64le.xml  |   1 +
 .../qemuxml2argv-pseries-phb-simple.args           |  26 +++++
 .../qemuxml2argv-pseries-phb-simple.xml            |  20 ++++
 tests/qemuxml2argvtest.c                           |   5 +
 .../qemuxml2xmlout-panic-pseries.xml               |   5 +-
 .../qemuxml2xmlout-ppc64-usb-controller-legacy.xml |   5 +-
 .../qemuxml2xmlout-ppc64-usb-controller.xml        |   5 +-
 .../qemuxml2xmlout-pseries-nvram.xml               |   5 +-
 .../qemuxml2xmlout-pseries-panic-missing.xml       |   5 +-
 .../qemuxml2xmlout-pseries-panic-no-address.xml    |   5 +-
 ...g.xml => qemuxml2xmlout-pseries-phb-simple.xml} |  13 ++-
 tests/qemuxml2xmltest.c                            |   4 +
 31 files changed, 407 insertions(+), 47 deletions(-)
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.args
 create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-pseries-phb-simple.xml
 copy tests/qemuxml2xmloutdata/{qemuxml2xmlout-pseries-panic-missing.xml => qemuxml2xmlout-pseries-phb-simple.xml} (69%)

-- 
2.7.4




More information about the libvir-list mailing list