summaryrefslogtreecommitdiffstats
path: root/drivers/char
diff options
context:
space:
mode:
authorVasily Averin <vvs@virtuozzo.com>2020-06-13 17:18:33 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-07-22 09:32:01 +0200
commit01729f8db1b7b0450ba1e987c080dc1cf6f1cbcd (patch)
tree4c13d0ad18d9f4f5a12bd41f292d40758b42fc12 /drivers/char
parentd6d9145866fbfac91c9c1dd8e32b355bdd63d000 (diff)
downloadlinux-stable-01729f8db1b7b0450ba1e987c080dc1cf6f1cbcd.tar.gz
linux-stable-01729f8db1b7b0450ba1e987c080dc1cf6f1cbcd.tar.bz2
linux-stable-01729f8db1b7b0450ba1e987c080dc1cf6f1cbcd.zip
tpm_tis: extra chip->ops check on error path in tpm_tis_core_init
[ Upstream commit ccf6fb858e17a8f8a914a1c6444d277cfedfeae6 ] Found by smatch: drivers/char/tpm/tpm_tis_core.c:1088 tpm_tis_core_init() warn: variable dereferenced before check 'chip->ops' (see line 979) 'chip->ops' is assigned in the beginning of function in tpmm_chip_alloc->tpm_chip_alloc and is used before first possible goto to error path. Signed-off-by: Vasily Averin <vvs@virtuozzo.com> Reviewed-by: Jerry Snitselaar <jsnitsel@redhat.com> Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/char')
-rw-r--r--drivers/char/tpm/tpm_tis_core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/char/tpm/tpm_tis_core.c b/drivers/char/tpm/tpm_tis_core.c
index 5d8f8f018984..280d60cba1f8 100644
--- a/drivers/char/tpm/tpm_tis_core.c
+++ b/drivers/char/tpm/tpm_tis_core.c
@@ -1007,7 +1007,7 @@ int tpm_tis_core_init(struct device *dev, struct tpm_tis_data *priv, int irq,
return 0;
out_err:
- if ((chip->ops != NULL) && (chip->ops->clk_enable != NULL))
+ if (chip->ops->clk_enable != NULL)
chip->ops->clk_enable(chip, false);
tpm_tis_remove(chip);