[PATCH v3 00/29] ppc64 PowerNV machines support

Daniel Henrique Barboza danielhb413 at gmail.com
Wed Feb 23 13:19:23 UTC 2022


Hi,

This new version contains changes proposed by Jano. The most notable
change is on patch 9, where pnv_pnv3/pnv_phb4 capabilities are now being
probed and, if the QEMU version isn't high enough, they are cleared from
qemuCaps.

For convenience, the patches that are pending review/acks are patches 14,
17, 19, 20, 22, 23 and 24. 


v2 link: https://listman.redhat.com/archives/libvir-list/2022-January/msg01149.html

Daniel Henrique Barboza (29):
  qemu_domain.c: add PowerNV machine helpers
  qemu_capabilities.c: use 'MachineIsPowerPC' in DeviceDiskCaps
  qemu_domain: turn qemuDomainMachineIsPSeries() static
  qemu_validate.c: use qemuDomainIsPowerPC() in
    qemuValidateDomainChrDef()
  qemu_domain.c: define ISA as default PowerNV serial
  qemu_validate.c: enhance 'machine type not supported' message
  qemu_domain.c: disable default devices for PowerNV machines
  tests: add basic PowerNV8 test
  qemu: introduce QEMU_CAPS_DEVICE_PNV_PHB3
  conf, qemu: add 'pnv-phb3-root-port' PCI controller model name
  conf, qemu: add 'pnv-phb3' PCI controller model name
  domain_conf.c: fix identation in virDomainControllerDefParseXML()
  conf: parse and format <target chip-id='...'/>
  formatdomain.rst: add 'index' semantics for PowerNV domains
  conf: introduce virDomainControllerIsPowerNVPHB
  conf, qemu: add default 'chip-id' value for pnv-phb3 controllers
  conf, qemu: add default 'targetIndex' value for pnv-phb3 devs
  qemu_command.c: add command line for the pnv-phb3 device
  qemu_domain_address.c: change pnv-phb3 minimal downstream slot
  domain_conf: always format pnv-phb3-root-port address
  tests: add pnv-phb3-root-port test
  domain_validate.c: allow targetIndex 0 out of idx 0 for PowerNV PHBs
  domain_conf.c: reject duplicated pnv-phb3 devices
  qemu: introduce QEMU_CAPS_DEVICE_PNV_PHB4
  conf, qemu: add 'pnv-phb4-root-port' PCI controller model name
  domain_conf.c: add phb4-root-port to IsPowerNVRootPort()
  conf, qemu: add 'pnv-phb4' controller model name
  domain_conf.c: add pnv-phb4 to ControllerIsPowerNVPHB()
  tests: add PowerNV9 tests

 docs/formatdomain.rst                         |  12 +-
 docs/schemas/domaincommon.rng                 |  10 ++
 src/conf/domain_conf.c                        | 156 ++++++++++++++----
 src/conf/domain_conf.h                        |   8 +
 src/conf/domain_validate.c                    |   5 +-
 src/libvirt_private.syms                      |   1 +
 src/qemu/qemu_capabilities.c                  |  19 ++-
 src/qemu/qemu_capabilities.h                  |   4 +
 src/qemu/qemu_command.c                       |  21 ++-
 src/qemu/qemu_domain.c                        |  51 +++++-
 src/qemu/qemu_domain.h                        |   4 +-
 src/qemu/qemu_domain_address.c                |  64 ++++++-
 src/qemu/qemu_validate.c                      |  62 ++++++-
 .../qemucapabilitiesdata/caps_5.0.0.ppc64.xml |   2 +
 .../qemucapabilitiesdata/caps_5.2.0.ppc64.xml |   2 +
 .../qemucapabilitiesdata/caps_6.2.0.ppc64.xml |   2 +
 .../qemucapabilitiesdata/caps_7.0.0.ppc64.xml |   2 +
 .../powernv8-basic.ppc64-latest.args          |  34 ++++
 tests/qemuxml2argvdata/powernv8-basic.xml     |  16 ++
 tests/qemuxml2argvdata/powernv8-dupPHBs.err   |   1 +
 .../powernv8-dupPHBs.ppc64-latest.err         |   1 +
 tests/qemuxml2argvdata/powernv8-dupPHBs.xml   |  27 +++
 .../powernv8-root-port.ppc64-latest.args      |  35 ++++
 tests/qemuxml2argvdata/powernv8-root-port.xml |  17 ++
 .../powernv8-two-sockets.ppc64-latest.args    |  35 ++++
 .../qemuxml2argvdata/powernv8-two-sockets.xml |  26 +++
 .../powernv9-dupPHBs.ppc64-latest.err         |   1 +
 tests/qemuxml2argvdata/powernv9-dupPHBs.xml   |  27 +++
 .../powernv9-root-port.ppc64-latest.args      |  35 ++++
 tests/qemuxml2argvdata/powernv9-root-port.xml |  17 ++
 tests/qemuxml2argvtest.c                      |   7 +
 .../powernv8-basic.ppc64-latest.xml           |  34 ++++
 .../powernv8-root-port.ppc64-latest.xml       |  39 +++++
 .../powernv8-two-sockets.ppc64-latest.xml     |  39 +++++
 .../powernv9-root-port.ppc64-latest.xml       |  39 +++++
 .../qemuxml2xmloutdata/powernv9-root-port.xml |  36 ++++
 tests/qemuxml2xmltest.c                       |   5 +
 37 files changed, 848 insertions(+), 48 deletions(-)
 create mode 100644 tests/qemuxml2argvdata/powernv8-basic.ppc64-latest.args
 create mode 100644 tests/qemuxml2argvdata/powernv8-basic.xml
 create mode 100644 tests/qemuxml2argvdata/powernv8-dupPHBs.err
 create mode 100644 tests/qemuxml2argvdata/powernv8-dupPHBs.ppc64-latest.err
 create mode 100644 tests/qemuxml2argvdata/powernv8-dupPHBs.xml
 create mode 100644 tests/qemuxml2argvdata/powernv8-root-port.ppc64-latest.args
 create mode 100644 tests/qemuxml2argvdata/powernv8-root-port.xml
 create mode 100644 tests/qemuxml2argvdata/powernv8-two-sockets.ppc64-latest.args
 create mode 100644 tests/qemuxml2argvdata/powernv8-two-sockets.xml
 create mode 100644 tests/qemuxml2argvdata/powernv9-dupPHBs.ppc64-latest.err
 create mode 100644 tests/qemuxml2argvdata/powernv9-dupPHBs.xml
 create mode 100644 tests/qemuxml2argvdata/powernv9-root-port.ppc64-latest.args
 create mode 100644 tests/qemuxml2argvdata/powernv9-root-port.xml
 create mode 100644 tests/qemuxml2xmloutdata/powernv8-basic.ppc64-latest.xml
 create mode 100644 tests/qemuxml2xmloutdata/powernv8-root-port.ppc64-latest.xml
 create mode 100644 tests/qemuxml2xmloutdata/powernv8-two-sockets.ppc64-latest.xml
 create mode 100644 tests/qemuxml2xmloutdata/powernv9-root-port.ppc64-latest.xml
 create mode 100644 tests/qemuxml2xmloutdata/powernv9-root-port.xml

-- 
2.35.1




More information about the libvir-list mailing list