Lines Matching refs:uctx
1048 struct bnxt_re_ucontext *uctx; in bnxt_re_create_ah() local
1052 uctx = to_bnxt_re(ib_uctx, struct bnxt_re_ucontext, ibucontext); in bnxt_re_create_ah()
1053 spin_lock_irqsave(&uctx->sh_lock, flag); in bnxt_re_create_ah()
1054 wrptr = (u32 *)((u8 *)uctx->shpg + BNXT_RE_AVID_OFFT); in bnxt_re_create_ah()
1057 spin_unlock_irqrestore(&uctx->sh_lock, flag); in bnxt_re_create_ah()
3668 BNXT_RE_CQ_PAGE_LIST_DEL(cq->uctx, cq); in bnxt_re_destroy_cq()
3672 if (cq->is_dbr_soft_cq && cq->uctx) { in bnxt_re_destroy_cq()
3675 if (cq->uctx->dbr_recov_cq) { in bnxt_re_destroy_cq()
3676 dbr_page = cq->uctx->dbr_recov_cq_page; in bnxt_re_destroy_cq()
3677 cq->uctx->dbr_recov_cq_page = NULL; in bnxt_re_destroy_cq()
3678 cq->uctx->dbr_recov_cq = NULL; in bnxt_re_destroy_cq()
3721 struct bnxt_re_ucontext *uctx = NULL; in bnxt_re_create_cq() local
3741 uctx = rdma_udata_to_drv_context(udata, in bnxt_re_create_cq()
3744 context = &uctx->ibucontext; in bnxt_re_create_cq()
3766 cq->uctx = uctx; in bnxt_re_create_cq()
3786 entries = bnxt_re_init_depth(cqe + 1, uctx); in bnxt_re_create_cq()
3826 uctx->dbr_recov_cq = cq; in bnxt_re_create_cq()
3827 uctx->dbr_recov_cq_page = dbr_page; in bnxt_re_create_cq()
3847 if (!uctx->dpi.dbr) { in bnxt_re_create_cq()
3848 rc = bnxt_re_get_user_dpi(rdev, uctx); in bnxt_re_create_cq()
3852 qplcq->dpi = &uctx->dpi; in bnxt_re_create_cq()
3896 resp.dbr = (u64)uctx->dpi.umdbr; in bnxt_re_create_cq()
3897 resp.dpi = uctx->dpi.dpi; in bnxt_re_create_cq()
3900 if (uctx->wcdpi.dpi) { in bnxt_re_create_cq()
3901 resp.wcdpi = uctx->wcdpi.dpi; in bnxt_re_create_cq()
3931 BNXT_RE_CQ_PAGE_LIST_ADD(uctx, cq); in bnxt_re_create_cq()
3990 struct bnxt_re_ucontext *uctx = NULL; in bnxt_re_resize_cq() local
4004 uctx = rdma_udata_to_drv_context(udata, in bnxt_re_resize_cq()
4007 context = &uctx->ibucontext; in bnxt_re_resize_cq()
4023 entries = bnxt_re_init_depth(cqe + 1, uctx); in bnxt_re_resize_cq()
4072 cq->qplib_cq.dpi = &uctx->dpi; in bnxt_re_resize_cq()
5255 struct bnxt_re_ucontext *uctx = in bnxt_re_alloc_ucontext() local
5272 uctx->rdev = rdev; in bnxt_re_alloc_ucontext()
5273 uctx->shpg = (void *)__get_free_page(GFP_KERNEL); in bnxt_re_alloc_ucontext()
5274 if (!uctx->shpg) { in bnxt_re_alloc_ucontext()
5279 spin_lock_init(&uctx->sh_lock); in bnxt_re_alloc_ucontext()
5344 uctx->cmask = (uint64_t)resp.comp_mask; in bnxt_re_alloc_ucontext()
5351 INIT_LIST_HEAD(&uctx->cq_list); in bnxt_re_alloc_ucontext()
5352 mutex_init(&uctx->cq_lock); in bnxt_re_alloc_ucontext()
5356 free_page((u64)uctx->shpg); in bnxt_re_alloc_ucontext()
5357 uctx->shpg = NULL; in bnxt_re_alloc_ucontext()
5364 struct bnxt_re_ucontext *uctx = to_bnxt_re(ib_uctx, in bnxt_re_dealloc_ucontext() local
5367 struct bnxt_re_dev *rdev = uctx->rdev; in bnxt_re_dealloc_ucontext()
5370 if (uctx->shpg) in bnxt_re_dealloc_ucontext()
5371 free_page((u64)uctx->shpg); in bnxt_re_dealloc_ucontext()
5373 if (uctx->dpi.dbr) { in bnxt_re_dealloc_ucontext()
5377 if (_is_chip_gen_p5_p7(rdev->chip_ctx) && uctx->wcdpi.dbr) { in bnxt_re_dealloc_ucontext()
5379 &uctx->wcdpi); in bnxt_re_dealloc_ucontext()
5383 uctx->wcdpi.dbr = NULL; in bnxt_re_dealloc_ucontext()
5387 &uctx->dpi); in bnxt_re_dealloc_ucontext()
5391 uctx->dpi.dbr = NULL; in bnxt_re_dealloc_ucontext()
5396 static struct bnxt_re_cq *is_bnxt_re_cq_page(struct bnxt_re_ucontext *uctx, in is_bnxt_re_cq_page() argument
5401 if (!_is_chip_p7(uctx->rdev->chip_ctx)) in is_bnxt_re_cq_page()
5404 mutex_lock(&uctx->cq_lock); in is_bnxt_re_cq_page()
5405 list_for_each_entry(tmp_cq, &uctx->cq_list, cq_list) { in is_bnxt_re_cq_page()
5411 mutex_unlock(&uctx->cq_lock); in is_bnxt_re_cq_page()
5418 struct bnxt_re_ucontext *uctx = to_bnxt_re(ib_uctx, in bnxt_re_mmap() local
5421 struct bnxt_re_dev *rdev = uctx->rdev; in bnxt_re_mmap()
5428 pfn = vtophys(uctx->shpg) >> PAGE_SHIFT; in bnxt_re_mmap()
5429 return rdma_user_mmap_io(&uctx->ibucontext, vma, pfn, PAGE_SIZE, vma->vm_page_prot, NULL); in bnxt_re_mmap()
5431 __func__, __LINE__, (u64) uctx->shpg, vtophys(uctx->shpg), pfn); in bnxt_re_mmap()
5440 pfn = (uctx->wcdpi.umdbr >> PAGE_SHIFT); in bnxt_re_mmap()
5454 pfn = vtophys(uctx->dbr_recov_cq_page) >> PAGE_SHIFT; in bnxt_re_mmap()
5459 cq = is_bnxt_re_cq_page(uctx, vma->vm_pgoff); in bnxt_re_mmap()
5462 rc = rdma_user_mmap_io(&uctx->ibucontext, vma, pfn, PAGE_SIZE, vma->vm_page_prot, NULL); in bnxt_re_mmap()
5477 rc = rdma_user_mmap_io(&uctx->ibucontext, vma, pfn, PAGE_SIZE, vma->vm_page_prot, NULL); in bnxt_re_mmap()
5482 rc = __bnxt_re_set_vma_data(uctx, vma); in bnxt_re_mmap()