On Mon, Jun 08, 2015 at 07:17:33AM -0400, Stefan Berger wrote:
> The following series of patches extends TPM support with an
> external TPM that offers a Linux CUSE (character device in userspace)
> interface. This TPM lets each VM access its own private vTPM.
> The CUSE TPM supports suspend/resume and migration. Much
> out-of-band functionality necessary to control the CUSE TPM is
> implemented using ioctls.

I was hoping this can get a wider discussion, but apparently no one
noticed this.

This needs some thought: how do we decide which ioctls we support?
It's easier with kernel since we know distros ship it, but
will they do so with this tpm? We do want to reuse system components
but we don't want random parts of QEMU delegated to a random
out of tree module.

Couldn't you re-use in-kernel interfaces for the CUSE module?
Then existing pass-through in QEMU would more or less just work with it -
merely open a different chardev.


> Stefan Berger (4):
>   Provide support for the CUSE TPM
>   Introduce condition to notify waiters of completed command
>   Introduce condition in TPM backend for notification
>   Add support for VM suspend/resume for TPM TIS
> 
>  hmp.c                        |   6 +
>  hw/tpm/tpm_int.h             |   4 +
>  hw/tpm/tpm_ioctl.h           | 209 ++++++++++++++++++++++
>  hw/tpm/tpm_passthrough.c     | 409 
> +++++++++++++++++++++++++++++++++++++++++--
>  hw/tpm/tpm_tis.c             | 151 +++++++++++++++-
>  hw/tpm/tpm_tis.h             |   2 +
>  hw/tpm/tpm_util.c            | 223 +++++++++++++++++++++++
>  hw/tpm/tpm_util.h            |   7 +
>  include/sysemu/tpm_backend.h |  12 ++
>  qapi-schema.json             |  18 +-
>  qemu-options.hx              |  21 ++-
>  qmp-commands.hx              |   2 +-
>  tpm.c                        |  11 +-
>  13 files changed, 1056 insertions(+), 19 deletions(-)
>  create mode 100644 hw/tpm/tpm_ioctl.h
> 
> -- 
> 1.9.3

Reply via email to