linux/drivers/crypto/hisilicon
Yunfeng Ye 24fbf7bad8 crypto: hisilicon - Fix double free in sec_free_hw_sgl()
There are two problems in sec_free_hw_sgl():

First, when sgl_current->next is valid, @hw_sgl will be freed in the
first loop, but it free again after the loop.

Second, sgl_current and sgl_current->next_sgl is not match when
dma_pool_free() is invoked, the third parameter should be the dma
address of sgl_current, but sgl_current->next_sgl is the dma address
of next chain, so use sgl_current->next_sgl is wrong.

Fix this by deleting the last dma_pool_free() in sec_free_hw_sgl(),
modifying the condition for while loop, and matching the address for
dma_pool_free().

Fixes: 915e4e8413 ("crypto: hisilicon - SEC security accelerator driver")
Signed-off-by: Yunfeng Ye <yeyunfeng@huawei.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2019-09-20 22:53:09 +10:00
..
sec crypto: hisilicon - Fix double free in sec_free_hw_sgl() 2019-09-20 22:53:09 +10:00
zip crypto: hisilicon - fix error handle in hisi_zip_create_req_q 2019-08-15 21:52:13 +10:00
Kconfig crypto: hisilicon - select CRYPTO_LIB_DES while compiling SEC driver 2019-08-30 18:05:31 +10:00
Makefile crypto: hisilicon - add HiSilicon ZIP accelerator support 2019-08-09 15:11:54 +10:00
qm.c crypto: hisilicon - Fix warning on printing %p with dma_addr_t 2019-08-22 14:57:34 +10:00
qm.h crypto: hisilicon - add debugfs for ZIP and QM 2019-08-09 15:11:57 +10:00
sgl.c crypto: hisilicon - init curr_sgl_dma to fix compile warning 2019-08-15 21:52:12 +10:00
sgl.h crypto: hisilicon - add hardware SGL support 2019-08-09 15:11:53 +10:00