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()
748 uobj->object = mr; in ib_uverbs_reg_mr()
750 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_reg_mr()
754 resp.mr_handle = uobj->id; in ib_uverbs_reg_mr()
760 uobj_alloc_abort(uobj, attrs); in ib_uverbs_reg_mr()
770 struct ib_uobject *uobj; in ib_uverbs_rereg_mr() local
791 uobj = uobj_get_write(UVERBS_OBJECT_MR, cmd.mr_handle, attrs); in ib_uverbs_rereg_mr()
792 if (IS_ERR(uobj)) in ib_uverbs_rereg_mr()
793 return PTR_ERR(uobj); in ib_uverbs_rereg_mr()
795 mr = uobj->object; in ib_uverbs_rereg_mr()
841 new_mr->uobject = uobj; in ib_uverbs_rereg_mr()
853 rdma_assign_uobject(uobj, new_uobj, attrs); in ib_uverbs_rereg_mr()
855 uobj_put_destroy(uobj); in ib_uverbs_rereg_mr()
857 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()
1448 uverbs_uobject_get(&obj->uevent.event_file->uobj); in create_qp()
1961 struct ib_uobject *uobj; in ib_uverbs_destroy_qp() local
1969 uobj = uobj_get_destroy(UVERBS_OBJECT_QP, cmd.qp_handle, attrs); in ib_uverbs_destroy_qp()
1970 if (IS_ERR(uobj)) in ib_uverbs_destroy_qp()
1971 return PTR_ERR(uobj); in ib_uverbs_destroy_qp()
1973 obj = container_of(uobj, struct ib_uqp_object, uevent.uobject); in ib_uverbs_destroy_qp()
1977 uobj_put_destroy(uobj); in ib_uverbs_destroy_qp()
2392 struct ib_uobject *uobj; in ib_uverbs_create_ah() local
2403 uobj = uobj_alloc(UVERBS_OBJECT_AH, attrs, &ib_dev); in ib_uverbs_create_ah()
2404 if (IS_ERR(uobj)) in ib_uverbs_create_ah()
2405 return PTR_ERR(uobj); in ib_uverbs_create_ah()
2442 ah->uobject = uobj; in ib_uverbs_create_ah()
2443 uobj->user_handle = cmd.user_handle; in ib_uverbs_create_ah()
2444 uobj->object = ah; in ib_uverbs_create_ah()
2446 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_create_ah()
2448 resp.ah_handle = uobj->id; in ib_uverbs_create_ah()
2454 uobj_alloc_abort(uobj, attrs); in ib_uverbs_create_ah()
2942 uverbs_uobject_get(&obj->uevent.event_file->uobj); in ib_uverbs_ex_create_wq()
2971 struct ib_uobject *uobj; in ib_uverbs_ex_destroy_wq() local
2983 uobj = uobj_get_destroy(UVERBS_OBJECT_WQ, cmd.wq_handle, attrs); in ib_uverbs_ex_destroy_wq()
2984 if (IS_ERR(uobj)) in ib_uverbs_ex_destroy_wq()
2985 return PTR_ERR(uobj); in ib_uverbs_ex_destroy_wq()
2987 obj = container_of(uobj, struct ib_uwq_object, uevent.uobject); in ib_uverbs_ex_destroy_wq()
2990 uobj_put_destroy(uobj); in ib_uverbs_ex_destroy_wq()
3050 struct ib_uobject *uobj; in ib_uverbs_ex_create_rwq_ind_table() local
3106 uobj = uobj_alloc(UVERBS_OBJECT_RWQ_IND_TBL, attrs, &ib_dev); in ib_uverbs_ex_create_rwq_ind_table()
3107 if (IS_ERR(uobj)) { in ib_uverbs_ex_create_rwq_ind_table()
3108 err = PTR_ERR(uobj); in ib_uverbs_ex_create_rwq_ind_table()
3123 rwq_ind_tbl->uobject = uobj; in ib_uverbs_ex_create_rwq_ind_table()
3124 uobj->object = rwq_ind_tbl; in ib_uverbs_ex_create_rwq_ind_table()
3137 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_ex_create_rwq_ind_table()
3139 resp.ind_tbl_handle = uobj->id; in ib_uverbs_ex_create_rwq_ind_table()
3147 uobj_alloc_abort(uobj, attrs); in ib_uverbs_ex_create_rwq_ind_table()
3180 struct ib_uobject *uobj; in ib_uverbs_ex_create_flow() local
3241 uobj = uobj_alloc(UVERBS_OBJECT_FLOW, attrs, &ib_dev); in ib_uverbs_ex_create_flow()
3242 if (IS_ERR(uobj)) { in ib_uverbs_ex_create_flow()
3243 err = PTR_ERR(uobj); in ib_uverbs_ex_create_flow()
3247 if (!rdma_is_port_valid(uobj->context->device, cmd.flow_attr.port)) { in ib_uverbs_ex_create_flow()
3315 ib_set_flow(uobj, flow_id, qp, qp->device, uflow_res); in ib_uverbs_ex_create_flow()
3323 uobj_finalize_uobj_create(uobj, attrs); in ib_uverbs_ex_create_flow()
3325 resp.flow_handle = uobj->id; in ib_uverbs_ex_create_flow()
3336 uobj_alloc_abort(uobj, attrs); in ib_uverbs_ex_create_flow()
3431 uverbs_uobject_get(&obj->uevent.event_file->uobj); in __uverbs_create_xsrq()
3567 struct ib_uobject *uobj; in ib_uverbs_destroy_srq() local
3575 uobj = uobj_get_destroy(UVERBS_OBJECT_SRQ, cmd.srq_handle, attrs); in ib_uverbs_destroy_srq()
3576 if (IS_ERR(uobj)) in ib_uverbs_destroy_srq()
3577 return PTR_ERR(uobj); in ib_uverbs_destroy_srq()
3579 obj = container_of(uobj, struct ib_uevent_object, uobject); in ib_uverbs_destroy_srq()
3583 uobj_put_destroy(uobj); in ib_uverbs_destroy_srq()