Home
last modified time | relevance | path

Searched refs:idx_que (Results 1 – 3 of 3) sorted by relevance

/Linux-v5.10/drivers/infiniband/hw/hns/
Dhns_roce_srq.c101 ret = hns_roce_mtr_find(hr_dev, &srq->idx_que.mtr, 0, mtts_idx, in alloc_srqc()
214 struct hns_roce_idx_que *idx_que = &srq->idx_que; in alloc_srq_idx() local
219 srq->idx_que.entry_shift = ilog2(HNS_ROCE_IDX_QUE_ENTRY_SZ); in alloc_srq_idx()
223 srq->idx_que.entry_shift); in alloc_srq_idx()
228 err = hns_roce_mtr_create(hr_dev, &idx_que->mtr, &buf_attr, in alloc_srq_idx()
237 idx_que->bitmap = bitmap_zalloc(srq->wqe_cnt, GFP_KERNEL); in alloc_srq_idx()
238 if (!idx_que->bitmap) { in alloc_srq_idx()
248 hns_roce_mtr_destroy(hr_dev, &idx_que->mtr); in alloc_srq_idx()
255 struct hns_roce_idx_que *idx_que = &srq->idx_que; in free_srq_idx() local
257 bitmap_free(idx_que->bitmap); in free_srq_idx()
[all …]
Dhns_roce_hw_v2.c830 static void *get_idx_buf(struct hns_roce_idx_que *idx_que, int n) in get_idx_buf() argument
832 return hns_roce_buf_offset(idx_que->mtr.kmem, in get_idx_buf()
833 n << idx_que->entry_shift); in get_idx_buf()
841 bitmap_clear(srq->idx_que.bitmap, wqe_index, 1); in hns_roce_free_srq_wqe()
847 static int find_empty_entry(struct hns_roce_idx_que *idx_que, in find_empty_entry() argument
852 if (unlikely(bitmap_full(idx_que->bitmap, size))) in find_empty_entry()
855 wqe_idx = find_first_zero_bit(idx_que->bitmap, size); in find_empty_entry()
857 bitmap_set(idx_que->bitmap, wqe_idx, 1); in find_empty_entry()
896 wqe_idx = find_empty_entry(&srq->idx_que, srq->wqe_cnt); in hns_roce_v2_post_srq_recv()
918 srq_idx = get_idx_buf(&srq->idx_que, ind); in hns_roce_v2_post_srq_recv()
[all …]
Dhns_roce_device.h501 struct hns_roce_idx_que idx_que; member