Re: TPM selftest failure in 4.15

Ken Goldman
2018-02-08T18:45:23Z

On 2/1/2018 7:16 AM, James Bottomley wrote:
>
> The error is TPM_RC_TESTING, which means it looks like we don't wait
> long enough for the selftests to complete. I get this all the time
> booting with 4.15. Fortunately I have a 4.13 backup kernel which is
> fine (otherwise I'd be a bit hosed since all my keys now require a
> TPM).

The current TCG PC Client Device Driver WG wisdom, if you don't want to
poll the status bit, is to issue the TPM2_SelfTest with fullTest = yes.
'yes' forces the command to block (not return a response) until the
command completes.

The TPM vendors suspect that a loop that re-issues the command in
response to TPM_RC_TESTING can make matters worse. If a crypto
algorithm self test keeps getting aborted for the TPM to process the
command, it has to restart.

My feeling is that, if you going to sleep/loop on something, it's better
to loop on dataAvail than resending and looping on TPM_RC_TESTING.