linux_dsm_epyc7002/drivers/char/tpm
Jason Gunthorpe ced01b9ffc tpm: Fix IRQ unwind ordering in TIS
The devm for the IRQ was placed on the chip, not the pdev. This can
cause the irq to be still callable after the pdev has been cleaned up
(eg priv kfree'd).

Found by CONFIG_DEBUG_SHIRQ=y

Reported-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
Fixes: 233a065e0cd0 ("tpm: Get rid of chip->pdev")
Signed-off-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Tested-by:  Stefan Berger <stefanb@linux.vnet.ibm.com>
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
2016-06-25 17:26:35 +03:00
..
st33zp24 tpm: Remove useless priv field in struct tpm_vendor_specific 2016-06-25 17:26:35 +03:00
Kconfig tpm: Proxy driver for supporting multiple emulated TPMs 2016-06-25 17:26:35 +03:00
Makefile tpm: Proxy driver for supporting multiple emulated TPMs 2016-06-25 17:26:35 +03:00
tpm2-cmd.c tpm: Move tpm_vendor_specific data related with PTP specification to tpm_chip 2016-06-25 17:26:35 +03:00
tpm_acpi.c
tpm_atmel.c tpm: Remove useless priv field in struct tpm_vendor_specific 2016-06-25 17:26:35 +03:00
tpm_atmel.h tpm: Remove useless priv field in struct tpm_vendor_specific 2016-06-25 17:26:35 +03:00
tpm_crb.c tpm: Remove useless priv field in struct tpm_vendor_specific 2016-06-25 17:26:35 +03:00
tpm_eventlog.c tpm: Get rid of devname 2016-06-25 17:26:35 +03:00
tpm_eventlog.h tpm: fix tpm_bios_log_setup stub prototype 2016-06-25 17:26:35 +03:00
tpm_i2c_atmel.c tpm: Remove useless priv field in struct tpm_vendor_specific 2016-06-25 17:26:35 +03:00
tpm_i2c_infineon.c tpm: Move tpm_vendor_specific data related with PTP specification to tpm_chip 2016-06-25 17:26:35 +03:00
tpm_i2c_nuvoton.c tpm: Remove useless priv field in struct tpm_vendor_specific 2016-06-25 17:26:35 +03:00
tpm_ibmvtpm.c tpm: Remove useless priv field in struct tpm_vendor_specific 2016-06-25 17:26:35 +03:00
tpm_ibmvtpm.h tpm_ibmvtpm: properly handle interrupted packet receptions 2015-12-20 15:27:12 +02:00
tpm_infineon.c tpm: Get rid of chip->pdev 2016-06-25 17:26:35 +03:00
tpm_nsc.c tpm: Remove useless priv field in struct tpm_vendor_specific 2016-06-25 17:26:35 +03:00
tpm_of.c TPM: Avoid reference to potentially freed memory 2015-11-09 17:52:55 +02:00
tpm_ppi.c tpm: move the PPI attributes to character device directory. 2015-10-19 01:01:20 +02:00
tpm_tis.c tpm: Fix IRQ unwind ordering in TIS 2016-06-25 17:26:35 +03:00
tpm_vtpm_proxy.c tpm: Proxy driver for supporting multiple emulated TPMs 2016-06-25 17:26:35 +03:00
tpm-chip.c tpm: Introduce TPM_CHIP_FLAG_VIRTUAL 2016-06-25 17:26:35 +03:00
tpm-dev.c tpm: Provide strong locking for device removal 2016-06-25 17:26:35 +03:00
tpm-interface.c tpm: Remove all uses of drvdata from the TPM Core 2016-06-25 17:26:35 +03:00
tpm-sysfs.c tpm: Remove all uses of drvdata from the TPM Core 2016-06-25 17:26:35 +03:00
tpm.h tpm: Introduce TPM_CHIP_FLAG_VIRTUAL 2016-06-25 17:26:35 +03:00
xen-tpmfront.c tpm: Remove useless priv field in struct tpm_vendor_specific 2016-06-25 17:26:35 +03:00