On Mon, 2024-06-17 at 15:34 -0400, Stefan Berger wrote: > Fix the following type of error message caused by a missing call to > tpm2_sessions_init() in the IBM vTPM driver: > > [ 2.987131] tpm tpm0: tpm2_load_context: failed with a TPM error > 0x01C4 > [ 2.987140] ima: Error Communicating to TPM chip, result: -14 > > Fixes: d2add27cf2b8 ("tpm: Add NULL primary creation") > Signed-off-by: Stefan Berger <stefanb@xxxxxxxxxxxxx> > --- > drivers/char/tpm/tpm_ibmvtpm.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/char/tpm/tpm_ibmvtpm.c > b/drivers/char/tpm/tpm_ibmvtpm.c > index d3989b257f42..1e5b107d1f3b 100644 > --- a/drivers/char/tpm/tpm_ibmvtpm.c > +++ b/drivers/char/tpm/tpm_ibmvtpm.c > @@ -698,6 +698,10 @@ static int tpm_ibmvtpm_probe(struct vio_dev > *vio_dev, > rc = tpm2_get_cc_attrs_tbl(chip); > if (rc) > goto init_irq_cleanup; > + > + rc = tpm2_sessions_init(chip); > + if (rc) > + goto init_irq_cleanup; This looks wrong: the whole thing is designed to occur in the bootstrap phase from tpm_chip_register() (which tpm_ibmvtpm.c definitely calls), so why isn't it happening? James