tpm: check the chip reference before using it
If a driver calls tpm_dev_vendor_release for a device already released then the driver will oops. Signed-off-by: Andi Shyti <andi.shyti@gmail.com> Signed-off-by: Peter Huewe <peterhuewe@gmx.de> Signed-off-by: Rajiv Andrade <srajiv@linux.vnet.ibm.com>
This commit is contained in:
Родитель
dad79cb892
Коммит
3072928ff2
|
@ -1330,6 +1330,9 @@ EXPORT_SYMBOL_GPL(tpm_pm_resume);
|
|||
|
||||
void tpm_dev_vendor_release(struct tpm_chip *chip)
|
||||
{
|
||||
if (!chip)
|
||||
return;
|
||||
|
||||
if (chip->vendor.release)
|
||||
chip->vendor.release(chip->dev);
|
||||
|
||||
|
@ -1347,6 +1350,9 @@ void tpm_dev_release(struct device *dev)
|
|||
{
|
||||
struct tpm_chip *chip = dev_get_drvdata(dev);
|
||||
|
||||
if (!chip)
|
||||
return;
|
||||
|
||||
tpm_dev_vendor_release(chip);
|
||||
|
||||
chip->release(dev);
|
||||
|
|
Загрузка…
Ссылка в новой задаче