diff options
author | David S. Miller <davem@davemloft.net> | 2015-04-23 11:50:34 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-04-23 11:50:34 -0400 |
commit | 37a06a87f20d93c2cec3db9aaf0360a322b703dd (patch) | |
tree | 4d84c6e1de1a3edb94f21d9730b9c23fc31eb7c8 /net/tipc/server.c | |
parent | 4fce14820c1b0a3fd399719f970e0c3ae40dd270 (diff) | |
parent | 73a317377303b5ec14d4703d73ba87efffbb779d (diff) |
Merge branch 'tipc-fixes'
Jon Maloy says:
====================
tipc: three bug fixes
A set of unrelated corrections; one for the tipc netns implementation,
one regarding problems with random link resets, and one removing a
an erroneous refcount decrement when reading link statistsics via
netlink.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/tipc/server.c')
-rw-r--r-- | net/tipc/server.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/net/tipc/server.c b/net/tipc/server.c index ab6183cdb1211..77ff03ed1e18d 100644 --- a/net/tipc/server.c +++ b/net/tipc/server.c @@ -102,7 +102,7 @@ static void tipc_conn_kref_release(struct kref *kref) } saddr->scope = -TIPC_NODE_SCOPE; kernel_bind(sock, (struct sockaddr *)saddr, sizeof(*saddr)); - sk_release_kernel(sk); + sock_release(sock); con->sock = NULL; } @@ -321,12 +321,9 @@ static struct socket *tipc_create_listen_sock(struct tipc_conn *con) struct socket *sock = NULL; int ret; - ret = sock_create_kern(AF_TIPC, SOCK_SEQPACKET, 0, &sock); + ret = __sock_create(s->net, AF_TIPC, SOCK_SEQPACKET, 0, &sock, 1); if (ret < 0) return NULL; - - sk_change_net(sock->sk, s->net); - ret = kernel_setsockopt(sock, SOL_TIPC, TIPC_IMPORTANCE, (char *)&s->imp, sizeof(s->imp)); if (ret < 0) @@ -376,7 +373,7 @@ static struct socket *tipc_create_listen_sock(struct tipc_conn *con) create_err: kernel_sock_shutdown(sock, SHUT_RDWR); - sk_release_kernel(sock->sk); + sock_release(sock); return NULL; } |