diff options
Diffstat (limited to 'net/tipc')
-rw-r--r-- | net/tipc/link.c | 3 | ||||
-rw-r--r-- | net/tipc/netlink.c | 11 | ||||
-rw-r--r-- | net/tipc/socket.c | 6 |
3 files changed, 8 insertions, 12 deletions
diff --git a/net/tipc/link.c b/net/tipc/link.c index cf465d66ccde..69cd9bf3f561 100644 --- a/net/tipc/link.c +++ b/net/tipc/link.c | |||
@@ -2358,7 +2358,8 @@ int tipc_link_recv_fragment(struct sk_buff **head, struct sk_buff **tail, | |||
2358 | *head = frag; | 2358 | *head = frag; |
2359 | skb_frag_list_init(*head); | 2359 | skb_frag_list_init(*head); |
2360 | return 0; | 2360 | return 0; |
2361 | } else if (skb_try_coalesce(*head, frag, &headstolen, &delta)) { | 2361 | } else if (*head && |
2362 | skb_try_coalesce(*head, frag, &headstolen, &delta)) { | ||
2362 | kfree_skb_partial(frag, headstolen); | 2363 | kfree_skb_partial(frag, headstolen); |
2363 | } else { | 2364 | } else { |
2364 | if (!*head) | 2365 | if (!*head) |
diff --git a/net/tipc/netlink.c b/net/tipc/netlink.c index 8bcd4985d0fb..9f72a6376362 100644 --- a/net/tipc/netlink.c +++ b/net/tipc/netlink.c | |||
@@ -76,9 +76,11 @@ static struct genl_family tipc_genl_family = { | |||
76 | .maxattr = 0, | 76 | .maxattr = 0, |
77 | }; | 77 | }; |
78 | 78 | ||
79 | static struct genl_ops tipc_genl_ops = { | 79 | static struct genl_ops tipc_genl_ops[] = { |
80 | .cmd = TIPC_GENL_CMD, | 80 | { |
81 | .doit = handle_cmd, | 81 | .cmd = TIPC_GENL_CMD, |
82 | .doit = handle_cmd, | ||
83 | }, | ||
82 | }; | 84 | }; |
83 | 85 | ||
84 | static int tipc_genl_family_registered; | 86 | static int tipc_genl_family_registered; |
@@ -87,8 +89,7 @@ int tipc_netlink_start(void) | |||
87 | { | 89 | { |
88 | int res; | 90 | int res; |
89 | 91 | ||
90 | res = genl_register_family_with_ops(&tipc_genl_family, | 92 | res = genl_register_family_with_ops(&tipc_genl_family, tipc_genl_ops); |
91 | &tipc_genl_ops, 1); | ||
92 | if (res) { | 93 | if (res) { |
93 | pr_err("Failed to register netlink interface\n"); | 94 | pr_err("Failed to register netlink interface\n"); |
94 | return res; | 95 | return res; |
diff --git a/net/tipc/socket.c b/net/tipc/socket.c index 3906527259d1..3b61851bb927 100644 --- a/net/tipc/socket.c +++ b/net/tipc/socket.c | |||
@@ -980,9 +980,6 @@ static int recv_msg(struct kiocb *iocb, struct socket *sock, | |||
980 | goto exit; | 980 | goto exit; |
981 | } | 981 | } |
982 | 982 | ||
983 | /* will be updated in set_orig_addr() if needed */ | ||
984 | m->msg_namelen = 0; | ||
985 | |||
986 | timeout = sock_rcvtimeo(sk, flags & MSG_DONTWAIT); | 983 | timeout = sock_rcvtimeo(sk, flags & MSG_DONTWAIT); |
987 | restart: | 984 | restart: |
988 | 985 | ||
@@ -1091,9 +1088,6 @@ static int recv_stream(struct kiocb *iocb, struct socket *sock, | |||
1091 | goto exit; | 1088 | goto exit; |
1092 | } | 1089 | } |
1093 | 1090 | ||
1094 | /* will be updated in set_orig_addr() if needed */ | ||
1095 | m->msg_namelen = 0; | ||
1096 | |||
1097 | target = sock_rcvlowat(sk, flags & MSG_WAITALL, buf_len); | 1091 | target = sock_rcvlowat(sk, flags & MSG_WAITALL, buf_len); |
1098 | timeout = sock_rcvtimeo(sk, flags & MSG_DONTWAIT); | 1092 | timeout = sock_rcvtimeo(sk, flags & MSG_DONTWAIT); |
1099 | 1093 | ||