Lines Matching full:broadcast

104 		 * allocate the broadcast multicast group, wait  in __ipoib_mcast_schedule_join_thread()
225 * the broadcast group. in ipoib_mcast_join_finish()
227 if (!memcmp(mcast->mcmember.mgid.raw, priv->dev->broadcast + 4, in ipoib_mcast_join_finish()
230 if (!priv->broadcast) { in ipoib_mcast_join_finish()
235 priv->broadcast->mcmember.qkey = mcmember->qkey; in ipoib_mcast_join_finish()
236 priv->broadcast->mcmember.mtu = mcmember->mtu; in ipoib_mcast_join_finish()
237 priv->broadcast->mcmember.traffic_class = mcmember->traffic_class; in ipoib_mcast_join_finish()
238 priv->broadcast->mcmember.rate = mcmember->rate; in ipoib_mcast_join_finish()
239 priv->broadcast->mcmember.sl = mcmember->sl; in ipoib_mcast_join_finish()
240 priv->broadcast->mcmember.flow_label = mcmember->flow_label; in ipoib_mcast_join_finish()
241 priv->broadcast->mcmember.hop_limit = mcmember->hop_limit; in ipoib_mcast_join_finish()
244 priv->broadcast->mcmember.mtu); in ipoib_mcast_join_finish()
250 priv->qkey = be32_to_cpu(priv->broadcast->mcmember.qkey); in ipoib_mcast_join_finish()
338 * It done here after the successfully join to the broadcast group, in ipoib_mcast_carrier_on_task()
339 * because the broadcast group must always be joined first and is always in ipoib_mcast_carrier_on_task()
396 * send out all of the non-broadcast joins in ipoib_mcast_join_complete()
398 if (mcast == priv->broadcast) { in ipoib_mcast_join_complete()
481 if (!priv->broadcast || in ipoib_mcast_join()
500 if (mcast != priv->broadcast) { in ipoib_mcast_join()
504 * and HopLimit as those used in the broadcast-GID. The rest in ipoib_mcast_join()
506 * broadcast-GID as well. in ipoib_mcast_join()
519 rec.qkey = priv->broadcast->mcmember.qkey; in ipoib_mcast_join()
521 rec.mtu = priv->broadcast->mcmember.mtu; in ipoib_mcast_join()
522 rec.traffic_class = priv->broadcast->mcmember.traffic_class; in ipoib_mcast_join()
524 rec.rate = priv->broadcast->mcmember.rate; in ipoib_mcast_join()
525 rec.sl = priv->broadcast->mcmember.sl; in ipoib_mcast_join()
526 rec.flow_label = priv->broadcast->mcmember.flow_label; in ipoib_mcast_join()
527 rec.hop_limit = priv->broadcast->mcmember.hop_limit; in ipoib_mcast_join()
598 if (!priv->broadcast) { in ipoib_mcast_join_task()
599 struct ipoib_mcast *broadcast; in ipoib_mcast_join_task() local
601 broadcast = ipoib_mcast_alloc(dev); in ipoib_mcast_join_task()
602 if (!broadcast) { in ipoib_mcast_join_task()
603 ipoib_warn(priv, "failed to allocate broadcast group\n"); in ipoib_mcast_join_task()
606 * creating our broadcast group and attaching to in ipoib_mcast_join_task()
614 memcpy(broadcast->mcmember.mgid.raw, priv->dev->broadcast + 4, in ipoib_mcast_join_task()
616 priv->broadcast = broadcast; in ipoib_mcast_join_task()
618 __ipoib_mcast_add(dev, priv->broadcast); in ipoib_mcast_join_task()
621 if (!test_bit(IPOIB_MCAST_FLAG_ATTACHED, &priv->broadcast->flags)) { in ipoib_mcast_join_task()
622 if (IS_ERR_OR_NULL(priv->broadcast->mc) && in ipoib_mcast_join_task()
623 !test_bit(IPOIB_MCAST_FLAG_BUSY, &priv->broadcast->flags)) { in ipoib_mcast_join_task()
624 mcast = priv->broadcast; in ipoib_mcast_join_task()
635 * We'll never get here until the broadcast group is both allocated in ipoib_mcast_join_task()
768 !priv->broadcast || in ipoib_mcast_send()
769 !test_bit(IPOIB_MCAST_FLAG_ATTACHED, &priv->broadcast->flags)) { in ipoib_mcast_send()
856 if (priv->broadcast) { in ipoib_mcast_dev_flush()
857 rb_erase(&priv->broadcast->rb_node, &priv->multicast_tree); in ipoib_mcast_dev_flush()
858 list_add_tail(&priv->broadcast->list, &remove_list); in ipoib_mcast_dev_flush()
859 priv->broadcast = NULL; in ipoib_mcast_dev_flush()
868 static int ipoib_mcast_addr_is_valid(const u8 *addr, const u8 *broadcast) in ipoib_mcast_addr_is_valid() argument
871 if (memcmp(addr, broadcast, 6)) in ipoib_mcast_addr_is_valid()
874 if (memcmp(addr + 7, broadcast + 7, 3)) in ipoib_mcast_addr_is_valid()
915 if (!ipoib_mcast_addr_is_valid(ha->addr, dev->broadcast)) in ipoib_mcast_restart_task()