Re: [PATCH] tpm: fixes uninitialized allocated banks for IBM vtpm driver
flat view
From: Jarkko Sakkinen <hidden>
Date: 2019-07-05 10:42:26
Also in:
linux-integrity, lkml
On Wed, 2019-07-03 at 23:32 -0400, Nayna Jain wrote:
The nr_allocated_banks and allocated banks are initialized as part of
tpm_chip_register. Currently, this is done as part of auto startup
function. However, some drivers, like the ibm vtpm driver, do not run
auto startup during initialization. This results in uninitialized memory
issue and causes a kernel panic during boot.
This patch moves the pcr allocation outside the auto startup function
into tpm_chip_register. This ensures that allocated banks are initialized
in any case.
Fixes: 879b589210a9 ("tpm: retrieve digest size of unknown algorithms with
PCR read")
Signed-off-by: Nayna Jain <nayna@linux.ibm.com>Please add Reported-by: Michal Suchanek <redacted> It is missing. Michal is there a chance you could try this out once Nayna send a new version?
quoted hunk ↗ jump to hunk
--- drivers/char/tpm/tpm-chip.c | 37 +++++++++++++++++++++++++++++++++++++ drivers/char/tpm/tpm.h | 1 + drivers/char/tpm/tpm1-cmd.c | 12 ------------ drivers/char/tpm/tpm2-cmd.c | 6 +----- 4 files changed, 39 insertions(+), 17 deletions(-)diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c index 8804c9e916fd..958508bb8379 100644 --- a/drivers/char/tpm/tpm-chip.c +++ b/drivers/char/tpm/tpm-chip.c@@ -550,6 +550,39 @@ static int tpm_add_hwrng(struct tpm_chip *chip) return hwrng_register(&chip->hwrng); } +/* + * tpm_pcr_allocation() - initializes the chip allocated banks for PCRs + */ +static int tpm_pcr_allocation(struct tpm_chip *chip)
Why that name and not tpm_get_pcr_allocation()? Do not get why "get_" has been dropped. Please add it back. Would be senseful to create tpm1_get_pcr_allocation() to tpm1-cmd.c now that a new function needs to be introduced anyway. Please do it for that for TPM 1.x part. /Jarkko