diff --git a/[refs] b/[refs] index a7f98a23b19a..f8279d1a3873 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9c2b3328f74800bb370d08bb3a4255d5fe833e94 +refs/heads/master: 88a66858253c57334a519a77187234867bc8605c diff --git a/trunk/net/core/sock.c b/trunk/net/core/sock.c index f52c87a9268a..4df4fa3c5de0 100644 --- a/trunk/net/core/sock.c +++ b/trunk/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);