Message ID | 20241031112755.2949815-1-lihuafei1@huawei.com (mailing list archive) |
---|---|
State | Accepted |
Delegated to: | Herbert Xu |
Headers | show |
Series | crypto: inside-secure - Fix the return value of safexcel_xcbcmac_cra_init() | expand |
Quoting Li Huafei (2024-10-31 12:27:55) > The commit 320406cb60b6 ("crypto: inside-secure - Replace generic aes > with libaes") replaced crypto_alloc_cipher() with kmalloc(), but did not > modify the handling of the return value. When kmalloc() returns NULL, > PTR_ERR_OR_ZERO(NULL) returns 0, but in fact, the memory allocation has > failed, and -ENOMEM should be returned. > > Fixes: 320406cb60b6 ("crypto: inside-secure - Replace generic aes with libaes") > Signed-off-by: Li Huafei <lihuafei1@huawei.com> Acked-by: Antoine Tenart <atenart@kernel.org> Thanks! > --- > drivers/crypto/inside-secure/safexcel_hash.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/crypto/inside-secure/safexcel_hash.c b/drivers/crypto/inside-secure/safexcel_hash.c > index e17577b785c3..f44c08f5f5ec 100644 > --- a/drivers/crypto/inside-secure/safexcel_hash.c > +++ b/drivers/crypto/inside-secure/safexcel_hash.c > @@ -2093,7 +2093,7 @@ static int safexcel_xcbcmac_cra_init(struct crypto_tfm *tfm) > > safexcel_ahash_cra_init(tfm); > ctx->aes = kmalloc(sizeof(*ctx->aes), GFP_KERNEL); > - return PTR_ERR_OR_ZERO(ctx->aes); > + return ctx->aes == NULL ? -ENOMEM : 0; > } > > static void safexcel_xcbcmac_cra_exit(struct crypto_tfm *tfm) > -- > 2.25.1 >
On 2024/11/6 0:00, Antoine Tenart wrote: > Quoting Li Huafei (2024-10-31 12:27:55) >> The commit 320406cb60b6 ("crypto: inside-secure - Replace generic aes >> with libaes") replaced crypto_alloc_cipher() with kmalloc(), but did not >> modify the handling of the return value. When kmalloc() returns NULL, >> PTR_ERR_OR_ZERO(NULL) returns 0, but in fact, the memory allocation has >> failed, and -ENOMEM should be returned. >> >> Fixes: 320406cb60b6 ("crypto: inside-secure - Replace generic aes with libaes") >> Signed-off-by: Li Huafei <lihuafei1@huawei.com> > > Acked-by: Antoine Tenart <atenart@kernel.org> > > Thanks! > Thank you for reviewing. >> --- >> drivers/crypto/inside-secure/safexcel_hash.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/drivers/crypto/inside-secure/safexcel_hash.c b/drivers/crypto/inside-secure/safexcel_hash.c >> index e17577b785c3..f44c08f5f5ec 100644 >> --- a/drivers/crypto/inside-secure/safexcel_hash.c >> +++ b/drivers/crypto/inside-secure/safexcel_hash.c >> @@ -2093,7 +2093,7 @@ static int safexcel_xcbcmac_cra_init(struct crypto_tfm *tfm) >> >> safexcel_ahash_cra_init(tfm); >> ctx->aes = kmalloc(sizeof(*ctx->aes), GFP_KERNEL); >> - return PTR_ERR_OR_ZERO(ctx->aes); >> + return ctx->aes == NULL ? -ENOMEM : 0; >> } >> >> static void safexcel_xcbcmac_cra_exit(struct crypto_tfm *tfm) >> -- >> 2.25.1 >> > . >
On Thu, Oct 31, 2024 at 07:27:55PM +0800, Li Huafei wrote: > The commit 320406cb60b6 ("crypto: inside-secure - Replace generic aes > with libaes") replaced crypto_alloc_cipher() with kmalloc(), but did not > modify the handling of the return value. When kmalloc() returns NULL, > PTR_ERR_OR_ZERO(NULL) returns 0, but in fact, the memory allocation has > failed, and -ENOMEM should be returned. > > Fixes: 320406cb60b6 ("crypto: inside-secure - Replace generic aes with libaes") > Signed-off-by: Li Huafei <lihuafei1@huawei.com> > --- > drivers/crypto/inside-secure/safexcel_hash.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Patch applied. Thanks.
diff --git a/drivers/crypto/inside-secure/safexcel_hash.c b/drivers/crypto/inside-secure/safexcel_hash.c index e17577b785c3..f44c08f5f5ec 100644 --- a/drivers/crypto/inside-secure/safexcel_hash.c +++ b/drivers/crypto/inside-secure/safexcel_hash.c @@ -2093,7 +2093,7 @@ static int safexcel_xcbcmac_cra_init(struct crypto_tfm *tfm) safexcel_ahash_cra_init(tfm); ctx->aes = kmalloc(sizeof(*ctx->aes), GFP_KERNEL); - return PTR_ERR_OR_ZERO(ctx->aes); + return ctx->aes == NULL ? -ENOMEM : 0; } static void safexcel_xcbcmac_cra_exit(struct crypto_tfm *tfm)
The commit 320406cb60b6 ("crypto: inside-secure - Replace generic aes with libaes") replaced crypto_alloc_cipher() with kmalloc(), but did not modify the handling of the return value. When kmalloc() returns NULL, PTR_ERR_OR_ZERO(NULL) returns 0, but in fact, the memory allocation has failed, and -ENOMEM should be returned. Fixes: 320406cb60b6 ("crypto: inside-secure - Replace generic aes with libaes") Signed-off-by: Li Huafei <lihuafei1@huawei.com> --- drivers/crypto/inside-secure/safexcel_hash.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)