diff options
author | Axel Lin <axel.lin@gmail.com> | 2011-08-04 07:58:07 +0800 |
---|---|---|
committer | James Morris <jmorris@namei.org> | 2011-09-23 09:46:17 +1000 |
commit | de69113ec1896443c732e8b812e8005fb44eeeeb (patch) | |
tree | 9885a62b06d34dd407deb1c6c597a4f8ed73153a /drivers/char | |
parent | 5ce5ed35939ece8a9c7e0f10c7f3d5bc000c6b64 (diff) | |
download | linux-3.10-de69113ec1896443c732e8b812e8005fb44eeeeb.tar.gz linux-3.10-de69113ec1896443c732e8b812e8005fb44eeeeb.tar.bz2 linux-3.10-de69113ec1896443c732e8b812e8005fb44eeeeb.zip |
TPM: tpm_nsc: Fix a double free of pdev in cleanup_nsc
platform_device_unregister() will release all resources
and remove it from the subsystem, then drop reference count by
calling platform_device_put().
We should not call kfree(pdev) after platform_device_unregister(pdev).
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Rajiv Andrade <srajiv@linux.vnet.ibm.com>
Signed-off-by: James Morris <jmorris@namei.org>
Diffstat (limited to 'drivers/char')
-rw-r--r-- | drivers/char/tpm/tpm_nsc.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/char/tpm/tpm_nsc.c b/drivers/char/tpm/tpm_nsc.c index 82facc9104c..4d2464871ad 100644 --- a/drivers/char/tpm/tpm_nsc.c +++ b/drivers/char/tpm/tpm_nsc.c @@ -396,8 +396,6 @@ static void __exit cleanup_nsc(void) if (pdev) { tpm_nsc_remove(&pdev->dev); platform_device_unregister(pdev); - kfree(pdev); - pdev = NULL; } platform_driver_unregister(&nsc_drv); |