2023-05-11 01:27:01

by Jerry Snitselaar

[permalink] [raw]
Subject: [PATCH] tpm/tpm_tis: Disable interrupts for more Lenovo devices

The P360 Tiny suffers from an irq storm issue like the T490s, so add
an entry for it to tpm_tis_dmi_table, and force polling. There also
previously was a report from the previous attempt to enable interrupts
that involved a ThinkPad L490. So an entry is added for it as well.

Reported-by: Peter Zijlstra <[email protected]> # P360 Tiny
Closes: https://lore.kernel.org/linux-integrity/[email protected]/
Cc: [email protected] # 6.2
Cc: Peter Huewe <[email protected]>
Cc: Jarkko Sakkinen <[email protected]>
Cc: Jason Gunthorpe <[email protected]>
Signed-off-by: Jerry Snitselaar <[email protected]>
---
drivers/char/tpm/tpm_tis.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)

diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
index 7af389806643..709b4e13bd6e 100644
--- a/drivers/char/tpm/tpm_tis.c
+++ b/drivers/char/tpm/tpm_tis.c
@@ -122,6 +122,22 @@ static const struct dmi_system_id tpm_tis_dmi_table[] = {
DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad T490s"),
},
},
+ {
+ .callback = tpm_tis_disable_irq,
+ .ident = "ThinkStation P360 Tiny",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkStation P360 Tiny"),
+ },
+ },
+ {
+ .callback = tpm_tis_disable_irq,
+ .ident = "ThinkPad L490",
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"),
+ DMI_MATCH(DMI_PRODUCT_VERSION, "ThinkPad L490"),
+ },
+ },
{}
};

--
2.38.1



2023-05-18 18:53:32

by Jerry Snitselaar

[permalink] [raw]
Subject: Re: [PATCH] tpm/tpm_tis: Disable interrupts for more Lenovo devices

On Wed, May 10, 2023 at 05:54:03PM -0700, Jerry Snitselaar wrote:
> The P360 Tiny suffers from an irq storm issue like the T490s, so add
> an entry for it to tpm_tis_dmi_table, and force polling. There also
> previously was a report from the previous attempt to enable interrupts
> that involved a ThinkPad L490. So an entry is added for it as well.
>
> Reported-by: Peter Zijlstra <[email protected]> # P360 Tiny
> Closes: https://lore.kernel.org/linux-integrity/[email protected]/
> Cc: [email protected] # 6.2

For the stable folks this can be ignored though it won't hurt anything if someone does
backport it. The code enabling interrupts went into 6.4-rc1, not 6.2.

Regards,
Jerry