summaryrefslogtreecommitdiffstats
path: root/net/tipc/bcast.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/tipc/bcast.c')
-rw-r--r--net/tipc/bcast.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/net/tipc/bcast.c b/net/tipc/bcast.c
index ae469b37d852..753f774cb46f 100644
--- a/net/tipc/bcast.c
+++ b/net/tipc/bcast.c
@@ -269,18 +269,19 @@ void tipc_bcast_ack_rcv(struct net *net, struct tipc_link *l, u32 acked)
269 * 269 *
270 * RCU is locked, no other locks set 270 * RCU is locked, no other locks set
271 */ 271 */
272void tipc_bcast_sync_rcv(struct net *net, struct tipc_link *l, 272int tipc_bcast_sync_rcv(struct net *net, struct tipc_link *l,
273 struct tipc_msg *hdr) 273 struct tipc_msg *hdr)
274{ 274{
275 struct sk_buff_head *inputq = &tipc_bc_base(net)->inputq; 275 struct sk_buff_head *inputq = &tipc_bc_base(net)->inputq;
276 struct sk_buff_head xmitq; 276 struct sk_buff_head xmitq;
277 int rc = 0;
277 278
278 __skb_queue_head_init(&xmitq); 279 __skb_queue_head_init(&xmitq);
279 280
280 tipc_bcast_lock(net); 281 tipc_bcast_lock(net);
281 if (msg_type(hdr) == STATE_MSG) { 282 if (msg_type(hdr) == STATE_MSG) {
282 tipc_link_bc_ack_rcv(l, msg_bcast_ack(hdr), &xmitq); 283 tipc_link_bc_ack_rcv(l, msg_bcast_ack(hdr), &xmitq);
283 tipc_link_bc_sync_rcv(l, hdr, &xmitq); 284 rc = tipc_link_bc_sync_rcv(l, hdr, &xmitq);
284 } else { 285 } else {
285 tipc_link_bc_init_rcv(l, hdr); 286 tipc_link_bc_init_rcv(l, hdr);
286 } 287 }
@@ -291,6 +292,7 @@ void tipc_bcast_sync_rcv(struct net *net, struct tipc_link *l,
291 /* Any socket wakeup messages ? */ 292 /* Any socket wakeup messages ? */
292 if (!skb_queue_empty(inputq)) 293 if (!skb_queue_empty(inputq))
293 tipc_sk_rcv(net, inputq); 294 tipc_sk_rcv(net, inputq);
295 return rc;
294} 296}
295 297
296/* tipc_bcast_add_peer - add a peer node to broadcast link and bearer 298/* tipc_bcast_add_peer - add a peer node to broadcast link and bearer