Re: [PATCH 0/2] tpm: Stop retrying TPMs that have stopped working

From: Jarkko Sakkinen

Date: Wed Nov 11 2026 - 17:38:07 EST


On Wed, Nov 11, 2026 at 01:57:32AM -0800, Breno Leitao wrote:
> On Meta's datacenter, given the size, TPMs that stop working write about
> 54 million lines a day to the kernel log, because nothing in the kernel
> gives up on them.
>
> Two cases make up nearly all of it.
>
> Some TPMs stop responding. Every command then fails only after the
> transport timeout, while the hwrng thread and userspace keep sending
> more.
>
> The goal is to retire TPM that are not properly working, similarly to
> what was done for EFI in commit 4b2c033b5bc971 ("efi/runtime-wrappers:
> retire the worker if a wedged call ever returns")
>
> This feature aim to disable the chip once its commands have kept timing,
> instead of keeping it in this desolate state.
>
> Disabling the chip makes the failure explicit: the log gets one line
> saying the TPM is disabled, and every later command fails at once
> instead of timing out.
>
> A health-check daemon, such as machine checker, can then detect
> the broken hardware and send the machine to repair.
>
> Signed-off-by: Breno Leitao <leitao@xxxxxxxxxx>
> ---
> Breno Leitao (2):
> tpm: Disable a TPM that stops responding
> tpm: Disable a TPM whose hwrng reads keep failing
>
> drivers/char/tpm/tpm-chip.c | 20 +++++++++++++++++++-
> drivers/char/tpm/tpm-interface.c | 29 +++++++++++++++++++++++++++++
> include/linux/tpm.h | 3 +++
> 3 files changed, 51 insertions(+), 1 deletion(-)
> ---
> base-commit: 630059a5a632377b9b7b487baccde92b7ae1dd47
> change-id: 20261110-tpm_unresponsive-a5f71c1db026
>
> Best regards,
> --
> Breno Leitao <leitao@xxxxxxxxxx>
>

I think this good stuff so existential condition for having some changes
to address these issues is fulfilled.

I.e. debating the details through will likely lead to productive results
:-)

Br, Jarkko