/Linux-v4.19/drivers/infiniband/core/ |
D | uverbs_std_types.c | 42 static int uverbs_free_ah(struct ib_uobject *uobject, in uverbs_free_ah() argument 45 return rdma_destroy_ah((struct ib_ah *)uobject->object); in uverbs_free_ah() 48 static int uverbs_free_flow(struct ib_uobject *uobject, in uverbs_free_flow() argument 51 struct ib_flow *flow = (struct ib_flow *)uobject->object; in uverbs_free_flow() 53 container_of(uobject, struct ib_uflow_object, uobject); in uverbs_free_flow() 67 static int uverbs_free_mw(struct ib_uobject *uobject, in uverbs_free_mw() argument 70 return uverbs_dealloc_mw((struct ib_mw *)uobject->object); in uverbs_free_mw() 73 static int uverbs_free_qp(struct ib_uobject *uobject, in uverbs_free_qp() argument 76 struct ib_qp *qp = uobject->object; in uverbs_free_qp() 78 container_of(uobject, struct ib_uqp_object, uevent.uobject); in uverbs_free_qp() [all …]
|
D | uverbs_std_types_cq.c | 37 static int uverbs_free_cq(struct ib_uobject *uobject, in uverbs_free_cq() argument 40 struct ib_cq *cq = uobject->object; in uverbs_free_cq() 43 container_of(uobject, struct ib_ucq_object, uobject); in uverbs_free_cq() 47 if (ib_is_destroy_retryable(ret, why, uobject)) in uverbs_free_cq() 51 uobject->context->ufile, in uverbs_free_cq() 65 typeof(*obj), uobject); in UVERBS_HANDLER() 66 struct ib_device *ib_dev = obj->uobject.context->device; in UVERBS_HANDLER() 117 cq = ib_dev->create_cq(ib_dev, &attr, obj->uobject.context, &uhw); in UVERBS_HANDLER() 124 cq->uobject = &obj->uobject; in UVERBS_HANDLER() 128 obj->uobject.object = cq; in UVERBS_HANDLER() [all …]
|
D | uverbs_std_types_dm.c | 36 static int uverbs_free_dm(struct ib_uobject *uobject, in uverbs_free_dm() argument 39 struct ib_dm *dm = uobject->object; in uverbs_free_dm() 42 ret = ib_destroy_usecnt(&dm->usecnt, why, uobject); in uverbs_free_dm() 56 ->obj_attr.uobject; in UVERBS_HANDLER() 80 dm->uobject = uobj; in UVERBS_HANDLER()
|
D | uverbs_std_types_counters.c | 37 static int uverbs_free_counters(struct ib_uobject *uobject, in uverbs_free_counters() argument 40 struct ib_counters *counters = uobject->object; in uverbs_free_counters() 43 ret = ib_destroy_usecnt(&counters->usecnt, why, uobject); in uverbs_free_counters() 74 counters->uobject = uobj; in UVERBS_HANDLER()
|
D | uverbs_cmd.c | 381 pd->uobject = uobj; in ib_uverbs_alloc_pd() 562 xrcd = ib_dev->alloc_xrcd(ib_dev, obj->uobject.context, &udata); in ib_uverbs_open_xrcd() 577 obj->uobject.object = xrcd; in ib_uverbs_open_xrcd() 579 resp.xrcd_handle = obj->uobject.id; in ib_uverbs_open_xrcd() 601 return uobj_alloc_commit(&obj->uobject, in_len); in ib_uverbs_open_xrcd() 614 uobj_alloc_abort(&obj->uobject); in ib_uverbs_open_xrcd() 638 int ib_uverbs_dealloc_xrcd(struct ib_uobject *uobject, in ib_uverbs_dealloc_xrcd() argument 644 struct ib_uverbs_device *dev = uobject->context->ufile->device; in ib_uverbs_dealloc_xrcd() 652 if (ib_is_destroy_retryable(ret, why, uobject)) { in ib_uverbs_dealloc_xrcd() 723 mr->uobject = uobj; in ib_uverbs_reg_mr() [all …]
|
D | restrack.c | 144 return container_of(res, struct ib_pd, res)->uobject; in res_is_user() 146 return container_of(res, struct ib_cq, res)->uobject; in res_is_user() 148 return container_of(res, struct ib_qp, res)->uobject; in res_is_user() 152 return container_of(res, struct ib_mr, res)->pd->uobject; in res_is_user()
|
D | uverbs_std_types_mr.c | 36 static int uverbs_free_mr(struct ib_uobject *uobject, in uverbs_free_mr() argument 39 return ib_dereg_mr((struct ib_mr *)uobject->object); in uverbs_free_mr() 93 mr->uobject = uobj; in UVERBS_HANDLER()
|
D | uverbs_main.c | 491 uobj = container_of(cq->uobject, struct ib_ucq_object, uobject); in ib_uverbs_comp_handler() 493 entry->desc.comp.cq_handle = cq->uobject->user_handle; in ib_uverbs_comp_handler() 540 struct ib_ucq_object *uobj = container_of(event->element.cq->uobject, in ib_uverbs_cq_event_handler() 541 struct ib_ucq_object, uobject); in ib_uverbs_cq_event_handler() 543 ib_uverbs_async_handler(uobj->uobject.ufile, uobj->uobject.user_handle, in ib_uverbs_cq_event_handler() 553 if (!event->element.qp->uobject) in ib_uverbs_qp_event_handler() 556 uobj = container_of(event->element.qp->uobject, in ib_uverbs_qp_event_handler() 557 struct ib_uevent_object, uobject); in ib_uverbs_qp_event_handler() 559 ib_uverbs_async_handler(context_ptr, uobj->uobject.user_handle, in ib_uverbs_qp_event_handler() 566 struct ib_uevent_object *uobj = container_of(event->element.wq->uobject, in ib_uverbs_wq_event_handler() [all …]
|
D | uverbs.h | 186 struct ib_uobject uobject; member 192 struct ib_uobject uobject; member 214 struct ib_uobject uobject; member 223 struct ib_uobject uobject; member 248 int ib_uverbs_dealloc_xrcd(struct ib_uobject *uobject, struct ib_xrcd *xrcd,
|
D | rdma_core.h | 59 void uverbs_uobject_get(struct ib_uobject *uobject); 66 void uverbs_uobject_put(struct ib_uobject *uobject);
|
D | uverbs_ioctl.c | 230 o_attr->uobject = uverbs_get_uobject_from_file( in uverbs_process_attr() 235 if (IS_ERR(o_attr->uobject)) in uverbs_process_attr() 236 return PTR_ERR(o_attr->uobject); in uverbs_process_attr() 241 s64 id = o_attr->uobject->id; in uverbs_process_attr() 358 ret = uobj_destroy(destroy_attr->uobject); in ib_uverbs_run_method() 364 uobj_put_destroy(destroy_attr->uobject); in ib_uverbs_run_method() 394 attr->obj_attr.uobject, in bundle_destroy()
|
D | rdma_core.c | 45 void uverbs_uobject_get(struct ib_uobject *uobject) in uverbs_uobject_get() argument 47 kref_get(&uobject->ref); in uverbs_uobject_get() 61 void uverbs_uobject_put(struct ib_uobject *uobject) in uverbs_uobject_put() argument 63 kref_put(&uobject->ref, uverbs_uobject_free); in uverbs_uobject_put() 360 struct ib_uobject *uobject; in lookup_get_fd_uobject() local 378 uobject = f->private_data; in lookup_get_fd_uobject() 389 uverbs_uobject_get(uobject); in lookup_get_fd_uobject() 390 return uobject; in lookup_get_fd_uobject()
|
D | uverbs_std_types_flow_action.c | 36 static int uverbs_free_flow_action(struct ib_uobject *uobject, in uverbs_free_flow_action() argument 39 struct ib_flow_action *action = uobject->object; in uverbs_free_flow_action() 42 ret = ib_destroy_usecnt(&action->usecnt, why, uobject); in uverbs_free_flow_action() 332 action->uobject = uobj; in UVERBS_HANDLER()
|
/Linux-v4.19/drivers/infiniband/hw/mlx4/ |
D | srq.c | 108 if (pd->uobject) { in mlx4_ib_create_srq() 116 srq->umem = ib_umem_get(pd->uobject->context, ucmd.buf_addr, in mlx4_ib_create_srq() 132 err = mlx4_ib_db_map_user(to_mucontext(pd->uobject->context), in mlx4_ib_create_srq() 194 if (pd->uobject) in mlx4_ib_create_srq() 205 if (pd->uobject) in mlx4_ib_create_srq() 206 mlx4_ib_db_unmap_user(to_mucontext(pd->uobject->context), &srq->db); in mlx4_ib_create_srq() 214 if (pd->uobject) in mlx4_ib_create_srq() 220 if (!pd->uobject) in mlx4_ib_create_srq() 281 if (srq->uobject) { in mlx4_ib_destroy_srq() 282 mlx4_ib_db_unmap_user(to_mucontext(srq->uobject->context), &msrq->db); in mlx4_ib_destroy_srq()
|
D | cq.c | 406 if (ibcq->uobject) { in mlx4_ib_resize_cq() 430 if (ibcq->uobject) { in mlx4_ib_resize_cq() 464 if (!ibcq->uobject) in mlx4_ib_resize_cq() 490 if (cq->uobject) { in mlx4_ib_destroy_cq() 491 mlx4_ib_db_unmap_user(to_mucontext(cq->uobject->context), &mcq->db); in mlx4_ib_destroy_cq()
|
/Linux-v4.19/drivers/infiniband/hw/mlx5/ |
D | srq.c | 105 err = get_srq_user_index(to_mucontext(pd->uobject->context), in create_srq_user() 113 srq->umem = ib_umem_get(pd->uobject->context, ucmd.buf_addr, buf_size, in create_srq_user() 138 err = mlx5_ib_db_map_user(to_mucontext(pd->uobject->context), in create_srq_user() 226 mlx5_ib_db_unmap_user(to_mucontext(pd->uobject->context), &srq->db); in destroy_srq_user() 289 if (pd->uobject) in mlx5_ib_create_srq() 296 pd->uobject ? "user" : "kernel", err); in mlx5_ib_create_srq() 341 if (pd->uobject) in mlx5_ib_create_srq() 356 if (pd->uobject) in mlx5_ib_create_srq() 424 if (srq->uobject) { in mlx5_ib_destroy_srq() 425 mlx5_ib_db_unmap_user(to_mucontext(srq->uobject->context), &msrq->db); in mlx5_ib_destroy_srq()
|
D | flow.c | 116 static int flow_matcher_cleanup(struct ib_uobject *uobject, in flow_matcher_cleanup() argument 119 struct mlx5_ib_flow_matcher *obj = uobject->object; in flow_matcher_cleanup() 122 ret = ib_destroy_usecnt(&obj->usecnt, why, uobject); in flow_matcher_cleanup()
|
D | devx.c | 700 static int devx_obj_cleanup(struct ib_uobject *uobject, in devx_obj_cleanup() argument 704 struct devx_obj *obj = uobject->object; in devx_obj_cleanup() 708 if (ib_is_destroy_retryable(ret, why, uobject)) in devx_obj_cleanup() 971 static int devx_umem_cleanup(struct ib_uobject *uobject, in devx_umem_cleanup() argument 974 struct devx_umem *obj = uobject->object; in devx_umem_cleanup() 979 if (ib_is_destroy_retryable(err, why, uobject)) in devx_umem_cleanup()
|
/Linux-v4.19/drivers/infiniband/hw/mthca/ |
D | mthca_provider.c | 458 if (pd->uobject) { in mthca_create_srq() 459 context = to_mucontext(pd->uobject->context); in mthca_create_srq() 480 if (err && pd->uobject) in mthca_create_srq() 505 if (srq->uobject) { in mthca_destroy_srq() 506 context = to_mucontext(srq->uobject->context); in mthca_destroy_srq() 540 if (pd->uobject) { in mthca_create_qp() 541 context = to_mucontext(pd->uobject->context); in mthca_create_qp() 579 if (err && pd->uobject) { in mthca_create_qp() 580 context = to_mucontext(pd->uobject->context); in mthca_create_qp() 599 if (pd->uobject) in mthca_create_qp() [all …]
|
D | mthca_srq.c | 106 if (pd->ibpd.uobject) in mthca_tavor_init_srq_context() 108 cpu_to_be32(to_mucontext(pd->ibpd.uobject->context)->uar.index); in mthca_tavor_init_srq_context() 132 if (pd->ibpd.uobject) in mthca_arbel_init_srq_context() 134 cpu_to_be32(to_mucontext(pd->ibpd.uobject->context)->uar.index); in mthca_arbel_init_srq_context() 155 if (pd->ibpd.uobject) in mthca_alloc_srq_buf() 238 if (!pd->ibpd.uobject) { in mthca_alloc_srq() 300 if (!pd->ibpd.uobject) in mthca_alloc_srq() 307 if (!pd->ibpd.uobject && mthca_is_memfree(dev)) in mthca_alloc_srq() 353 if (!srq->ibsrq.uobject) { in mthca_free_srq()
|
/Linux-v4.19/drivers/infiniband/hw/hns/ |
D | hns_roce_qp.c | 540 ret = hns_roce_set_rq_size(hr_dev, &init_attr->cap, !!ib_pd->uobject, in hns_roce_create_qp_common() 577 if (ib_pd->uobject) { in hns_roce_create_qp_common() 591 hr_qp->umem = ib_umem_get(ib_pd->uobject->context, in hns_roce_create_qp_common() 632 to_hr_ucontext(ib_pd->uobject->context), in hns_roce_create_qp_common() 648 to_hr_ucontext(ib_pd->uobject->context), in hns_roce_create_qp_common() 762 if (ib_pd->uobject && (udata->outlen >= sizeof(resp)) && in hns_roce_create_qp_common() 789 if (ib_pd->uobject) { in hns_roce_create_qp_common() 794 to_hr_ucontext(ib_pd->uobject->context), in hns_roce_create_qp_common() 802 if (ib_pd->uobject) in hns_roce_create_qp_common() 808 to_hr_ucontext(ib_pd->uobject->context), in hns_roce_create_qp_common() [all …]
|
/Linux-v4.19/include/rdma/ |
D | ib_verbs.h | 1541 struct ib_uobject *uobject; member 1565 struct ib_uobject *uobject; member 1580 struct ib_uobject *uobject; member 1601 struct ib_uobject *uobject; member 1646 struct ib_uobject *uobject; member 1689 struct ib_uobject *uobject; member 1762 struct ib_uobject *uobject; member 1786 struct ib_uobject *uobject; member 1800 struct ib_uobject *uobject; /* user */ member 1815 struct ib_uobject *uobject; member [all …]
|
D | uverbs_ioctl.h | 430 struct ib_uobject *uobject; member 485 return attr->obj_attr.uobject->object; in uverbs_attr_get_obj() 496 return attr->obj_attr.uobject; in uverbs_attr_get_uobject()
|
D | uverbs_std_types.h | 107 uobj_put_read((_obj)->uobject)
|
/Linux-v4.19/drivers/infiniband/hw/vmw_pvrdma/ |
D | pvrdma_srq.c | 114 if (!(pd->uobject && udata)) { in pvrdma_create_srq() 156 srq->umem = ib_umem_get(pd->uobject->context, in pvrdma_create_srq()
|