On Sun, Sep 15, 2019 at 05:26:56PM +0800, Yunfeng Ye wrote: > 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: 915e4e8413da ("crypto: hisilicon - SEC security accelerator driver") > Signed-off-by: Yunfeng Ye <yeyunfeng@xxxxxxxxxx> > --- > drivers/crypto/hisilicon/sec/sec_algs.c | 13 +++++++------ > 1 file changed, 7 insertions(+), 6 deletions(-) All applied. Thanks. -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt