Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Conflicts: drivers/net/s2io.c
This commit is contained in:
@@ -598,17 +598,24 @@ static int rose_release(struct socket *sock)
|
||||
|
||||
if (sk == NULL) return 0;
|
||||
|
||||
sock_hold(sk);
|
||||
sock_orphan(sk);
|
||||
lock_sock(sk);
|
||||
rose = rose_sk(sk);
|
||||
|
||||
switch (rose->state) {
|
||||
case ROSE_STATE_0:
|
||||
release_sock(sk);
|
||||
rose_disconnect(sk, 0, -1, -1);
|
||||
lock_sock(sk);
|
||||
rose_destroy_socket(sk);
|
||||
break;
|
||||
|
||||
case ROSE_STATE_2:
|
||||
rose->neighbour->use--;
|
||||
release_sock(sk);
|
||||
rose_disconnect(sk, 0, -1, -1);
|
||||
lock_sock(sk);
|
||||
rose_destroy_socket(sk);
|
||||
break;
|
||||
|
||||
@@ -633,6 +640,8 @@ static int rose_release(struct socket *sock)
|
||||
}
|
||||
|
||||
sock->sk = NULL;
|
||||
release_sock(sk);
|
||||
sock_put(sk);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user