Lines Matching refs:bmap

39 			struct qed_bmap *bmap, u32 max_count, char *name)  in qed_rdma_bmap_alloc()  argument
43 bmap->max_count = max_count; in qed_rdma_bmap_alloc()
45 bmap->bitmap = bitmap_zalloc(max_count, GFP_KERNEL); in qed_rdma_bmap_alloc()
46 if (!bmap->bitmap) in qed_rdma_bmap_alloc()
49 snprintf(bmap->name, QED_RDMA_MAX_BMAP_NAME, "%s", name); in qed_rdma_bmap_alloc()
56 struct qed_bmap *bmap, u32 *id_num) in qed_rdma_bmap_alloc_id() argument
58 *id_num = find_first_zero_bit(bmap->bitmap, bmap->max_count); in qed_rdma_bmap_alloc_id()
59 if (*id_num >= bmap->max_count) in qed_rdma_bmap_alloc_id()
62 __set_bit(*id_num, bmap->bitmap); in qed_rdma_bmap_alloc_id()
65 bmap->name, *id_num); in qed_rdma_bmap_alloc_id()
71 struct qed_bmap *bmap, u32 id_num) in qed_bmap_set_id() argument
73 if (id_num >= bmap->max_count) in qed_bmap_set_id()
76 __set_bit(id_num, bmap->bitmap); in qed_bmap_set_id()
80 struct qed_bmap *bmap, u32 id_num) in qed_bmap_release_id() argument
84 if (id_num >= bmap->max_count) in qed_bmap_release_id()
87 b_acquired = test_and_clear_bit(id_num, bmap->bitmap); in qed_bmap_release_id()
90 bmap->name, id_num); in qed_bmap_release_id()
95 bmap->name, id_num); in qed_bmap_release_id()
99 struct qed_bmap *bmap, u32 id_num) in qed_bmap_test_id() argument
101 if (id_num >= bmap->max_count) in qed_bmap_test_id()
104 return test_bit(id_num, bmap->bitmap); in qed_bmap_test_id()
107 static bool qed_bmap_is_empty(struct qed_bmap *bmap) in qed_bmap_is_empty() argument
109 return bitmap_empty(bmap->bitmap, bmap->max_count); in qed_bmap_is_empty()
319 struct qed_bmap *bmap, bool check) in qed_rdma_bmap_free() argument
327 weight = bitmap_weight(bmap->bitmap, bmap->max_count); in qed_rdma_bmap_free()
333 bmap->name, bmap->max_count, weight); in qed_rdma_bmap_free()
335 for (bit = 0; bit < bmap->max_count; bit += 512) { in qed_rdma_bmap_free()
336 b = bmap->bitmap + BITS_TO_LONGS(bit); in qed_rdma_bmap_free()
337 nbits = min(bmap->max_count - bit, 512U); in qed_rdma_bmap_free()
345 bitmap_free(bmap->bitmap); in qed_rdma_bmap_free()
346 bmap->bitmap = NULL; in qed_rdma_bmap_free()
1725 struct qed_bmap *bmap; in qed_rdma_destroy_srq() local
1749 bmap = qed_rdma_get_srq_bmap(p_hwfn, in_params->is_xrc); in qed_rdma_destroy_srq()
1753 qed_bmap_release_id(p_hwfn, bmap, in_params->srq_id - offset); in qed_rdma_destroy_srq()
1774 struct qed_bmap *bmap; in qed_rdma_create_srq() local
1779 bmap = qed_rdma_get_srq_bmap(p_hwfn, in_params->is_xrc); in qed_rdma_create_srq()
1781 rc = qed_rdma_bmap_alloc_id(p_hwfn, bmap, &returned_id); in qed_rdma_create_srq()
1844 qed_bmap_release_id(p_hwfn, bmap, returned_id); in qed_rdma_create_srq()