Re: [PATCH v2] KEYS: trusted: allow module init if TPM is inactive or deactivated

From: Roberto Sassu
Date: Fri Aug 02 2019 - 12:11:13 EST


On 8/2/2019 5:34 PM, Roberto Sassu wrote:
On 8/2/2019 5:30 PM, Tyler Hicks wrote:
On 2019-08-02 17:07:33, Roberto Sassu wrote:
Commit c78719203fc6 ("KEYS: trusted: allow trusted.ko to initialize w/o a
TPM") allows the trusted module to be loaded even a TPM is not found to
ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ ^ if

avoid module dependency problems.

However, trusted module initialization can still fail if the TPM is
inactive or deactivated. This patch ignores tpm_get_random() errors in
init_digests() and returns -EFAULT in pcrlock() if the TPM didn't return
random data.

Signed-off-by: Roberto Sassu <roberto.sassu@xxxxxxxxxx>

The code changes look correct to me.

ÂÂ Reviewed-by: Tyler Hicks <tyhicks@xxxxxxxxxxxxx>

For whoever takes this patch through their tree, I think that adding the
following Fixes tag would be useful (as well as cc'ing stable):

ÂÂ Fixes: 240730437deb ("KEYS: trusted: explicitly use tpm_chip structure...")

I think it is also worth leaving a short note, in the commit message,
for backporters that commit 782779b60faa ("tpm: Actually fail on TPM
errors during "get random"") should be included with any backports of
this patch.

Right, thanks. I wait for Jarkko's comments and I add both the Fixes tag
and the short note in the next version of the patch.

Uhm, I was thinking that maybe it is not necessary to mention commit
782779b60faa. This patch would still return 0 even if that commit is not
backported (TPM_ERR_DISABLED < TPM_MAX_DIGEST_SIZE).

Roberto

--
HUAWEI TECHNOLOGIES Duesseldorf GmbH, HRB 56063
Managing Director: Li Peng, Li Jian, Shi Yanli