crypto: aspeed - add error handling if dmam_alloc_coherent() failed
authorNeal Liu <neal_liu@aspeedtech.com>
Fri, 24 Feb 2023 02:05:21 +0000 (10:05 +0800)
committerHerbert Xu <herbert@gondor.apana.org.au>
Tue, 14 Mar 2023 09:06:44 +0000 (17:06 +0800)
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>
drivers/crypto/aspeed/aspeed-acry.c

index 857a7a2229224458235a9896eb0f30596b43b2e3..565059c1ddbfacd15a8e698e2d130c8f9a60ee69 100644 (file)
@@ -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);