diff options
-rw-r--r-- | net/tipc/bcast.c | 6 | ||||
-rw-r--r-- | net/tipc/link.c | 8 | ||||
-rw-r--r-- | net/tipc/node.c | 6 | ||||
-rw-r--r-- | net/tipc/node.h | 4 |
4 files changed, 12 insertions, 12 deletions
diff --git a/net/tipc/bcast.c b/net/tipc/bcast.c index 40da098eeb39..54f89f90ac33 100644 --- a/net/tipc/bcast.c +++ b/net/tipc/bcast.c | |||
@@ -347,7 +347,7 @@ static void bclink_peek_nack(struct tipc_msg *msg) | |||
347 | 347 | ||
348 | tipc_node_lock(n_ptr); | 348 | tipc_node_lock(n_ptr); |
349 | 349 | ||
350 | if (n_ptr->bclink.supported && | 350 | if (n_ptr->bclink.recv_permitted && |
351 | (n_ptr->bclink.last_in != n_ptr->bclink.last_sent) && | 351 | (n_ptr->bclink.last_in != n_ptr->bclink.last_sent) && |
352 | (n_ptr->bclink.last_in == msg_bcgap_after(msg))) | 352 | (n_ptr->bclink.last_in == msg_bcgap_after(msg))) |
353 | n_ptr->bclink.oos_state = 2; | 353 | n_ptr->bclink.oos_state = 2; |
@@ -429,7 +429,7 @@ void tipc_bclink_recv_pkt(struct sk_buff *buf) | |||
429 | goto exit; | 429 | goto exit; |
430 | 430 | ||
431 | tipc_node_lock(node); | 431 | tipc_node_lock(node); |
432 | if (unlikely(!node->bclink.supported)) | 432 | if (unlikely(!node->bclink.recv_permitted)) |
433 | goto unlock; | 433 | goto unlock; |
434 | 434 | ||
435 | /* Handle broadcast protocol message */ | 435 | /* Handle broadcast protocol message */ |
@@ -564,7 +564,7 @@ exit: | |||
564 | 564 | ||
565 | u32 tipc_bclink_acks_missing(struct tipc_node *n_ptr) | 565 | u32 tipc_bclink_acks_missing(struct tipc_node *n_ptr) |
566 | { | 566 | { |
567 | return (n_ptr->bclink.supported && | 567 | return (n_ptr->bclink.recv_permitted && |
568 | (tipc_bclink_get_last_sent() != n_ptr->bclink.acked)); | 568 | (tipc_bclink_get_last_sent() != n_ptr->bclink.acked)); |
569 | } | 569 | } |
570 | 570 | ||
diff --git a/net/tipc/link.c b/net/tipc/link.c index f3a078fe70c8..20f128fc2be1 100644 --- a/net/tipc/link.c +++ b/net/tipc/link.c | |||
@@ -1426,8 +1426,8 @@ static void link_retransmit_failure(struct tipc_link *l_ptr, | |||
1426 | 1426 | ||
1427 | tipc_addr_string_fill(addr_string, n_ptr->addr); | 1427 | tipc_addr_string_fill(addr_string, n_ptr->addr); |
1428 | pr_info("Broadcast link info for %s\n", addr_string); | 1428 | pr_info("Broadcast link info for %s\n", addr_string); |
1429 | pr_info("Supported: %d, Acked: %u\n", | 1429 | pr_info("Reception permitted: %d, Acked: %u\n", |
1430 | n_ptr->bclink.supported, | 1430 | n_ptr->bclink.recv_permitted, |
1431 | n_ptr->bclink.acked); | 1431 | n_ptr->bclink.acked); |
1432 | pr_info("Last in: %u, Oos state: %u, Last sent: %u\n", | 1432 | pr_info("Last in: %u, Oos state: %u, Last sent: %u\n", |
1433 | n_ptr->bclink.last_in, | 1433 | n_ptr->bclink.last_in, |
@@ -1640,7 +1640,7 @@ void tipc_recv_msg(struct sk_buff *head, struct tipc_bearer *b_ptr) | |||
1640 | ackd = msg_ack(msg); | 1640 | ackd = msg_ack(msg); |
1641 | 1641 | ||
1642 | /* Release acked messages */ | 1642 | /* Release acked messages */ |
1643 | if (n_ptr->bclink.supported) | 1643 | if (n_ptr->bclink.recv_permitted) |
1644 | tipc_bclink_acknowledge(n_ptr, msg_bcast_ack(msg)); | 1644 | tipc_bclink_acknowledge(n_ptr, msg_bcast_ack(msg)); |
1645 | 1645 | ||
1646 | crs = l_ptr->first_out; | 1646 | crs = l_ptr->first_out; |
@@ -2067,7 +2067,7 @@ static void link_recv_proto_msg(struct tipc_link *l_ptr, struct sk_buff *buf) | |||
2067 | } | 2067 | } |
2068 | 2068 | ||
2069 | /* Protocol message before retransmits, reduce loss risk */ | 2069 | /* Protocol message before retransmits, reduce loss risk */ |
2070 | if (l_ptr->owner->bclink.supported) | 2070 | if (l_ptr->owner->bclink.recv_permitted) |
2071 | tipc_bclink_update_link_state(l_ptr->owner, | 2071 | tipc_bclink_update_link_state(l_ptr->owner, |
2072 | msg_last_bcast(msg)); | 2072 | msg_last_bcast(msg)); |
2073 | 2073 | ||
diff --git a/net/tipc/node.c b/net/tipc/node.c index 6f3e9b35d27f..283a59f0f1c8 100644 --- a/net/tipc/node.c +++ b/net/tipc/node.c | |||
@@ -266,7 +266,7 @@ static void node_established_contact(struct tipc_node *n_ptr) | |||
266 | 266 | ||
267 | n_ptr->bclink.acked = tipc_bclink_get_last_sent(); | 267 | n_ptr->bclink.acked = tipc_bclink_get_last_sent(); |
268 | tipc_bclink_add_node(n_ptr->addr); | 268 | tipc_bclink_add_node(n_ptr->addr); |
269 | n_ptr->bclink.supported = 1; | 269 | n_ptr->bclink.recv_permitted = true; |
270 | } | 270 | } |
271 | 271 | ||
272 | static void node_name_purge_complete(unsigned long node_addr) | 272 | static void node_name_purge_complete(unsigned long node_addr) |
@@ -292,7 +292,7 @@ static void node_lost_contact(struct tipc_node *n_ptr) | |||
292 | tipc_addr_string_fill(addr_string, n_ptr->addr)); | 292 | tipc_addr_string_fill(addr_string, n_ptr->addr)); |
293 | 293 | ||
294 | /* Flush broadcast link info associated with lost node */ | 294 | /* Flush broadcast link info associated with lost node */ |
295 | if (n_ptr->bclink.supported) { | 295 | if (n_ptr->bclink.recv_permitted) { |
296 | while (n_ptr->bclink.deferred_head) { | 296 | while (n_ptr->bclink.deferred_head) { |
297 | struct sk_buff *buf = n_ptr->bclink.deferred_head; | 297 | struct sk_buff *buf = n_ptr->bclink.deferred_head; |
298 | n_ptr->bclink.deferred_head = buf->next; | 298 | n_ptr->bclink.deferred_head = buf->next; |
@@ -308,7 +308,7 @@ static void node_lost_contact(struct tipc_node *n_ptr) | |||
308 | tipc_bclink_remove_node(n_ptr->addr); | 308 | tipc_bclink_remove_node(n_ptr->addr); |
309 | tipc_bclink_acknowledge(n_ptr, INVALID_LINK_SEQ); | 309 | tipc_bclink_acknowledge(n_ptr, INVALID_LINK_SEQ); |
310 | 310 | ||
311 | n_ptr->bclink.supported = 0; | 311 | n_ptr->bclink.recv_permitted = false; |
312 | } | 312 | } |
313 | 313 | ||
314 | /* Abort link changeover */ | 314 | /* Abort link changeover */ |
diff --git a/net/tipc/node.h b/net/tipc/node.h index 3ac905f36b03..3c189b35b102 100644 --- a/net/tipc/node.h +++ b/net/tipc/node.h | |||
@@ -67,7 +67,6 @@ | |||
67 | * @permit_changeover: non-zero if node has redundant links to this system | 67 | * @permit_changeover: non-zero if node has redundant links to this system |
68 | * @signature: node instance identifier | 68 | * @signature: node instance identifier |
69 | * @bclink: broadcast-related info | 69 | * @bclink: broadcast-related info |
70 | * @supported: non-zero if node supports TIPC b'cast capability | ||
71 | * @acked: sequence # of last outbound b'cast message acknowledged by node | 70 | * @acked: sequence # of last outbound b'cast message acknowledged by node |
72 | * @last_in: sequence # of last in-sequence b'cast message received from node | 71 | * @last_in: sequence # of last in-sequence b'cast message received from node |
73 | * @last_sent: sequence # of last b'cast message sent by node | 72 | * @last_sent: sequence # of last b'cast message sent by node |
@@ -76,6 +75,7 @@ | |||
76 | * @deferred_head: oldest OOS b'cast message received from node | 75 | * @deferred_head: oldest OOS b'cast message received from node |
77 | * @deferred_tail: newest OOS b'cast message received from node | 76 | * @deferred_tail: newest OOS b'cast message received from node |
78 | * @defragm: list of partially reassembled b'cast message fragments from node | 77 | * @defragm: list of partially reassembled b'cast message fragments from node |
78 | * @recv_permitted: true if node is allowed to receive b'cast messages | ||
79 | */ | 79 | */ |
80 | struct tipc_node { | 80 | struct tipc_node { |
81 | u32 addr; | 81 | u32 addr; |
@@ -91,7 +91,6 @@ struct tipc_node { | |||
91 | int permit_changeover; | 91 | int permit_changeover; |
92 | u32 signature; | 92 | u32 signature; |
93 | struct { | 93 | struct { |
94 | u8 supported; | ||
95 | u32 acked; | 94 | u32 acked; |
96 | u32 last_in; | 95 | u32 last_in; |
97 | u32 last_sent; | 96 | u32 last_sent; |
@@ -100,6 +99,7 @@ struct tipc_node { | |||
100 | struct sk_buff *deferred_head; | 99 | struct sk_buff *deferred_head; |
101 | struct sk_buff *deferred_tail; | 100 | struct sk_buff *deferred_tail; |
102 | struct sk_buff *defragm; | 101 | struct sk_buff *defragm; |
102 | bool recv_permitted; | ||
103 | } bclink; | 103 | } bclink; |
104 | }; | 104 | }; |
105 | 105 | ||