Lines Matching refs:mgid
31 static int rxe_mcast_add(struct rxe_dev *rxe, union ib_gid *mgid) in rxe_mcast_add() argument
35 ipv6_eth_mc_map((struct in6_addr *)mgid->raw, ll_addr); in rxe_mcast_add()
47 static int rxe_mcast_del(struct rxe_dev *rxe, union ib_gid *mgid) in rxe_mcast_del() argument
51 ipv6_eth_mc_map((struct in6_addr *)mgid->raw, ll_addr); in rxe_mcast_del()
75 cmp = memcmp(&tmp->mgid, &mcg->mgid, sizeof(mcg->mgid)); in __rxe_insert_mcg()
106 union ib_gid *mgid) in __rxe_lookup_mcg() argument
118 cmp = memcmp(&mcg->mgid, mgid, sizeof(*mgid)); in __rxe_lookup_mcg()
143 struct rxe_mcg *rxe_lookup_mcg(struct rxe_dev *rxe, union ib_gid *mgid) in rxe_lookup_mcg() argument
148 mcg = __rxe_lookup_mcg(rxe, mgid); in rxe_lookup_mcg()
162 static void __rxe_init_mcg(struct rxe_dev *rxe, union ib_gid *mgid, in __rxe_init_mcg() argument
166 memcpy(&mcg->mgid, mgid, sizeof(mcg->mgid)); in __rxe_init_mcg()
188 static struct rxe_mcg *rxe_get_mcg(struct rxe_dev *rxe, union ib_gid *mgid) in rxe_get_mcg() argument
197 mcg = rxe_lookup_mcg(rxe, mgid); in rxe_get_mcg()
216 tmp = __rxe_lookup_mcg(rxe, mgid); in rxe_get_mcg()
224 __rxe_init_mcg(rxe, mgid, mcg); in rxe_get_mcg()
228 err = rxe_mcast_add(rxe, mgid); in rxe_get_mcg()
276 rxe_mcast_del(mcg->rxe, &mcg->mgid); in rxe_destroy_mcg()
433 int rxe_attach_mcast(struct ib_qp *ibqp, union ib_gid *mgid, u16 mlid) in rxe_attach_mcast() argument
441 mcg = rxe_get_mcg(rxe, mgid); in rxe_attach_mcast()
464 int rxe_detach_mcast(struct ib_qp *ibqp, union ib_gid *mgid, u16 mlid) in rxe_detach_mcast() argument
471 mcg = rxe_lookup_mcg(rxe, mgid); in rxe_detach_mcast()