• Home
  • Raw
  • Download

Lines Matching refs:net

76 static struct tipc_bc_base *tipc_bc_base(struct net *net)  in tipc_bc_base()  argument
78 return tipc_net(net)->bcbase; in tipc_bc_base()
85 int tipc_bcast_get_mtu(struct net *net) in tipc_bcast_get_mtu() argument
87 return tipc_link_mtu(tipc_bc_sndlink(net)) - INT_H_SIZE; in tipc_bcast_get_mtu()
90 void tipc_bcast_disable_rcast(struct net *net) in tipc_bcast_disable_rcast() argument
92 tipc_bc_base(net)->rcast_support = false; in tipc_bcast_disable_rcast()
95 static void tipc_bcbase_calc_bc_threshold(struct net *net) in tipc_bcbase_calc_bc_threshold() argument
97 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bcbase_calc_bc_threshold()
98 int cluster_size = tipc_link_bc_peers(tipc_bc_sndlink(net)); in tipc_bcbase_calc_bc_threshold()
106 static void tipc_bcbase_select_primary(struct net *net) in tipc_bcbase_select_primary() argument
108 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bcbase_select_primary()
122 mtu = tipc_bearer_mtu(net, i); in tipc_bcbase_select_primary()
125 bb->bcast_support &= tipc_bearer_bcast_support(net, i); in tipc_bcbase_select_primary()
132 if ((i ^ tipc_own_addr(net)) & 1) in tipc_bcbase_select_primary()
137 bb->bcast_support = tipc_bearer_bcast_support(net, prim); in tipc_bcbase_select_primary()
140 void tipc_bcast_inc_bearer_dst_cnt(struct net *net, int bearer_id) in tipc_bcast_inc_bearer_dst_cnt() argument
142 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bcast_inc_bearer_dst_cnt()
144 tipc_bcast_lock(net); in tipc_bcast_inc_bearer_dst_cnt()
146 tipc_bcbase_select_primary(net); in tipc_bcast_inc_bearer_dst_cnt()
147 tipc_bcast_unlock(net); in tipc_bcast_inc_bearer_dst_cnt()
150 void tipc_bcast_dec_bearer_dst_cnt(struct net *net, int bearer_id) in tipc_bcast_dec_bearer_dst_cnt() argument
152 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bcast_dec_bearer_dst_cnt()
154 tipc_bcast_lock(net); in tipc_bcast_dec_bearer_dst_cnt()
156 tipc_bcbase_select_primary(net); in tipc_bcast_dec_bearer_dst_cnt()
157 tipc_bcast_unlock(net); in tipc_bcast_dec_bearer_dst_cnt()
170 static void tipc_bcbase_xmit(struct net *net, struct sk_buff_head *xmitq) in tipc_bcbase_xmit() argument
173 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bcbase_xmit()
183 tipc_bearer_bc_xmit(net, bearer_id, xmitq); in tipc_bcbase_xmit()
199 tipc_bearer_bc_xmit(net, bearer_id, &_xmitq); in tipc_bcbase_xmit()
205 static void tipc_bcast_select_xmit_method(struct net *net, int dests, in tipc_bcast_select_xmit_method() argument
208 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bcast_select_xmit_method()
226 if (!(tipc_net(net)->capabilities & TIPC_MCAST_RBCTL) && in tipc_bcast_select_xmit_method()
252 static int tipc_bcast_xmit(struct net *net, struct sk_buff_head *pkts, in tipc_bcast_xmit() argument
255 struct tipc_link *l = tipc_bc_sndlink(net); in tipc_bcast_xmit()
260 tipc_bcast_lock(net); in tipc_bcast_xmit()
263 tipc_bcast_unlock(net); in tipc_bcast_xmit()
264 tipc_bcbase_xmit(net, &xmitq); in tipc_bcast_xmit()
281 static int tipc_rcast_xmit(struct net *net, struct sk_buff_head *pkts, in tipc_rcast_xmit() argument
297 if (tipc_node_xmit(net, &_pkts, dnode, selector) == -ELINKCONG) in tipc_rcast_xmit()
310 static int tipc_mcast_send_sync(struct net *net, struct sk_buff *skb, in tipc_mcast_send_sync() argument
321 if (!(tipc_net(net)->capabilities & TIPC_MCAST_RBCTL)) in tipc_mcast_send_sync()
351 rc = tipc_bcast_xmit(net, &tmpq, &cong_link_cnt); in tipc_mcast_send_sync()
353 rc = tipc_rcast_xmit(net, &tmpq, dests, &cong_link_cnt); in tipc_mcast_send_sync()
371 int tipc_mcast_xmit(struct net *net, struct sk_buff_head *pkts, in tipc_mcast_xmit() argument
391 tipc_bcast_select_xmit_method(net, dests->remote, method); in tipc_mcast_xmit()
401 rc = tipc_mcast_send_sync(net, skb, method, dests); in tipc_mcast_xmit()
410 rc = tipc_rcast_xmit(net, pkts, dests, cong_link_cnt); in tipc_mcast_xmit()
412 rc = tipc_bcast_xmit(net, pkts, cong_link_cnt); in tipc_mcast_xmit()
416 tipc_loopback_trace(net, &localq); in tipc_mcast_xmit()
417 tipc_sk_mcast_rcv(net, &localq, &inputq); in tipc_mcast_xmit()
429 int tipc_bcast_rcv(struct net *net, struct tipc_link *l, struct sk_buff *skb) in tipc_bcast_rcv() argument
432 struct sk_buff_head *inputq = &tipc_bc_base(net)->inputq; in tipc_bcast_rcv()
438 if (msg_mc_netid(hdr) != tipc_netid(net) || !tipc_link_is_up(l)) { in tipc_bcast_rcv()
443 tipc_bcast_lock(net); in tipc_bcast_rcv()
448 tipc_bcast_unlock(net); in tipc_bcast_rcv()
450 tipc_bcbase_xmit(net, &xmitq); in tipc_bcast_rcv()
454 tipc_sk_rcv(net, inputq); in tipc_bcast_rcv()
463 void tipc_bcast_ack_rcv(struct net *net, struct tipc_link *l, in tipc_bcast_ack_rcv() argument
466 struct sk_buff_head *inputq = &tipc_bc_base(net)->inputq; in tipc_bcast_ack_rcv()
476 tipc_bcast_lock(net); in tipc_bcast_ack_rcv()
478 tipc_bcast_unlock(net); in tipc_bcast_ack_rcv()
480 tipc_bcbase_xmit(net, &xmitq); in tipc_bcast_ack_rcv()
484 tipc_sk_rcv(net, inputq); in tipc_bcast_ack_rcv()
491 int tipc_bcast_sync_rcv(struct net *net, struct tipc_link *l, in tipc_bcast_sync_rcv() argument
494 struct sk_buff_head *inputq = &tipc_bc_base(net)->inputq; in tipc_bcast_sync_rcv()
500 tipc_bcast_lock(net); in tipc_bcast_sync_rcv()
507 tipc_bcast_unlock(net); in tipc_bcast_sync_rcv()
509 tipc_bcbase_xmit(net, &xmitq); in tipc_bcast_sync_rcv()
513 tipc_sk_rcv(net, inputq); in tipc_bcast_sync_rcv()
521 void tipc_bcast_add_peer(struct net *net, struct tipc_link *uc_l, in tipc_bcast_add_peer() argument
524 struct tipc_link *snd_l = tipc_bc_sndlink(net); in tipc_bcast_add_peer()
526 tipc_bcast_lock(net); in tipc_bcast_add_peer()
528 tipc_bcbase_select_primary(net); in tipc_bcast_add_peer()
529 tipc_bcbase_calc_bc_threshold(net); in tipc_bcast_add_peer()
530 tipc_bcast_unlock(net); in tipc_bcast_add_peer()
537 void tipc_bcast_remove_peer(struct net *net, struct tipc_link *rcv_l) in tipc_bcast_remove_peer() argument
539 struct tipc_link *snd_l = tipc_bc_sndlink(net); in tipc_bcast_remove_peer()
540 struct sk_buff_head *inputq = &tipc_bc_base(net)->inputq; in tipc_bcast_remove_peer()
545 tipc_bcast_lock(net); in tipc_bcast_remove_peer()
547 tipc_bcbase_select_primary(net); in tipc_bcast_remove_peer()
548 tipc_bcbase_calc_bc_threshold(net); in tipc_bcast_remove_peer()
549 tipc_bcast_unlock(net); in tipc_bcast_remove_peer()
551 tipc_bcbase_xmit(net, &xmitq); in tipc_bcast_remove_peer()
555 tipc_sk_rcv(net, inputq); in tipc_bcast_remove_peer()
558 int tipc_bclink_reset_stats(struct net *net) in tipc_bclink_reset_stats() argument
560 struct tipc_link *l = tipc_bc_sndlink(net); in tipc_bclink_reset_stats()
565 tipc_bcast_lock(net); in tipc_bclink_reset_stats()
567 tipc_bcast_unlock(net); in tipc_bclink_reset_stats()
571 static int tipc_bc_link_set_queue_limits(struct net *net, u32 limit) in tipc_bc_link_set_queue_limits() argument
573 struct tipc_link *l = tipc_bc_sndlink(net); in tipc_bc_link_set_queue_limits()
581 tipc_bcast_lock(net); in tipc_bc_link_set_queue_limits()
583 tipc_bcast_unlock(net); in tipc_bc_link_set_queue_limits()
587 static int tipc_bc_link_set_broadcast_mode(struct net *net, u32 bc_mode) in tipc_bc_link_set_broadcast_mode() argument
589 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bc_link_set_broadcast_mode()
620 static int tipc_bc_link_set_broadcast_ratio(struct net *net, u32 bc_ratio) in tipc_bc_link_set_broadcast_ratio() argument
622 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bc_link_set_broadcast_ratio()
631 tipc_bcast_lock(net); in tipc_bc_link_set_broadcast_ratio()
632 tipc_bcbase_calc_bc_threshold(net); in tipc_bc_link_set_broadcast_ratio()
633 tipc_bcast_unlock(net); in tipc_bc_link_set_broadcast_ratio()
638 int tipc_nl_bc_link_set(struct net *net, struct nlattr *attrs[]) in tipc_nl_bc_link_set() argument
661 err = tipc_bc_link_set_broadcast_mode(net, bc_mode); in tipc_nl_bc_link_set()
666 err = tipc_bc_link_set_broadcast_ratio(net, bc_ratio); in tipc_nl_bc_link_set()
671 err = tipc_bc_link_set_queue_limits(net, win); in tipc_nl_bc_link_set()
677 int tipc_bcast_init(struct net *net) in tipc_bcast_init() argument
679 struct tipc_net *tn = tipc_net(net); in tipc_bcast_init()
687 spin_lock_init(&tipc_net(net)->bclock); in tipc_bcast_init()
689 if (!tipc_link_bc_create(net, 0, 0, in tipc_bcast_init()
709 void tipc_bcast_stop(struct net *net) in tipc_bcast_stop() argument
711 struct tipc_net *tn = net_generic(net, tipc_net_id); in tipc_bcast_stop()
748 u32 tipc_bcast_get_broadcast_mode(struct net *net) in tipc_bcast_get_broadcast_mode() argument
750 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bcast_get_broadcast_mode()
764 u32 tipc_bcast_get_broadcast_ratio(struct net *net) in tipc_bcast_get_broadcast_ratio() argument
766 struct tipc_bc_base *bb = tipc_bc_base(net); in tipc_bcast_get_broadcast_ratio()
771 void tipc_mcast_filter_msg(struct net *net, struct sk_buff_head *defq, in tipc_mcast_filter_msg() argument
789 if (node == tipc_own_addr(net)) in tipc_mcast_filter_msg()