aboutsummaryrefslogtreecommitdiffstats
path: root/net/core
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2011-10-24 22:30:50 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2011-11-11 12:36:50 -0500
commit5796ee30587cb5f887a7fe6182c2bbcc3d31f0ad (patch)
treebdc1b7ccbd37b1b5905e4f228de602752c4c9539 /net/core
parentce0f562ecf544f386b6ae95f490cd06f7da2deb4 (diff)
net: Unlock sock before calling sk_free()
[ Upstream commit b0691c8ee7c28a72748ff32e91b165ec12ae4de6 ] Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'net/core')
-rw-r--r--net/core/sock.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/core/sock.c b/net/core/sock.c
index 6e819780c23..aebb419519b 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -1257,6 +1257,7 @@ struct sock *sk_clone(const struct sock *sk, const gfp_t priority)
1257 /* It is still raw copy of parent, so invalidate 1257 /* It is still raw copy of parent, so invalidate
1258 * destructor and make plain sk_free() */ 1258 * destructor and make plain sk_free() */
1259 newsk->sk_destruct = NULL; 1259 newsk->sk_destruct = NULL;
1260 bh_unlock_sock(newsk);
1260 sk_free(newsk); 1261 sk_free(newsk);
1261 newsk = NULL; 1262 newsk = NULL;
1262 goto out; 1263 goto out;