• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /barrelfish-2018-10-04/lib/devif/backends/net/mlx4/drivers/infiniband/core/

Lines Matching refs:mc

201 	struct cma_multicast	*mc;
325 struct cma_multicast *mc = container_of(kref, struct cma_multicast, mcref);
327 kfree(mc->multicast.ib);
328 kfree(mc);
873 struct cma_multicast *mc;
876 mc = container_of(id_priv->mc_list.next,
878 list_del(&mc->list);
881 ib_sa_free_multicast(mc->multicast.ib);
882 kfree(mc);
885 kref_put(&mc->mcref, release_mc);
2898 struct cma_multicast *mc = multicast->context;
2902 id_priv = mc->id_priv;
2915 event.param.ud.private_data = mc->context;
2977 struct cma_multicast *mc)
2990 cma_set_mgid(id_priv, (struct sockaddr *) &mc->addr, &rec.mgid);
3007 mc->multicast.ib = ib_sa_join_multicast(&sa_client, id_priv->id.device,
3010 cma_ib_mc_handler, mc);
3011 if (IS_ERR(mc->multicast.ib))
3012 return PTR_ERR(mc->multicast.ib);
3021 struct cma_multicast *mc = mw->mc;
3022 struct ib_sa_multicast *m = mc->multicast.ib;
3024 mc->multicast.ib->context = mc;
3026 kref_put(&mc->mcref, release_mc);
3057 struct cma_multicast *mc)
3062 struct sockaddr *addr = (struct sockaddr *)&mc->addr;
3065 if (cma_zero_addr((struct sockaddr *)&mc->addr))
3072 mc->multicast.ib = kzalloc(sizeof(struct ib_sa_multicast), GFP_KERNEL);
3073 if (!mc->multicast.ib) {
3078 cma_iboe_set_mgid(addr, &mc->multicast.ib->rec.mgid);
3080 mc->multicast.ib->rec.pkey = cpu_to_be16(0xffff);
3082 mc->multicast.ib->rec.qkey = cpu_to_be32(RDMA_UDP_QKEY);
3091 mc->multicast.ib->rec.rate = iboe_get_rate(ndev);
3092 mc->multicast.ib->rec.hop_limit = 1;
3094 mc->multicast.ib->rec.mtu = iboe_get_mtu(ndev->mtu);
3096 mc->multicast.ib->rec.mtu = iboe_get_mtu(ndev->if_mtu);
3099 if (!mc->multicast.ib->rec.mtu) {
3103 iboe_addr_get_sgid(dev_addr, &mc->multicast.ib->rec.port_gid);
3105 work->mc = mc;
3107 kref_get(&mc->mcref);
3113 kfree(mc->multicast.ib);
3123 struct cma_multicast *mc;
3131 mc = kmalloc(sizeof *mc, GFP_KERNEL);
3132 if (!mc)
3135 memcpy(&mc->addr, addr, ip_addr_size(addr));
3136 mc->context = context;
3137 mc->id_priv = id_priv;
3140 list_add(&mc->list, &id_priv->mc_list);
3147 ret = cma_join_ib_multicast(id_priv, mc);
3150 kref_init(&mc->mcref);
3151 ret = cma_iboe_join_multicast(id_priv, mc);
3164 list_del(&mc->list);
3166 kfree(mc);
3176 struct cma_multicast *mc;
3180 list_for_each_entry(mc, &id_priv->mc_list, list) {
3181 if (!memcmp(&mc->addr, addr, ip_addr_size(addr))) {
3182 list_del(&mc->list);
3187 &mc->multicast.ib->rec.mgid,
3188 mc->multicast.ib->rec.mlid);
3192 ib_sa_free_multicast(mc->multicast.ib);
3193 kfree(mc);
3196 kref_put(&mc->mcref, release_mc);