Lines Matching refs:ibp
104 * @ibp: the IB port structure
111 struct qib_mcast *qib_mcast_find(struct qib_ibport *ibp, union ib_gid *mgid)
117 spin_lock_irqsave(&ibp->lock, flags);
118 n = ibp->mcast_tree.rb_node;
132 spin_unlock_irqrestore(&ibp->lock, flags);
136 spin_unlock_irqrestore(&ibp->lock, flags);
153 static int qib_mcast_add(struct qib_ibdev *dev, struct qib_ibport *ibp,
156 struct rb_node **n = &ibp->mcast_tree.rb_node;
160 spin_lock_irq(&ibp->lock);
215 rb_insert_color(&mcast->rb_node, &ibp->mcast_tree);
220 spin_unlock_irq(&ibp->lock);
229 struct qib_ibport *ibp;
254 ibp = to_iport(ibqp->device, qp->port_num);
255 switch (qib_mcast_add(dev, ibp, mcast, mqp)) {
287 struct qib_ibport *ibp = to_iport(ibqp->device, qp->port_num);
299 spin_lock_irq(&ibp->lock);
302 n = ibp->mcast_tree.rb_node;
305 spin_unlock_irq(&ibp->lock);
334 rb_erase(&mcast->rb_node, &ibp->mcast_tree);
340 spin_unlock_irq(&ibp->lock);
365 int qib_mcast_tree_empty(struct qib_ibport *ibp)
367 return ibp->mcast_tree.rb_node == NULL;