/freebsd/sys/ofed/drivers/infiniband/core/ |
H A D | ib_rdma_core.c | 61 static int uverbs_try_lock_object(struct ib_uobject *uobj, in uverbs_try_lock_object() argument 77 return atomic_fetch_add_unless(&uobj->usecnt, 1, -1) == -1 ? in uverbs_try_lock_object() 81 return atomic_cmpxchg(&uobj->usecnt, 0, -1) == 0 ? 0 : -EBUSY; in uverbs_try_lock_object() 88 static void assert_uverbs_usecnt(struct ib_uobject *uobj, in assert_uverbs_usecnt() argument 94 WARN_ON(atomic_read(&uobj->usecnt) <= 0); in assert_uverbs_usecnt() 97 WARN_ON(atomic_read(&uobj->usecnt) != -1); in assert_uverbs_usecnt() 120 * and consumes the kref on the uobj. 122 static int uverbs_destroy_uobject(struct ib_uobject *uobj, in uverbs_destroy_uobject() argument 131 assert_uverbs_usecnt(uobj, UVERBS_LOOKUP_WRITE); in uverbs_destroy_uobject() 134 WARN_ON(!list_empty(&uobj in uverbs_destroy_uobject() 194 uobj_destroy(struct ib_uobject * uobj,struct uverbs_attr_bundle * attrs) uobj_destroy() argument 224 struct ib_uobject *uobj; __uobj_get_destroy() local 248 struct ib_uobject *uobj; __uobj_perform_destroy() local 263 struct ib_uobject *uobj; alloc_uobj() local 298 idr_add_uobj(struct ib_uobject * uobj) idr_add_uobj() argument 315 struct ib_uobject *uobj; lookup_get_idr_uobject() local 379 struct ib_uobject *uobj; rdma_lookup_get_uobject() local 430 struct ib_uobject *uobj; alloc_begin_idr_uobject() local 461 struct ib_uobject *uobj; alloc_begin_fd_uobject() local 518 alloc_abort_idr_uobject(struct ib_uobject * uobj) alloc_abort_idr_uobject() argument 523 destroy_hw_idr_uobject(struct ib_uobject * uobj,enum rdma_remove_reason why,struct uverbs_attr_bundle * attrs) destroy_hw_idr_uobject() argument 546 remove_handle_idr_uobject(struct ib_uobject * uobj) remove_handle_idr_uobject() argument 553 alloc_abort_fd_uobject(struct ib_uobject * uobj) alloc_abort_fd_uobject() argument 561 destroy_hw_fd_uobject(struct ib_uobject * uobj,enum rdma_remove_reason why,struct uverbs_attr_bundle * attrs) destroy_hw_fd_uobject() argument 575 remove_handle_fd_uobject(struct ib_uobject * uobj) remove_handle_fd_uobject() argument 579 alloc_commit_idr_uobject(struct ib_uobject * uobj) alloc_commit_idr_uobject() argument 595 alloc_commit_fd_uobject(struct ib_uobject * uobj) alloc_commit_fd_uobject() argument 619 rdma_alloc_commit_uobject(struct ib_uobject * uobj,struct uverbs_attr_bundle * attrs) rdma_alloc_commit_uobject() argument 644 rdma_alloc_abort_uobject(struct ib_uobject * uobj,struct uverbs_attr_bundle * attrs) rdma_alloc_abort_uobject() argument 655 lookup_put_idr_uobject(struct ib_uobject * uobj,enum rdma_lookup_mode mode) lookup_put_idr_uobject() argument 660 lookup_put_fd_uobject(struct ib_uobject * uobj,enum rdma_lookup_mode mode) lookup_put_fd_uobject() argument 673 rdma_lookup_put_uobject(struct ib_uobject * uobj,enum rdma_lookup_mode mode) rdma_lookup_put_uobject() argument 742 struct ib_uobject *uobj; uverbs_uobject_fd_release() local 913 uverbs_finalize_object(struct ib_uobject * uobj,enum uverbs_obj_access access,bool commit,struct uverbs_attr_bundle * attrs) uverbs_finalize_object() argument [all...] |
H A D | ib_uverbs_std_types_async_fd.c | 16 struct ib_uobject *uobj = in UVERBS_HANDLER() local 20 container_of(uobj, struct ib_uverbs_async_event_file, uobj)); in UVERBS_HANDLER() 24 static int uverbs_async_event_destroy_uobj(struct ib_uobject *uobj, in uverbs_async_event_destroy_uobj() argument 28 container_of(uobj, struct ib_uverbs_async_event_file, uobj); in uverbs_async_event_destroy_uobj()
|
H A D | ib_uverbs_cmd.c | 198 struct ib_uobject *uobj = ufd_get_read(UVERBS_OBJECT_COMP_CHANNEL, in _ib_uverbs_lookup_comp_file() local 201 if (IS_ERR(uobj)) in _ib_uverbs_lookup_comp_file() 202 return (void *)uobj; in _ib_uverbs_lookup_comp_file() 204 uverbs_uobject_get(uobj); in _ib_uverbs_lookup_comp_file() 205 uobj_put_read(uobj); in _ib_uverbs_lookup_comp_file() 207 return container_of(uobj, struct ib_uverbs_completion_event_file, in _ib_uverbs_lookup_comp_file() 208 uobj); in _ib_uverbs_lookup_comp_file() 278 struct ib_uobject *uobj; in ib_uverbs_get_context() local 289 uobj = uobj_alloc(UVERBS_OBJECT_ASYNC_EVENT, attrs, &ib_dev); in ib_uverbs_get_context() 290 if (IS_ERR(uobj)) { in ib_uverbs_get_context() [all …]
|
H A D | uverbs.h | 130 struct ib_uobject uobj; member 136 struct ib_uobject uobj; member 230 struct ib_ucq_object *uobj); 231 void ib_uverbs_release_uevent(struct ib_uevent_object *uobj); 245 struct ib_uqp_object *uobj);
|
H A D | ib_uverbs_main.c | 130 struct ib_ucq_object *uobj) in ib_uverbs_release_ucq() argument 136 list_for_each_entry_safe(evt, tmp, &uobj->comp_list, obj_list) { in ib_uverbs_release_ucq() 142 uverbs_uobject_put(&ev_file->uobj); in ib_uverbs_release_ucq() 145 ib_uverbs_release_uevent(&uobj->uevent); in ib_uverbs_release_ucq() 148 void ib_uverbs_release_uevent(struct ib_uevent_object *uobj) in ib_uverbs_release_uevent() argument 151 READ_ONCE(uobj->uobject.ufile->async_file); in ib_uverbs_release_uevent() 158 list_for_each_entry_safe(evt, tmp, &uobj->event_list, obj_list) { in ib_uverbs_release_uevent() 166 struct ib_uqp_object *uobj) in ib_uverbs_detach_umcast() argument 170 list_for_each_entry_safe(mcast, tmp, &uobj->mcast_list, list) { in ib_uverbs_detach_umcast() 202 uverbs_uobject_put(&file->async_file->uobj); in ib_uverbs_release_file() [all …]
|
H A D | ib_uverbs_std_types_dm.c | 55 struct ib_uobject *uobj = in UVERBS_HANDLER() local 81 dm->uobject = uobj; in UVERBS_HANDLER() 84 uobj->object = dm; in UVERBS_HANDLER()
|
H A D | ib_uverbs_std_types_counters.c | 57 struct ib_uobject *uobj = uverbs_attr_get_uobject( in UVERBS_HANDLER() local 78 counters->uobject = uobj; in UVERBS_HANDLER() 79 uobj->object = counters; in UVERBS_HANDLER()
|
H A D | ib_uverbs_std_types_cq.c | 99 uobj); in UVERBS_HANDLER() 177 struct ib_uobject *uobj = in UVERBS_HANDLER() local 180 container_of(uobj, struct ib_ucq_object, uevent.uobject); in UVERBS_HANDLER()
|
H A D | ib_uverbs_std_types_mr.c | 85 struct ib_uobject *uobj = in UVERBS_HANDLER() local 133 mr->uobject = uobj; in UVERBS_HANDLER() 137 uobj->object = mr; in UVERBS_HANDLER()
|
H A D | ib_uverbs_std_types_flow_action.c | 311 struct ib_uobject *uobj = uverbs_attr_get_uobject( in UVERBS_HANDLER() local 331 uverbs_flow_action_fill_action(action, uobj, ib_dev, in UVERBS_HANDLER() 340 struct ib_uobject *uobj = uverbs_attr_get_uobject( in UVERBS_HANDLER() local 342 struct ib_flow_action *action = uobj->object; in UVERBS_HANDLER()
|
H A D | rdma_core.h | 52 int uobj_destroy(struct ib_uobject *uobj, struct uverbs_attr_bundle *attrs); 67 void uverbs_finalize_object(struct ib_uobject *uobj,
|
H A D | ib_uverbs_std_types.c | 228 uverbs_completion_event_file_destroy_uobj(struct ib_uobject *uobj, in uverbs_completion_event_file_destroy_uobj() argument 232 container_of(uobj, struct ib_uverbs_completion_event_file, in uverbs_completion_event_file_destroy_uobj() 233 uobj); in uverbs_completion_event_file_destroy_uobj()
|
H A D | core_priv.h | 152 struct ib_uqp_object *uobj) in _ib_create_qp() argument 165 qp->uobject = uobj; in _ib_create_qp()
|
/freebsd/sys/ofed/include/rdma/ |
H A D | uverbs_std_types.h | 63 static inline void *_uobj_get_obj_read(struct ib_uobject *uobj) in _uobj_get_obj_read() argument 65 if (IS_ERR(uobj)) in _uobj_get_obj_read() 67 return uobj->object; in _uobj_get_obj_read() 91 static inline void uobj_put_destroy(struct ib_uobject *uobj) in uobj_put_destroy() argument 93 rdma_lookup_put_uobject(uobj, UVERBS_LOOKUP_WRITE); in uobj_put_destroy() 96 static inline void uobj_put_read(struct ib_uobject *uobj) in uobj_put_read() argument 98 rdma_lookup_put_uobject(uobj, UVERBS_LOOKUP_READ); in uobj_put_read() 104 static inline void uobj_put_write(struct ib_uobject *uobj) in uobj_put_write() argument 106 rdma_lookup_put_uobject(uobj, UVERBS_LOOKUP_WRITE); in uobj_put_write() 109 static inline void uobj_alloc_abort(struct ib_uobject *uobj, in uobj_alloc_abort() argument [all …]
|
H A D | uverbs_types.h | 93 void (*alloc_commit)(struct ib_uobject *uobj); 95 void (*alloc_abort)(struct ib_uobject *uobj); 100 void (*lookup_put)(struct ib_uobject *uobj, enum rdma_lookup_mode mode); 102 int __must_check (*destroy_hw)(struct ib_uobject *uobj, 105 void (*remove_handle)(struct ib_uobject *uobj); 133 int __must_check (*destroy_object)(struct ib_uobject *uobj, 142 void rdma_lookup_put_uobject(struct ib_uobject *uobj, 146 void rdma_alloc_abort_uobject(struct ib_uobject *uobj, 148 void rdma_alloc_commit_uobject(struct ib_uobject *uobj, 172 int (*destroy_object)(struct ib_uobject *uobj,
|
H A D | ib_verbs.h | 2557 struct ib_uobject *uobj) in ib_is_destroy_retryable() argument 2560 uobj->context->cleanup_retryable); in ib_is_destroy_retryable() 2574 struct ib_uobject *uobj) in ib_destroy_usecnt() argument 2576 if (atomic_read(usecnt) && ib_is_destroy_retryable(-EBUSY, why, uobj)) in ib_destroy_usecnt()
|
/freebsd/contrib/netbsd-tests/rump/kernspace/ |
H A D | busypage.c | 45 static struct uvm_object *uobj; variable 55 mutex_enter(uobj->vmobjlock); in thread() 59 UVM_UNLOCK_AND_WAIT(testpg, uobj->vmobjlock, false, "tw", 0); in thread() 71 uobj = uao_create(1, 0); in rumptest_busypage() 72 mutex_enter(uobj->vmobjlock); in rumptest_busypage() 73 testpg = uvm_pagealloc(uobj, 0, NULL, 0); in rumptest_busypage() 74 mutex_exit(uobj->vmobjlock); in rumptest_busypage() 83 mutex_enter(uobj->vmobjlock); in rumptest_busypage() 85 cv_wait(&tcv, uobj->vmobjlock); in rumptest_busypage() 88 mutex_exit(uobj->vmobjlock); in rumptest_busypage()
|
/freebsd/sys/dev/mlx5/mlx5_ib/ |
H A D | mlx5_ib_devx.c | 109 struct ib_uobject uobj; member 603 struct ib_uobject *uobj, const void *in) in devx_is_valid_obj_id() argument 611 switch (uobj_get_object_id(uobj)) { in devx_is_valid_obj_id() 614 to_mcq(uobj->object)->mcq.cqn) == in devx_is_valid_obj_id() 619 struct mlx5_core_srq *srq = &(to_msrq(uobj->object)->msrq); in devx_is_valid_obj_id() 637 to_msrq(uobj->object)->msrq.srqn) == in devx_is_valid_obj_id() 643 struct mlx5_ib_qp *qp = to_mqp(uobj->object); in devx_is_valid_obj_id() 673 to_mrwq(uobj->object)->core_qp.qpn) == in devx_is_valid_obj_id() 678 to_mrwq_ind_table(uobj->object)->rqtn) == in devx_is_valid_obj_id() 682 return ((struct devx_obj *)uobj->object)->obj_id == obj_id; in devx_is_valid_obj_id() [all …]
|
H A D | mlx5_ib_qp.c | 1278 struct ib_uobject *uobj = pd->uobject; in create_raw_packet_qp() local 1279 struct ib_ucontext *ucontext = uobj->context; in create_raw_packet_qp() 1367 struct ib_uobject *uobj = pd->uobject; in create_rss_raw_qp_tir() local 1368 struct ib_ucontext *ucontext = uobj->context; in create_rss_raw_qp_tir()
|
/freebsd/sys/fs/tmpfs/ |
H A D | tmpfs_subr.c | 750 vm_object_t uobj; in tmpfs_free_node_locked() local 803 uobj = node->tn_reg.tn_aobj; in tmpfs_free_node_locked() 805 if (uobj != NULL) { in tmpfs_free_node_locked() 806 VM_OBJECT_WLOCK(uobj); in tmpfs_free_node_locked() 807 KASSERT((uobj->flags & OBJ_TMPFS) != 0, in tmpfs_free_node_locked() 808 ("tmpfs node %p uobj %p not tmpfs", node, uobj)); in tmpfs_free_node_locked() 809 vm_object_clear_flag(uobj, OBJ_TMPFS); in tmpfs_free_node_locked() 816 VM_OBJECT_WUNLOCK(uobj); in tmpfs_free_node_locked() 826 if (uobj != NULL) in tmpfs_free_node_locked() 827 vm_object_deallocate(uobj); in tmpfs_free_node_locked() [all …]
|