Re: [PATCH v8 0/4] tpm: Preserve TPM measurement log across kexec (ppc64)

From: Stefan Berger
Date: Fri Nov 11 2022 - 07:12:31 EST




On 11/10/22 21:21, Coiby Xu wrote:
Hi Michael,

Could the PowerPC tree take this patch set which resolves a
PowerVM/KVM-specific issue?

Michael has (shown me) an alternative approach that protects the already allocated memory to carry it across the kexec. This seems like a good and potentially better alternative, also from the perspective of the changes need, which is a lot less , and it's already used for other stuff as well.

Stefan


On Thu, Sep 01, 2022 at 05:46:06PM -0400, Stefan Berger wrote:
The of-tree subsystem does not currently preserve the IBM vTPM 1.2 and
vTPM 2.0 measurement logs across a kexec on PowerVM and PowerKVM. This
series fixes this for the kexec_file_load() syscall using the flattened
device tree (fdt) to carry the TPM measurement log's buffer across kexec.

  Stefan

v8:
- Added Jarkko's, Coiby's, and Rob's tags
- Rebase on v6.0-rc3 that absorbed 2 already upstreamed patches

v7:
- Added Nageswara's Tested-by tags
- Added back original comment to inline function and removed Jarkko's R-b tag

v6:
- Add __init to get_kexec_buffer as suggested by Jonathan
- Fixed issue detected by kernel test robot

v5:
- Rebased on 1 more patch that would otherwise create merge conflicts

v4:
- Rebased on 2 patches that would otherwise create merge conflicts;
  posting these patches in this series with several tags removed so
  krobot can test the series already
- Changes to individual patches documented in patch descripitons

v3:
- Moved TPM Open Firmware related function to drivers/char/tpm/eventlog/tpm_of.c

v2:
- rearranged patches
- fixed compilation issues for x86

Palmer Dabbelt (1):
 drivers: of: kexec ima: Support 32-bit platforms

Stefan Berger (3):
 tpm: of: Make of-tree specific function commonly available
 of: kexec: Refactor IMA buffer related functions to make them reusable
 tpm/kexec: Duplicate TPM measurement log in of-tree for kexec

drivers/char/tpm/eventlog/of.c |  31 +--
drivers/of/kexec.c             | 336 ++++++++++++++++++++++++++++-----
include/linux/kexec.h          |   6 +
include/linux/of.h             |   9 +-
include/linux/tpm.h            |  36 ++++
kernel/kexec_file.c            |   6 +
6 files changed, 346 insertions(+), 78 deletions(-)


base-commit: b90cb1053190353cc30f0fef0ef1f378ccc063c5
--
2.35.1