Re: [PATCH 1/1] tpm: disable hwrng for fTPM on some AMD designs

From: Jarkko Sakkinen
Date: Tue Feb 21 2023 - 17:53:36 EST


On Fri, Feb 17, 2023 at 08:25:56PM -0600, Limonciello, Mario wrote:
> On 2/17/2023 16:05, Jarkko Sakkinen wrote:
>
> > Perhaps tpm_amd_* ?
>
> When Jason first proposed this patch I feel the intent was it could cover
> multiple deficiencies.
> But as this is the only one for now, sure re-naming it is fine.
>
> >
> > Also, just a question: is there any legit use for fTPM's, which are not
> > updated? I.e. why would want tpm_crb to initialize with a dysfunctional
> > firmware?>
> > I.e. the existential question is: is it better to workaround the issue and
> > let pass through, or make the user aware that the firmware would really
> > need an update.
> >
>
> On 2/17/2023 16:35, Jarkko Sakkinen wrote:
> > >
> > > Hmm, no reply since Mario posted this.
> > >
> > > Jarkko, James, what's your stance on this? Does the patch look fine from
> > > your point of view? And does the situation justify merging this on the
> > > last minute for 6.2? Or should we merge it early for 6.3 and then
> > > backport to stable?
> > >
> > > Ciao, Thorsten
> >
> > As I stated in earlier response: do we want to forbid tpm_crb in this case
> > or do we want to pass-through with a faulty firmware?
> >
> > Not weighting either choice here I just don't see any motivating points
> > in the commit message to pick either, that's all.
> >
> > BR, Jarkko
>
> Even if you're not using RNG functionality you can still do plenty of other
> things with the TPM. The RNG functionality is what tripped up this issue
> though. All of these issues were only raised because the kernel started
> using it by default for RNG and userspace wants random numbers all the time.
>
> If the firmware was easily updatable from all the OEMs I would lean on
> trying to encourage people to update. But alas this has been available for
> over a year and a sizable number of OEMs haven't distributed a fix.
>
> The major issue I see with forbidding tpm_crb is that users may have been
> using the fTPM for something and taking it away in an update could lead to a
> no-boot scenario if they're (for example) tying a policy to PCR values and
> can no longer access those.
>
> If the consensus were to go that direction instead I would want to see a
> module parameter that lets users turn on the fTPM even knowing this problem
> exists so they could recover. That all seems pretty expensive to me for
> this problem.

I agree with the last argument.

I re-read the commit message and https://www.amd.com/en/support/kb/faq/pa-410.

Why this scopes down to only rng? Should TPM2_CC_GET_RANDOM also blocked
from /dev/tpm0?

BR, Jarkko