From: Arnaldo Carvalho de Melo Date: Wed, 20 Apr 2005 05:41:54 +0000 (-0700) Subject: [SOCK]: on failure free the sock from the right place X-Git-Tag: v2.6.12-rc3~3 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=88a66858253c57334a519a77187234867bc8605c;p=linux-2.6 [SOCK]: on failure free the sock from the right place Signed-off-by: Arnaldo Carvalho de Melo Signed-off-by: David S. Miller --- diff --git a/net/core/sock.c b/net/core/sock.c index f52c87a926..4df4fa3c5d 100644 --- a/net/core/sock.c +++ b/net/core/sock.c @@ -641,7 +641,10 @@ struct sock *sk_alloc(int family, int priority, struct proto *prot, int zero_it) } if (security_sk_alloc(sk, family, priority)) { - kmem_cache_free(slab, sk); + if (slab != NULL) + kmem_cache_free(slab, sk); + else + kfree(sk); sk = NULL; } else __module_get(prot->owner);