Searched refs:idx_que (Results 1 – 3 of 3) sorted by relevance
| /Linux-v5.10/drivers/infiniband/hw/hns/ |
| D | hns_roce_srq.c | 101 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 …]
|
| D | hns_roce_hw_v2.c | 830 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 …]
|
| D | hns_roce_device.h | 501 struct hns_roce_idx_que idx_que; member
|