diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-11-12 21:10:39 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2007-11-12 21:10:39 -0500 |
commit | 91cf45f02af5c871251165d000c3f42a2a0b0552 (patch) | |
tree | 0e4c0a9f624732d47a46301a394e799dab48afe0 /net/rxrpc/ar-local.c | |
parent | 62768e28d606c10ba54217f908123de34dad9374 (diff) |
[NET]: Add the helper kernel_sock_shutdown()
...and fix a couple of bugs in the NBD, CIFS and OCFS2 socket handlers.
Looking at the sock->op->shutdown() handlers, it looks as if all of them
take a SHUT_RD/SHUT_WR/SHUT_RDWR argument instead of the
RCV_SHUTDOWN/SEND_SHUTDOWN arguments.
Add a helper, and then define the SHUT_* enum to ensure that kernel users
of shutdown() don't get confused.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Acked-by: Mark Fasheh <mark.fasheh@oracle.com>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rxrpc/ar-local.c')
-rw-r--r-- | net/rxrpc/ar-local.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/rxrpc/ar-local.c b/net/rxrpc/ar-local.c index fe03f71f17da..f3a2bd747a8f 100644 --- a/net/rxrpc/ar-local.c +++ b/net/rxrpc/ar-local.c | |||
@@ -114,7 +114,7 @@ static int rxrpc_create_local(struct rxrpc_local *local) | |||
114 | return 0; | 114 | return 0; |
115 | 115 | ||
116 | error: | 116 | error: |
117 | local->socket->ops->shutdown(local->socket, 2); | 117 | kernel_sock_shutdown(local->socket, SHUT_RDWR); |
118 | local->socket->sk->sk_user_data = NULL; | 118 | local->socket->sk->sk_user_data = NULL; |
119 | sock_release(local->socket); | 119 | sock_release(local->socket); |
120 | local->socket = NULL; | 120 | local->socket = NULL; |
@@ -267,7 +267,7 @@ static void rxrpc_destroy_local(struct work_struct *work) | |||
267 | /* finish cleaning up the local descriptor */ | 267 | /* finish cleaning up the local descriptor */ |
268 | rxrpc_purge_queue(&local->accept_queue); | 268 | rxrpc_purge_queue(&local->accept_queue); |
269 | rxrpc_purge_queue(&local->reject_queue); | 269 | rxrpc_purge_queue(&local->reject_queue); |
270 | local->socket->ops->shutdown(local->socket, 2); | 270 | kernel_sock_shutdown(local->socket, SHUT_RDWR); |
271 | sock_release(local->socket); | 271 | sock_release(local->socket); |
272 | 272 | ||
273 | up_read(&rxrpc_local_sem); | 273 | up_read(&rxrpc_local_sem); |