On Sat, Feb 25, 2023 at 05:50:19AM +0800, Li kunyu wrote: > If rctx->hw_context allocation of the context pointer failed. Returning > -ENOMEM and assigning NULL to the out pointer should improve the > robustness of the function. > > Signed-off-by: Li kunyu <kunyu@xxxxxxxxxxxx> > --- > drivers/crypto/stm32/stm32-hash.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/crypto/stm32/stm32-hash.c b/drivers/crypto/stm32/stm32-hash.c > index d33006d43f76..18e79f62be96 100644 > --- a/drivers/crypto/stm32/stm32-hash.c > +++ b/drivers/crypto/stm32/stm32-hash.c > @@ -970,6 +970,10 @@ static int stm32_hash_export(struct ahash_request *req, void *out) > rctx->hw_context = kmalloc_array(3 + HASH_CSR_REGISTER_NUMBER, > sizeof(u32), > GFP_KERNEL); > + if (rctx->hw_context == NULL) { > + out = NULL; > + return -ENOMEM; > + } > > preg = rctx->hw_context; Shouldn't we free the hw_context at the end of the function? Why does it even need to be stored in rctx in the first place? Thanks, -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt