Lines Matching refs:srqn
60 void mlx4_srq_event(struct mlx4_dev *dev, u32 srqn, int event_type)
67 srq = radix_tree_lookup(&srq_table->tree, srqn & (dev->caps.num_srqs - 1));
74 mlx4_warn(dev, "Async event for bogus SRQ %08x\n", srqn);
121 srq->srqn = mlx4_bitmap_alloc(&srq_table->bitmap);
122 if (srq->srqn == -1)
125 err = mlx4_table_get(dev, &srq_table->table, srq->srqn);
129 err = mlx4_table_get(dev, &srq_table->cmpt_table, srq->srqn);
134 err = radix_tree_insert(&srq_table->tree, srq->srqn, srq);
149 srq->srqn);
159 err = mlx4_SW2HW_SRQ(dev, mailbox, srq->srqn);
171 radix_tree_delete(&srq_table->tree, srq->srqn);
175 mlx4_table_put(dev, &srq_table->cmpt_table, srq->srqn);
178 mlx4_table_put(dev, &srq_table->table, srq->srqn);
181 mlx4_bitmap_free(&srq_table->bitmap, srq->srqn);
192 err = mlx4_HW2SW_SRQ(dev, NULL, srq->srqn);
194 mlx4_warn(dev, "HW2SW_SRQ failed (%d) for SRQN %06x\n", err, srq->srqn);
197 radix_tree_delete(&srq_table->tree, srq->srqn);
204 mlx4_table_put(dev, &srq_table->table, srq->srqn);
205 mlx4_bitmap_free(&srq_table->bitmap, srq->srqn);
211 return mlx4_ARM_SRQ(dev, srq->srqn, limit_watermark);
227 err = mlx4_QUERY_SRQ(dev, mailbox, srq->srqn);