linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] crypto: cryptd - Fix skcipher instance memory leak
@ 2019-07-02  7:53 Vincent Whitchurch
  2019-07-03 14:29 ` Herbert Xu
  0 siblings, 1 reply; 2+ messages in thread
From: Vincent Whitchurch @ 2019-07-02  7:53 UTC (permalink / raw)
  To: herbert, davem; +Cc: linux-crypto, linux-kernel, Vincent Whitchurch

cryptd_skcipher_free() fails to free the struct skcipher_instance
allocated in cryptd_create_skcipher(), leading to a memory leak.  This
is detected by kmemleak on bootup on ARM64 platforms:

 unreferenced object 0xffff80003377b180 (size 1024):
   comm "cryptomgr_probe", pid 822, jiffies 4294894830 (age 52.760s)
   backtrace:
     kmem_cache_alloc_trace+0x270/0x2d0
     cryptd_create+0x990/0x124c
     cryptomgr_probe+0x5c/0x1e8
     kthread+0x258/0x318
     ret_from_fork+0x10/0x1c

Signed-off-by: Vincent Whitchurch <vincent.whitchurch@axis.com>
---
 crypto/cryptd.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/crypto/cryptd.c b/crypto/cryptd.c
index 1ce1bf6d3bab..5f76c6e222c6 100644
--- a/crypto/cryptd.c
+++ b/crypto/cryptd.c
@@ -388,6 +388,7 @@ static void cryptd_skcipher_free(struct skcipher_instance *inst)
 	struct skcipherd_instance_ctx *ctx = skcipher_instance_ctx(inst);
 
 	crypto_drop_skcipher(&ctx->spawn);
+	kfree(inst);
 }
 
 static int cryptd_create_skcipher(struct crypto_template *tmpl,
-- 
2.20.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] crypto: cryptd - Fix skcipher instance memory leak
  2019-07-02  7:53 [PATCH] crypto: cryptd - Fix skcipher instance memory leak Vincent Whitchurch
@ 2019-07-03 14:29 ` Herbert Xu
  0 siblings, 0 replies; 2+ messages in thread
From: Herbert Xu @ 2019-07-03 14:29 UTC (permalink / raw)
  To: Vincent Whitchurch; +Cc: davem, linux-crypto, linux-kernel, rabinv

Vincent Whitchurch <vincent.whitchurch@axis.com> wrote:
> cryptd_skcipher_free() fails to free the struct skcipher_instance
> allocated in cryptd_create_skcipher(), leading to a memory leak.  This
> is detected by kmemleak on bootup on ARM64 platforms:
> 
> unreferenced object 0xffff80003377b180 (size 1024):
>   comm "cryptomgr_probe", pid 822, jiffies 4294894830 (age 52.760s)
>   backtrace:
>     kmem_cache_alloc_trace+0x270/0x2d0
>     cryptd_create+0x990/0x124c
>     cryptomgr_probe+0x5c/0x1e8
>     kthread+0x258/0x318
>     ret_from_fork+0x10/0x1c
> 
> Signed-off-by: Vincent Whitchurch <vincent.whitchurch@axis.com>
> ---
> crypto/cryptd.c | 1 +
> 1 file changed, 1 insertion(+)

Patch applied.  Thanks.
-- 
Email: Herbert Xu <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-07-03 14:29 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-02  7:53 [PATCH] crypto: cryptd - Fix skcipher instance memory leak Vincent Whitchurch
2019-07-03 14:29 ` Herbert Xu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).