Lines Matching refs:mcast
721 struct xenvif_mcast_addr *mcast; in xenvif_mcast_add() local
730 mcast = kzalloc(sizeof(*mcast), GFP_ATOMIC); in xenvif_mcast_add()
731 if (!mcast) in xenvif_mcast_add()
734 ether_addr_copy(mcast->addr, addr); in xenvif_mcast_add()
735 list_add_tail_rcu(&mcast->entry, &vif->fe_mcast_addr); in xenvif_mcast_add()
743 struct xenvif_mcast_addr *mcast; in xenvif_mcast_del() local
745 list_for_each_entry_rcu(mcast, &vif->fe_mcast_addr, entry) { in xenvif_mcast_del()
746 if (ether_addr_equal(addr, mcast->addr)) { in xenvif_mcast_del()
748 list_del_rcu(&mcast->entry); in xenvif_mcast_del()
749 kfree_rcu(mcast, rcu); in xenvif_mcast_del()
757 struct xenvif_mcast_addr *mcast; in xenvif_mcast_match() local
760 list_for_each_entry_rcu(mcast, &vif->fe_mcast_addr, entry) { in xenvif_mcast_match()
761 if (ether_addr_equal(addr, mcast->addr)) { in xenvif_mcast_match()
777 struct xenvif_mcast_addr *mcast; in xenvif_mcast_addr_list_free() local
779 mcast = list_first_entry(&vif->fe_mcast_addr, in xenvif_mcast_addr_list_free()
783 list_del(&mcast->entry); in xenvif_mcast_addr_list_free()
784 kfree(mcast); in xenvif_mcast_addr_list_free()
853 ret = xenvif_mcast_add(queue->vif, extra->u.mcast.addr); in xenvif_tx_build_gops()
867 xenvif_mcast_del(queue->vif, extra->u.mcast.addr); in xenvif_tx_build_gops()