diff options
Diffstat (limited to 'net/tipc/node.c')
-rw-r--r-- | net/tipc/node.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/net/tipc/node.c b/net/tipc/node.c index df71dfc3a9ae..c20bd851a44a 100644 --- a/net/tipc/node.c +++ b/net/tipc/node.c | |||
@@ -257,7 +257,7 @@ struct tipc_node *tipc_node_attach_link(struct link *l_ptr) | |||
257 | 257 | ||
258 | if (!n_ptr->links[bearer_id]) { | 258 | if (!n_ptr->links[bearer_id]) { |
259 | n_ptr->links[bearer_id] = l_ptr; | 259 | n_ptr->links[bearer_id] = l_ptr; |
260 | tipc_net.zones[tipc_zone(l_ptr->addr)]->links++; | 260 | tipc_net.links++; |
261 | n_ptr->link_cnt++; | 261 | n_ptr->link_cnt++; |
262 | return n_ptr; | 262 | return n_ptr; |
263 | } | 263 | } |
@@ -271,7 +271,7 @@ struct tipc_node *tipc_node_attach_link(struct link *l_ptr) | |||
271 | void tipc_node_detach_link(struct tipc_node *n_ptr, struct link *l_ptr) | 271 | void tipc_node_detach_link(struct tipc_node *n_ptr, struct link *l_ptr) |
272 | { | 272 | { |
273 | n_ptr->links[l_ptr->b_ptr->identity] = NULL; | 273 | n_ptr->links[l_ptr->b_ptr->identity] = NULL; |
274 | tipc_net.zones[tipc_zone(l_ptr->addr)]->links--; | 274 | tipc_net.links--; |
275 | n_ptr->link_cnt--; | 275 | n_ptr->link_cnt--; |
276 | } | 276 | } |
277 | 277 | ||
@@ -656,8 +656,7 @@ struct sk_buff *tipc_node_get_links(const void *req_tlv_area, int req_tlv_space) | |||
656 | 656 | ||
657 | /* Get space for all unicast links + multicast link */ | 657 | /* Get space for all unicast links + multicast link */ |
658 | 658 | ||
659 | payload_size = TLV_SPACE(sizeof(link_info)) * | 659 | payload_size = TLV_SPACE(sizeof(link_info)) * (tipc_net.links + 1); |
660 | (tipc_net.zones[tipc_zone(tipc_own_addr)]->links + 1); | ||
661 | if (payload_size > 32768u) { | 660 | if (payload_size > 32768u) { |
662 | read_unlock_bh(&tipc_net_lock); | 661 | read_unlock_bh(&tipc_net_lock); |
663 | return tipc_cfg_reply_error_string(TIPC_CFG_NOT_SUPPORTED | 662 | return tipc_cfg_reply_error_string(TIPC_CFG_NOT_SUPPORTED |