Lines Matching refs:srq_table
62 struct mlx4_srq_table *srq_table = &mlx4_priv(dev)->srq_table;
65 spin_lock(&srq_table->lock);
67 srq = radix_tree_lookup(&srq_table->tree, srqn & (dev->caps.num_srqs - 1));
71 spin_unlock(&srq_table->lock);
108 struct mlx4_srq_table *srq_table = &mlx4_priv(dev)->srq_table;
114 srq->srqn = mlx4_bitmap_alloc(&srq_table->bitmap);
118 err = mlx4_table_get(dev, &srq_table->table, srq->srqn);
122 err = mlx4_table_get(dev, &srq_table->cmpt_table, srq->srqn);
126 spin_lock_irq(&srq_table->lock);
127 err = radix_tree_insert(&srq_table->tree, srq->srqn, srq);
128 spin_unlock_irq(&srq_table->lock);
163 spin_lock_irq(&srq_table->lock);
164 radix_tree_delete(&srq_table->tree, srq->srqn);
165 spin_unlock_irq(&srq_table->lock);
168 mlx4_table_put(dev, &srq_table->cmpt_table, srq->srqn);
171 mlx4_table_put(dev, &srq_table->table, srq->srqn);
174 mlx4_bitmap_free(&srq_table->bitmap, srq->srqn);
182 struct mlx4_srq_table *srq_table = &mlx4_priv(dev)->srq_table;
189 spin_lock_irq(&srq_table->lock);
190 radix_tree_delete(&srq_table->tree, srq->srqn);
191 spin_unlock_irq(&srq_table->lock);
197 mlx4_table_put(dev, &srq_table->table, srq->srqn);
198 mlx4_bitmap_free(&srq_table->bitmap, srq->srqn);
210 struct mlx4_srq_table *srq_table = &mlx4_priv(dev)->srq_table;
213 spin_lock_init(&srq_table->lock);
214 INIT_RADIX_TREE(&srq_table->tree, GFP_ATOMIC);
216 err = mlx4_bitmap_init(&srq_table->bitmap, dev->caps.num_srqs,
226 mlx4_bitmap_cleanup(&mlx4_priv(dev)->srq_table.bitmap);