Lines Matching defs:rcast
96 * @rcast: associated udp_replicast container
103 struct udp_replicast rcast;
237 struct udp_replicast *rcast;
256 &ub->rcast.dst_cache);
259 list_for_each_entry_rcu(rcast, &ub->rcast.list, list) {
268 err = tipc_udp_xmit(net, _skb, ub, src, &rcast->addr,
269 &rcast->dst_cache);
282 struct udp_replicast *rcast, *tmp;
291 list_for_each_entry_safe(rcast, tmp, &ub->rcast.list, list) {
292 if (!memcmp(&rcast->addr, addr, sizeof(struct udp_media_addr)))
302 struct udp_replicast *rcast;
309 rcast = kmalloc(sizeof(*rcast), GFP_ATOMIC);
310 if (!rcast)
313 if (dst_cache_init(&rcast->dst_cache, GFP_ATOMIC)) {
314 kfree(rcast);
318 memcpy(&rcast->addr, addr, sizeof(struct udp_media_addr));
321 pr_info("New replicast peer: %pI4\n", &rcast->addr.ipv4);
324 pr_info("New replicast peer: %pI6\n", &rcast->addr.ipv6);
327 list_add_rcu(&rcast->list, &ub->rcast.list);
460 struct udp_replicast *rcast, *tmp;
513 list_for_each_entry_safe(rcast, tmp, &ub->rcast.list, list) {
523 err = __tipc_nl_add_udp_addr(skb, &rcast->addr,
563 if (!list_empty(&ub->rcast.list)) {
679 INIT_LIST_HEAD(&ub->rcast.list);
776 err = dst_cache_init(&ub->rcast.dst_cache, GFP_ATOMIC);
795 dst_cache_destroy(&ub->rcast.dst_cache);
806 struct udp_replicast *rcast, *tmp;
808 list_for_each_entry_safe(rcast, tmp, &ub->rcast.list, list) {
809 dst_cache_destroy(&rcast->dst_cache);
810 list_del_rcu(&rcast->list);
811 kfree_rcu(rcast, rcu);
815 dst_cache_destroy(&ub->rcast.dst_cache);