diff options
author | Wei Yongjun <yongjun_wei@trendmicro.com.cn> | 2012-10-25 10:55:04 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2012-11-09 04:32:27 -0500 |
commit | d48e366e6efe46e0a6744980c18582fb0919a727 (patch) | |
tree | 5875f5ebd96d8d6b243805f5b1bb0f0cc839a0c4 /drivers/crypto/tegra-aes.c | |
parent | 3200da8d9afb3d0dc617515a2fe364d9d59ef523 (diff) |
crypto: tegra-aes - fix error-valued pointer dereference
clk_put(dd->aes_clk) will dereference an error-valued pointer since the
dd->aes_clk is a ERR_PTR() value. The correct check is call clk_put()
if !IS_ERR(dd->aes_clk).
dpatch engine is used to auto generate this patch.
(https://github.com/weiyj/dpatch)
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/tegra-aes.c')
-rw-r--r-- | drivers/crypto/tegra-aes.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/crypto/tegra-aes.c b/drivers/crypto/tegra-aes.c index 19adf1c7faa2..93059dc591aa 100644 --- a/drivers/crypto/tegra-aes.c +++ b/drivers/crypto/tegra-aes.c | |||
@@ -1035,7 +1035,7 @@ out: | |||
1035 | if (dd->buf_out) | 1035 | if (dd->buf_out) |
1036 | dma_free_coherent(dev, AES_HW_DMA_BUFFER_SIZE_BYTES, | 1036 | dma_free_coherent(dev, AES_HW_DMA_BUFFER_SIZE_BYTES, |
1037 | dd->buf_out, dd->dma_buf_out); | 1037 | dd->buf_out, dd->dma_buf_out); |
1038 | if (IS_ERR(dd->aes_clk)) | 1038 | if (!IS_ERR(dd->aes_clk)) |
1039 | clk_put(dd->aes_clk); | 1039 | clk_put(dd->aes_clk); |
1040 | if (aes_wq) | 1040 | if (aes_wq) |
1041 | destroy_workqueue(aes_wq); | 1041 | destroy_workqueue(aes_wq); |