Lines Matching refs:ibp
148 struct rvt_mcast *rvt_mcast_find(struct rvt_ibport *ibp, union ib_gid *mgid, in rvt_mcast_find() argument
155 spin_lock_irqsave(&ibp->lock, flags); in rvt_mcast_find()
156 n = ibp->mcast_tree.rb_node; in rvt_mcast_find()
178 spin_unlock_irqrestore(&ibp->lock, flags); in rvt_mcast_find()
193 static int rvt_mcast_add(struct rvt_dev_info *rdi, struct rvt_ibport *ibp, in rvt_mcast_add() argument
196 struct rb_node **n = &ibp->mcast_tree.rb_node; in rvt_mcast_add()
200 spin_lock_irq(&ibp->lock); in rvt_mcast_add()
262 rb_insert_color(&mcast->rb_node, &ibp->mcast_tree); in rvt_mcast_add()
267 spin_unlock_irq(&ibp->lock); in rvt_mcast_add()
284 struct rvt_ibport *ibp = rdi->ports[qp->port_num - 1]; in rvt_attach_mcast() local
304 switch (rvt_mcast_add(rdi, ibp, mcast, mqp)) { in rvt_attach_mcast()
347 struct rvt_ibport *ibp = rdi->ports[qp->port_num - 1]; in rvt_detach_mcast() local
357 spin_lock_irq(&ibp->lock); in rvt_detach_mcast()
360 n = ibp->mcast_tree.rb_node; in rvt_detach_mcast()
363 spin_unlock_irq(&ibp->lock); in rvt_detach_mcast()
377 spin_unlock_irq(&ibp->lock); in rvt_detach_mcast()
398 rb_erase(&mcast->rb_node, &ibp->mcast_tree); in rvt_detach_mcast()
404 spin_unlock_irq(&ibp->lock); in rvt_detach_mcast()