diff options
author | J. Bruce Fields <bfields@redhat.com> | 2012-08-14 21:50:34 +0200 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2012-08-21 23:07:48 +0200 |
commit | 39b553013719fe6495cf5e496b827b2d712e4265 (patch) | |
tree | 27e4c71fa94f08e19b4709c25a81b5eecf23c5ba /net/sunrpc/svcsock.c | |
parent | svcrpc: make svc_create_xprt enqueue on clearing XPT_BUSY (diff) | |
download | linux-39b553013719fe6495cf5e496b827b2d712e4265.tar.xz linux-39b553013719fe6495cf5e496b827b2d712e4265.zip |
svcrpc: share some setup of listening sockets
There's some duplicate code here.
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'net/sunrpc/svcsock.c')
-rw-r--r-- | net/sunrpc/svcsock.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c index bf10b723f429..c7a7b14f54ed 100644 --- a/net/sunrpc/svcsock.c +++ b/net/sunrpc/svcsock.c @@ -1478,11 +1478,7 @@ int svc_addsock(struct svc_serv *serv, const int fd, char *name_return, } if (kernel_getsockname(svsk->sk_sock, sin, &salen) == 0) svc_xprt_set_local(&svsk->sk_xprt, sin, salen); - clear_bit(XPT_TEMP, &svsk->sk_xprt.xpt_flags); - spin_lock_bh(&serv->sv_lock); - list_add(&svsk->sk_xprt.xpt_list, &serv->sv_permsocks); - spin_unlock_bh(&serv->sv_lock); - svc_xprt_received(&svsk->sk_xprt); + svc_add_new_perm_xprt(serv, &svsk->sk_xprt); return svc_one_sock_name(svsk, name_return, len); out: sockfd_put(so); |