41 #define TIPC_LINK_REQ_INIT 125
42 #define TIPC_LINK_REQ_FAST 1000
43 #define TIPC_LINK_REQ_SLOW 60000
44 #define TIPC_LINK_REQ_INACTIVE 0xffffffff
83 msg_set_non_seq(msg, 1);
84 msg_set_node_sig(msg, tipc_random);
85 msg_set_dest_domain(msg, dest_domain);
86 msg_set_bc_netid(msg, tipc_net_id);
87 b_ptr->
media->addr2msg(&b_ptr->
addr, msg_media_addr(msg));
98 static void disc_dupl_alert(
struct tipc_bearer *b_ptr,
u32 node_addr,
101 char node_addr_str[16];
102 char media_addr_str[64];
107 pr_warn(
"Duplicate %s using %s seen on <%s>\n", node_addr_str,
108 media_addr_str, b_ptr->
name);
123 u32 dest = msg_dest_domain(msg);
124 u32 orig = msg_prevnode(msg);
132 b_ptr->
media->msg2addr(&media_addr, msg_media_addr(msg));
136 if (net_id != tipc_net_id)
144 if (orig == tipc_own_addr) {
145 if (
memcmp(&media_addr, &b_ptr->
addr,
sizeof(media_addr)))
146 disc_dupl_alert(b_ptr, tipc_own_addr, &media_addr);
161 tipc_node_lock(n_ptr);
165 addr_mismatch = (link !=
NULL) &&
191 curr_link = n_ptr->
links[
i];
198 addr_mismatch = (link !=
NULL);
202 disc_dupl_alert(b_ptr, orig, &media_addr);
203 tipc_node_unlock(n_ptr);
221 disc_dupl_alert(b_ptr, orig, &media_addr);
222 tipc_node_unlock(n_ptr);
235 tipc_node_unlock(n_ptr);
241 link_fully_up = link_working_working(link);
246 b_ptr->
media->send_msg(rbuf, b_ptr, &media_addr);
251 tipc_node_unlock(n_ptr);
297 if (!req->
bearer->blocked)
311 spin_lock_bh(&req->
bearer->lock);
338 spin_unlock_bh(&req->
bearer->lock);
366 req->
domain = dest_domain;
369 k_init_timer(&req->
timer, (
Handler)disc_timeout, (
unsigned long)req);
370 k_start_timer(&req->timer, req->timer_intv);
382 k_cancel_timer(&req->
timer);
383 k_term_timer(&req->
timer);