[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 0/5] tpm: Match frontend and backend buffer size
From: |
Marc-André Lureau |
Subject: |
Re: [Qemu-devel] [PATCH 0/5] tpm: Match frontend and backend buffer sizes (not 2.11) |
Date: |
Wed, 8 Nov 2017 17:20:11 +0100 |
User-agent: |
Mutt/1.9.1 (2017-09-22) |
On Mon, Nov 06, 2017 at 07:58:51PM -0500, Stefan Berger wrote:
> This patch series does away with the hard coded buffer size in the TIS
> frontend and instead retrieves the buffer size from the device that's
> being used. So it gets it from the host device or the external emulator.
> In case the frontend (CRB) cannot support the backend's current buffer size
> (typically 4k) it can adjust the buffer size the emulator is working with
> so that we will not run into the problem that the backend produces packets
> that the frontend cannot deliver to due mismatching buffer sizes.
>
The approach looks ok to me. I don't have enough TPM/backend knowledge
to say how relevant that is in the long run. Modifying the CRB device
to set the buffer size to qemu CRB_CTRL_CMD_SIZE works. Windows 10 seems
happy at least.
Just a few remarks, I suppose you'll send a v2 soon,
thanks
> Stefan
>
> Stefan Berger (5):
> tpm: Move getting TPM buffer size to backends
> tpm: pull tpm_util_send() out of tpm_util_test()
> tpm: tpm_passthrough: Read the buffer size from the host device
> tpm: tpm_emulator: get and set buffer size of device
> tpm: tpm_passthrough: Fail startup if FE buffer size < BE buffer size
>
> backends/tpm.c | 13 +++-
> hw/tpm/tpm_emulator.c | 83 +++++++++++++++++++++++-
> hw/tpm/tpm_int.h | 9 +++
> hw/tpm/tpm_ioctl.h | 28 +++++++-
> hw/tpm/tpm_passthrough.c | 30 +++++++++
> hw/tpm/tpm_tis.c | 18 +++---
> hw/tpm/tpm_util.c | 149
> +++++++++++++++++++++++++++++++++++++++++--
> hw/tpm/tpm_util.h | 3 +
> include/sysemu/tpm_backend.h | 17 ++++-
> 9 files changed, 327 insertions(+), 23 deletions(-)
>
> --
> 2.5.5
>
>
- Re: [Qemu-devel] [PATCH 2/5] tpm: pull tpm_util_send() out of tpm_util_test(), (continued)