aboutsummaryrefslogtreecommitdiffstats
path: root/net/tipc/discover.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/tipc/discover.c')
-rw-r--r--net/tipc/discover.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/net/tipc/discover.c b/net/tipc/discover.c
index 6acf32a9eef8..dba47673124d 100644
--- a/net/tipc/discover.c
+++ b/net/tipc/discover.c
@@ -241,6 +241,17 @@ void tipc_disc_update_link_req(struct link_req *req)
241} 241}
242 242
243/** 243/**
244 * disc_send_msg - send link setup request message
245 * @req: ptr to link request structure
246 */
247
248static void disc_send_msg(struct link_req *req)
249{
250 if (!req->bearer->blocked)
251 tipc_bearer_send(req->bearer, req->buf, &req->dest);
252}
253
254/**
244 * disc_timeout - send a periodic link setup request 255 * disc_timeout - send a periodic link setup request
245 * @req: ptr to link request structure 256 * @req: ptr to link request structure
246 * 257 *
@@ -251,7 +262,7 @@ static void disc_timeout(struct link_req *req)
251{ 262{
252 spin_lock_bh(&req->bearer->lock); 263 spin_lock_bh(&req->bearer->lock);
253 264
254 req->bearer->media->send_msg(req->buf, req->bearer, &req->dest); 265 disc_send_msg(req);
255 266
256 if ((req->timer_intv == TIPC_LINK_REQ_SLOW) || 267 if ((req->timer_intv == TIPC_LINK_REQ_SLOW) ||
257 (req->timer_intv == TIPC_LINK_REQ_FAST)) { 268 (req->timer_intv == TIPC_LINK_REQ_FAST)) {
@@ -300,6 +311,7 @@ int tipc_disc_create(struct tipc_bearer *b_ptr,
300 k_init_timer(&req->timer, (Handler)disc_timeout, (unsigned long)req); 311 k_init_timer(&req->timer, (Handler)disc_timeout, (unsigned long)req);
301 k_start_timer(&req->timer, req->timer_intv); 312 k_start_timer(&req->timer, req->timer_intv);
302 b_ptr->link_req = req; 313 b_ptr->link_req = req;
314 disc_send_msg(req);
303 return 0; 315 return 0;
304} 316}
305 317