Lines Matching refs:nes_ucontext
539 struct nes_ucontext *nes_ucontext; in nes_alloc_ucontext() local
563 nes_ucontext = kzalloc(sizeof *nes_ucontext, GFP_KERNEL); in nes_alloc_ucontext()
564 if (!nes_ucontext) in nes_alloc_ucontext()
567 nes_ucontext->nesdev = nesdev; in nes_alloc_ucontext()
568 nes_ucontext->mmap_wq_offset = uresp.max_pds; in nes_alloc_ucontext()
569 nes_ucontext->mmap_cq_offset = nes_ucontext->mmap_wq_offset + in nes_alloc_ucontext()
575 kfree(nes_ucontext); in nes_alloc_ucontext()
579 INIT_LIST_HEAD(&nes_ucontext->cq_reg_mem_list); in nes_alloc_ucontext()
580 INIT_LIST_HEAD(&nes_ucontext->qp_reg_mem_list); in nes_alloc_ucontext()
581 atomic_set(&nes_ucontext->usecnt, 1); in nes_alloc_ucontext()
582 return &nes_ucontext->ibucontext; in nes_alloc_ucontext()
593 struct nes_ucontext *nes_ucontext = to_nesucontext(context); in nes_dealloc_ucontext() local
595 if (!atomic_dec_and_test(&nes_ucontext->usecnt)) in nes_dealloc_ucontext()
597 kfree(nes_ucontext); in nes_dealloc_ucontext()
611 struct nes_ucontext *nes_ucontext; in nes_mmap() local
614 nes_ucontext = to_nesucontext(context); in nes_mmap()
617 if (vma->vm_pgoff >= nes_ucontext->mmap_wq_offset) { in nes_mmap()
618 index = (vma->vm_pgoff - nes_ucontext->mmap_wq_offset) * PAGE_SIZE; in nes_mmap()
621 if (!test_bit(index, nes_ucontext->allocated_wqs)) { in nes_mmap()
625 nesqp = nes_ucontext->mmap_nesqp[index]; in nes_mmap()
641 if (!test_bit(index, nes_ucontext->allocated_doorbells)) in nes_mmap()
647 ((nes_ucontext->mmap_db_index[index] - nesdev->base_doorbell_index) * 4096)) in nes_mmap()
650 vma->vm_private_data = nes_ucontext; in nes_mmap()
668 struct nes_ucontext *nesucontext; in nes_alloc_pd()
730 struct nes_ucontext *nesucontext; in nes_dealloc_pd()
988 struct nes_ucontext *nes_ucontext; in nes_create_qp() local
1071 nes_ucontext = to_nesucontext(ibpd->uobject->context); in nes_create_qp()
1074 list_for_each_entry(nespbl, &nes_ucontext->qp_reg_mem_list, list) { in nes_create_qp()
1092 nes_ucontext = to_nesucontext(ibpd->uobject->context); in nes_create_qp()
1094 find_next_zero_bit(nes_ucontext->allocated_wqs, in nes_create_qp()
1095 NES_MAX_USER_WQ_REGIONS, nes_ucontext->first_free_wq); in nes_create_qp()
1110 set_bit(nesqp->mmap_sq_db_index, nes_ucontext->allocated_wqs); in nes_create_qp()
1111 nes_ucontext->mmap_nesqp[nesqp->mmap_sq_db_index] = nesqp; in nes_create_qp()
1112 nes_ucontext->first_free_wq = nesqp->mmap_sq_db_index + 1; in nes_create_qp()
1338 struct nes_ucontext *nes_ucontext; in nes_destroy_qp() local
1376 nes_ucontext = to_nesucontext(ibqp->uobject->context); in nes_destroy_qp()
1377 clear_bit(nesqp->mmap_sq_db_index, nes_ucontext->allocated_wqs); in nes_destroy_qp()
1378 nes_ucontext->mmap_nesqp[nesqp->mmap_sq_db_index] = NULL; in nes_destroy_qp()
1379 if (nes_ucontext->first_free_wq > nesqp->mmap_sq_db_index) { in nes_destroy_qp()
1380 nes_ucontext->first_free_wq = nesqp->mmap_sq_db_index; in nes_destroy_qp()
1414 struct nes_ucontext *nes_ucontext = NULL; in nes_create_cq() local
1452 nes_ucontext = to_nesucontext(context); in nes_create_cq()
1458 nesvnic->mcrq_ucontext = nes_ucontext; in nes_create_cq()
1459 nes_ucontext->mcrqf = req.mcrqf; in nes_create_cq()
1460 if (nes_ucontext->mcrqf) { in nes_create_cq()
1461 if (nes_ucontext->mcrqf & 0x80000000) in nes_create_cq()
1462 nescq->hw_cq.cq_number = nesvnic->nic.qp_id + 28 + 2 * ((nes_ucontext->mcrqf & 0xf) - 1); in nes_create_cq()
1463 else if (nes_ucontext->mcrqf & 0x40000000) in nes_create_cq()
1464 nescq->hw_cq.cq_number = nes_ucontext->mcrqf & 0xffff; in nes_create_cq()
1466 nescq->hw_cq.cq_number = nesvnic->mcrq_qp_id + nes_ucontext->mcrqf-1; in nes_create_cq()
1467 nescq->mcrqf = nes_ucontext->mcrqf; in nes_create_cq()
1473 list_for_each_entry(nespbl, &nes_ucontext->cq_reg_mem_list, list) { in nes_create_cq()
1602 nes_ucontext->mmap_db_index[0]); in nes_create_cq()
2113 struct nes_ucontext *nes_ucontext; in nes_reg_user_mr() local
2386 nes_ucontext = to_nesucontext(pd->uobject->context); in nes_reg_user_mr()
2438 list_add_tail(&nespbl->list, &nes_ucontext->qp_reg_mem_list); in nes_reg_user_mr()
2440 list_add_tail(&nespbl->list, &nes_ucontext->cq_reg_mem_list); in nes_reg_user_mr()