diff options
author | Patrick McHardy <kaber@trash.net> | 2011-04-13 07:32:28 -0400 |
---|---|---|
committer | Patrick McHardy <kaber@trash.net> | 2011-04-13 07:32:28 -0400 |
commit | b32e3dc7860d00124fa432dba09667e647cb9bcc (patch) | |
tree | 2fa6e56f389431dfb84609d3d7572cad76e88e71 /net/appletalk/ddp.c | |
parent | 6604271c5bc658a6067ed0c3deba4d89e0e50382 (diff) | |
parent | 96120d86fe302c006259baee9061eea9e1b9e486 (diff) |
Merge branch 'master' of ssh://master.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6
Diffstat (limited to 'net/appletalk/ddp.c')
-rw-r--r-- | net/appletalk/ddp.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/net/appletalk/ddp.c b/net/appletalk/ddp.c index 3d4f4b043406..956a5302002a 100644 --- a/net/appletalk/ddp.c +++ b/net/appletalk/ddp.c | |||
@@ -1051,13 +1051,17 @@ static int atalk_release(struct socket *sock) | |||
1051 | { | 1051 | { |
1052 | struct sock *sk = sock->sk; | 1052 | struct sock *sk = sock->sk; |
1053 | 1053 | ||
1054 | lock_sock(sk); | ||
1055 | if (sk) { | 1054 | if (sk) { |
1055 | sock_hold(sk); | ||
1056 | lock_sock(sk); | ||
1057 | |||
1056 | sock_orphan(sk); | 1058 | sock_orphan(sk); |
1057 | sock->sk = NULL; | 1059 | sock->sk = NULL; |
1058 | atalk_destroy_socket(sk); | 1060 | atalk_destroy_socket(sk); |
1061 | |||
1062 | release_sock(sk); | ||
1063 | sock_put(sk); | ||
1059 | } | 1064 | } |
1060 | release_sock(sk); | ||
1061 | return 0; | 1065 | return 0; |
1062 | } | 1066 | } |
1063 | 1067 | ||