diff options
author | Neal Liu <neal_liu@aspeedtech.com> | 2023-02-24 10:05:21 +0800 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2023-03-14 17:06:44 +0800 |
commit | a1862c3b0875a0cdfa0e30c508855324577e124b (patch) | |
tree | b242025686086c191fbb99e5ac01af87e606271e /drivers/crypto/aspeed | |
parent | f84155ca851849e5e8981fddd3945a6cfeea220c (diff) |
crypto: aspeed - add error handling if dmam_alloc_coherent() failed
Since the acry_dev->buf_addr may be NULL, add error handling to
prevent any additional access to avoid potential issues.
Signed-off-by: Neal Liu <neal_liu@aspeedtech.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/aspeed')
-rw-r--r-- | drivers/crypto/aspeed/aspeed-acry.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/crypto/aspeed/aspeed-acry.c b/drivers/crypto/aspeed/aspeed-acry.c index 857a7a222922..565059c1ddbf 100644 --- a/drivers/crypto/aspeed/aspeed-acry.c +++ b/drivers/crypto/aspeed/aspeed-acry.c @@ -779,7 +779,10 @@ static int aspeed_acry_probe(struct platform_device *pdev) acry_dev->buf_addr = dmam_alloc_coherent(dev, ASPEED_ACRY_BUFF_SIZE, &acry_dev->buf_dma_addr, GFP_KERNEL); - memzero_explicit(acry_dev->buf_addr, ASPEED_ACRY_BUFF_SIZE); + if (!acry_dev->buf_addr) { + rc = -ENOMEM; + goto err_engine_rsa_start; + } aspeed_acry_register(acry_dev); |