Lines Matching refs:cq_table
81 cq = radix_tree_lookup(&mlx4_priv(dev)->cq_table.tree,
95 struct mlx4_cq_table *cq_table = &mlx4_priv(dev)->cq_table;
98 spin_lock(&cq_table->lock);
100 cq = radix_tree_lookup(&cq_table->tree, cqn & (dev->caps.num_cqs - 1));
104 spin_unlock(&cq_table->lock);
136 struct mlx4_cq_table *cq_table = &priv->cq_table;
142 cq->cqn = mlx4_bitmap_alloc(&cq_table->bitmap);
146 err = mlx4_table_get(dev, &cq_table->table, cq->cqn);
150 err = mlx4_table_get(dev, &cq_table->cmpt_table, cq->cqn);
154 spin_lock_irq(&cq_table->lock);
155 err = radix_tree_insert(&cq_table->tree, cq->cqn, cq);
156 spin_unlock_irq(&cq_table->lock);
192 spin_lock_irq(&cq_table->lock);
193 radix_tree_delete(&cq_table->tree, cq->cqn);
194 spin_unlock_irq(&cq_table->lock);
197 mlx4_table_put(dev, &cq_table->cmpt_table, cq->cqn);
200 mlx4_table_put(dev, &cq_table->table, cq->cqn);
203 mlx4_bitmap_free(&cq_table->bitmap, cq->cqn);
212 struct mlx4_cq_table *cq_table = &priv->cq_table;
221 spin_lock_irq(&cq_table->lock);
222 radix_tree_delete(&cq_table->tree, cq->cqn);
223 spin_unlock_irq(&cq_table->lock);
229 mlx4_table_put(dev, &cq_table->table, cq->cqn);
230 mlx4_bitmap_free(&cq_table->bitmap, cq->cqn);
236 struct mlx4_cq_table *cq_table = &mlx4_priv(dev)->cq_table;
239 spin_lock_init(&cq_table->lock);
240 INIT_RADIX_TREE(&cq_table->tree, GFP_ATOMIC);
242 err = mlx4_bitmap_init(&cq_table->bitmap, dev->caps.num_cqs,
253 mlx4_bitmap_cleanup(&mlx4_priv(dev)->cq_table.bitmap);