[PATCH v2 0/8] Introducing TPM Proxy device support for PPC64

Daniel Henrique Barboza danielhb413 at gmail.com
Wed May 13 14:10:31 UTC 2020


Changes in v2:
In this second spin, instead of adding a new Libvirt device,
the pSeries TPM Proxy device is at its core a regular TPM
passthrough device. What makes it different is that it has
its own domain pointer called 'tpmproxy' and it has its own
restriction of 'only one TPM Proxy per domain'. This means
that the combination of TPM Proxy and another TPM model/type
is supported. No changes to the existing non-proxy TPM
support was made. This change of design affected all patches
but patch 02.

Other changes:
- even more unit tests added to make sure we're not messing
with things we shouldn't
- more descriptive commit messages to make it clearer the
intention/use case of the TPM Proxy device and how it interacts with
the existing TPM models.

v1 link: https://www.redhat.com/archives/libvir-list/2020-May/msg00351.html


Daniel Henrique Barboza (8):
  docs: documentation and schema for the new TPM Proxy model
  qemu: Extend QEMU capabilities with 'spapr-tpm-proxy'
  conf, qemu: adding 'tpmproxy' in domain definition
  domain_conf.c: XML parsing for VIR_DOMAIN_TPM_MODEL_SPAPR_PROXY
  tests: add XML schema tests for the TPM Proxy device
  qemu: build command line for the TPM Proxy device
  tests/qemuxml2argvtest.c: add TPM Proxy command line tests
  docs/news.xml: update for the new TPM Proxy device

 docs/formatdomain.html.in                     | 16 ++++-
 docs/news.xml                                 | 15 +++++
 docs/schemas/domaincommon.rng                 |  1 +
 src/conf/domain_audit.c                       |  3 +
 src/conf/domain_conf.c                        | 65 +++++++++++++++++--
 src/conf/domain_conf.h                        |  2 +
 src/qemu/qemu_alias.c                         | 16 +++++
 src/qemu/qemu_capabilities.c                  |  4 ++
 src/qemu/qemu_capabilities.h                  |  3 +
 src/qemu/qemu_cgroup.c                        | 12 +++-
 src/qemu/qemu_command.c                       | 21 ++++++
 src/qemu/qemu_domain.c                        |  9 +--
 src/qemu/qemu_validate.c                      | 12 ++++
 src/security/security_dac.c                   | 14 ++++
 src/security/security_selinux.c               | 11 ++++
 .../qemucapabilitiesdata/caps_4.2.0.ppc64.xml |  1 +
 .../qemucapabilitiesdata/caps_5.0.0.ppc64.xml |  1 +
 tests/qemuxml2argvdata/ppc64-tpm-double.xml   | 34 ++++++++++
 .../ppc64-tpmproxy-double.xml                 | 38 +++++++++++
 .../ppc64-tpmproxy-single.ppc64-latest.args   | 34 ++++++++++
 .../ppc64-tpmproxy-single.xml                 | 33 ++++++++++
 .../ppc64-tpmproxy-with-tpm.ppc64-latest.args | 37 +++++++++++
 .../ppc64-tpmproxy-with-tpm.xml               | 36 ++++++++++
 tests/qemuxml2argvtest.c                      | 15 +++++
 .../ppc64-tpmproxy-single.ppc64-latest.xml    | 42 ++++++++++++
 .../ppc64-tpmproxy-with-tpm.ppc64-latest.xml  | 46 +++++++++++++
 tests/qemuxml2xmltest.c                       |  2 +
 27 files changed, 511 insertions(+), 12 deletions(-)
 create mode 100644 tests/qemuxml2argvdata/ppc64-tpm-double.xml
 create mode 100644 tests/qemuxml2argvdata/ppc64-tpmproxy-double.xml
 create mode 100644 tests/qemuxml2argvdata/ppc64-tpmproxy-single.ppc64-latest.args
 create mode 100644 tests/qemuxml2argvdata/ppc64-tpmproxy-single.xml
 create mode 100644 tests/qemuxml2argvdata/ppc64-tpmproxy-with-tpm.ppc64-latest.args
 create mode 100644 tests/qemuxml2argvdata/ppc64-tpmproxy-with-tpm.xml
 create mode 100644 tests/qemuxml2xmloutdata/ppc64-tpmproxy-single.ppc64-latest.xml
 create mode 100644 tests/qemuxml2xmloutdata/ppc64-tpmproxy-with-tpm.ppc64-latest.xml

-- 
2.26.2




More information about the libvir-list mailing list