Lines Matching refs:uobj
191 struct ib_uobject *uobj = ufd_get_read(UVERBS_OBJECT_COMP_CHANNEL, in _ib_uverbs_lookup_comp_file() local
194 if (IS_ERR(uobj)) in _ib_uverbs_lookup_comp_file()
195 return (void *)uobj; in _ib_uverbs_lookup_comp_file()
197 uverbs_uobject_get(uobj); in _ib_uverbs_lookup_comp_file()
198 uobj_put_read(uobj); in _ib_uverbs_lookup_comp_file()
200 return container_of(uobj, struct ib_uverbs_completion_event_file, in _ib_uverbs_lookup_comp_file()
201 uobj); in _ib_uverbs_lookup_comp_file()
281 struct ib_uobject *uobj; in ib_uverbs_get_context() local
292 uobj = uobj_alloc(UVERBS_OBJECT_ASYNC_EVENT, attrs, &ib_dev); in ib_uverbs_get_context()
293 if (IS_ERR(uobj)) { in ib_uverbs_get_context()
294 ret = PTR_ERR(uobj); in ib_uverbs_get_context()
300 .async_fd = uobj->id, in ib_uverbs_get_context()
311 container_of(uobj, struct ib_uverbs_async_event_file, uobj)); in ib_uverbs_get_context()
312 rdma_alloc_commit_uobject(uobj, attrs); in ib_uverbs_get_context()
316 rdma_alloc_abort_uobject(uobj, attrs, false); in ib_uverbs_get_context()
423 struct ib_uobject *uobj; in ib_uverbs_alloc_pd() local
432 uobj = uobj_alloc(UVERBS_OBJECT_PD, attrs, &ib_dev); in ib_uverbs_alloc_pd()
433 if (IS_ERR(uobj)) in ib_uverbs_alloc_pd()
434 return PTR_ERR(uobj); in ib_uverbs_alloc_pd()
443 pd->uobject = uobj; in ib_uverbs_alloc_pd()
454 uobj->object = pd; in ib_uverbs_alloc_pd()
455 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_alloc_pd()
457 resp.pd_handle = uobj->id; in ib_uverbs_alloc_pd()
464 uobj_alloc_abort(uobj, attrs); in ib_uverbs_alloc_pd()
699 struct ib_uobject *uobj; in ib_uverbs_reg_mr() local
712 uobj = uobj_alloc(UVERBS_OBJECT_MR, attrs, &ib_dev); in ib_uverbs_reg_mr()
713 if (IS_ERR(uobj)) in ib_uverbs_reg_mr()
714 return PTR_ERR(uobj); in ib_uverbs_reg_mr()
739 mr->uobject = uobj; in ib_uverbs_reg_mr()
747 uobj->object = mr; in ib_uverbs_reg_mr()
749 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_reg_mr()
753 resp.mr_handle = uobj->id; in ib_uverbs_reg_mr()
759 uobj_alloc_abort(uobj, attrs); in ib_uverbs_reg_mr()
769 struct ib_uobject *uobj; in ib_uverbs_rereg_mr() local
790 uobj = uobj_get_write(UVERBS_OBJECT_MR, cmd.mr_handle, attrs); in ib_uverbs_rereg_mr()
791 if (IS_ERR(uobj)) in ib_uverbs_rereg_mr()
792 return PTR_ERR(uobj); in ib_uverbs_rereg_mr()
794 mr = uobj->object; in ib_uverbs_rereg_mr()
842 new_mr->uobject = uobj; in ib_uverbs_rereg_mr()
855 rdma_assign_uobject(uobj, new_uobj, attrs); in ib_uverbs_rereg_mr()
857 uobj_put_destroy(uobj); in ib_uverbs_rereg_mr()
859 uobj = NULL; in ib_uverbs_rereg_mr()
885 if (uobj) in ib_uverbs_rereg_mr()
886 uobj_put_write(uobj); in ib_uverbs_rereg_mr()
907 struct ib_uobject *uobj; in ib_uverbs_alloc_mw() local
917 uobj = uobj_alloc(UVERBS_OBJECT_MW, attrs, &ib_dev); in ib_uverbs_alloc_mw()
918 if (IS_ERR(uobj)) in ib_uverbs_alloc_mw()
919 return PTR_ERR(uobj); in ib_uverbs_alloc_mw()
940 mw->uobject = uobj; in ib_uverbs_alloc_mw()
949 uobj->object = mw; in ib_uverbs_alloc_mw()
951 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_alloc_mw()
954 resp.mw_handle = uobj->id; in ib_uverbs_alloc_mw()
962 uobj_alloc_abort(uobj, attrs); in ib_uverbs_alloc_mw()
982 struct ib_uobject *uobj; in ib_uverbs_create_comp_channel() local
991 uobj = uobj_alloc(UVERBS_OBJECT_COMP_CHANNEL, attrs, &ib_dev); in ib_uverbs_create_comp_channel()
992 if (IS_ERR(uobj)) in ib_uverbs_create_comp_channel()
993 return PTR_ERR(uobj); in ib_uverbs_create_comp_channel()
995 ev_file = container_of(uobj, struct ib_uverbs_completion_event_file, in ib_uverbs_create_comp_channel()
996 uobj); in ib_uverbs_create_comp_channel()
998 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_create_comp_channel()
1000 resp.fd = uobj->id; in ib_uverbs_create_comp_channel()
1062 uverbs_uobject_get(&obj->uevent.event_file->uobj); in create_cq()
1256 struct ib_uobject *uobj; in ib_uverbs_destroy_cq() local
1264 uobj = uobj_get_destroy(UVERBS_OBJECT_CQ, cmd.cq_handle, attrs); in ib_uverbs_destroy_cq()
1265 if (IS_ERR(uobj)) in ib_uverbs_destroy_cq()
1266 return PTR_ERR(uobj); in ib_uverbs_destroy_cq()
1268 obj = container_of(uobj, struct ib_ucq_object, uevent.uobject); in ib_uverbs_destroy_cq()
1273 uobj_put_destroy(uobj); in ib_uverbs_destroy_cq()
1449 uverbs_uobject_get(&obj->uevent.event_file->uobj); in create_qp()
1957 struct ib_uobject *uobj; in ib_uverbs_destroy_qp() local
1965 uobj = uobj_get_destroy(UVERBS_OBJECT_QP, cmd.qp_handle, attrs); in ib_uverbs_destroy_qp()
1966 if (IS_ERR(uobj)) in ib_uverbs_destroy_qp()
1967 return PTR_ERR(uobj); in ib_uverbs_destroy_qp()
1969 obj = container_of(uobj, struct ib_uqp_object, uevent.uobject); in ib_uverbs_destroy_qp()
1973 uobj_put_destroy(uobj); in ib_uverbs_destroy_qp()
2388 struct ib_uobject *uobj; in ib_uverbs_create_ah() local
2399 uobj = uobj_alloc(UVERBS_OBJECT_AH, attrs, &ib_dev); in ib_uverbs_create_ah()
2400 if (IS_ERR(uobj)) in ib_uverbs_create_ah()
2401 return PTR_ERR(uobj); in ib_uverbs_create_ah()
2438 ah->uobject = uobj; in ib_uverbs_create_ah()
2439 uobj->user_handle = cmd.user_handle; in ib_uverbs_create_ah()
2440 uobj->object = ah; in ib_uverbs_create_ah()
2442 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_create_ah()
2444 resp.ah_handle = uobj->id; in ib_uverbs_create_ah()
2450 uobj_alloc_abort(uobj, attrs); in ib_uverbs_create_ah()
2938 uverbs_uobject_get(&obj->uevent.event_file->uobj); in ib_uverbs_ex_create_wq()
2967 struct ib_uobject *uobj; in ib_uverbs_ex_destroy_wq() local
2979 uobj = uobj_get_destroy(UVERBS_OBJECT_WQ, cmd.wq_handle, attrs); in ib_uverbs_ex_destroy_wq()
2980 if (IS_ERR(uobj)) in ib_uverbs_ex_destroy_wq()
2981 return PTR_ERR(uobj); in ib_uverbs_ex_destroy_wq()
2983 obj = container_of(uobj, struct ib_uwq_object, uevent.uobject); in ib_uverbs_ex_destroy_wq()
2986 uobj_put_destroy(uobj); in ib_uverbs_ex_destroy_wq()
3046 struct ib_uobject *uobj; in ib_uverbs_ex_create_rwq_ind_table() local
3102 uobj = uobj_alloc(UVERBS_OBJECT_RWQ_IND_TBL, attrs, &ib_dev); in ib_uverbs_ex_create_rwq_ind_table()
3103 if (IS_ERR(uobj)) { in ib_uverbs_ex_create_rwq_ind_table()
3104 err = PTR_ERR(uobj); in ib_uverbs_ex_create_rwq_ind_table()
3119 rwq_ind_tbl->uobject = uobj; in ib_uverbs_ex_create_rwq_ind_table()
3120 uobj->object = rwq_ind_tbl; in ib_uverbs_ex_create_rwq_ind_table()
3133 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_ex_create_rwq_ind_table()
3135 resp.ind_tbl_handle = uobj->id; in ib_uverbs_ex_create_rwq_ind_table()
3143 uobj_alloc_abort(uobj, attrs); in ib_uverbs_ex_create_rwq_ind_table()
3176 struct ib_uobject *uobj; in ib_uverbs_ex_create_flow() local
3237 uobj = uobj_alloc(UVERBS_OBJECT_FLOW, attrs, &ib_dev); in ib_uverbs_ex_create_flow()
3238 if (IS_ERR(uobj)) { in ib_uverbs_ex_create_flow()
3239 err = PTR_ERR(uobj); in ib_uverbs_ex_create_flow()
3243 if (!rdma_is_port_valid(uobj->context->device, cmd.flow_attr.port)) { in ib_uverbs_ex_create_flow()
3311 ib_set_flow(uobj, flow_id, qp, qp->device, uflow_res); in ib_uverbs_ex_create_flow()
3319 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_ex_create_flow()
3321 resp.flow_handle = uobj->id; in ib_uverbs_ex_create_flow()
3332 uobj_alloc_abort(uobj, attrs); in ib_uverbs_ex_create_flow()
3427 uverbs_uobject_get(&obj->uevent.event_file->uobj); in __uverbs_create_xsrq()
3563 struct ib_uobject *uobj; in ib_uverbs_destroy_srq() local
3571 uobj = uobj_get_destroy(UVERBS_OBJECT_SRQ, cmd.srq_handle, attrs); in ib_uverbs_destroy_srq()
3572 if (IS_ERR(uobj)) in ib_uverbs_destroy_srq()
3573 return PTR_ERR(uobj); in ib_uverbs_destroy_srq()
3575 obj = container_of(uobj, struct ib_uevent_object, uobject); in ib_uverbs_destroy_srq()
3579 uobj_put_destroy(uobj); in ib_uverbs_destroy_srq()