ib_uobject
struct ib_uobject uobj;
static int devx_obj_cleanup(struct ib_uobject *uobject,
struct ib_uobject *uobj = uverbs_attr_get_uobject(
struct ib_uobject *uobj = uverbs_attr_get_uobject(attrs,
struct ib_uobject *uobj = uverbs_attr_get_uobject(attrs,
struct ib_uobject uobj;
struct ib_uobject *uobj = uverbs_attr_get_uobject(
struct ib_uobject *uobj = uverbs_attr_get_uobject(
struct ib_uobject *uobj = uverbs_attr_get_uobject(
struct ib_uobject *fd_uobj;
struct ib_uobject *devx_uobj = uverbs_attr_get_uobject(
struct ib_uobject *fd_uobj;
struct ib_uobject *uobj = uverbs_attr_get_uobject(
static int devx_umem_cleanup(struct ib_uobject *uobject,
static int devx_async_cmd_event_destroy_uobj(struct ib_uobject *uobj,
static int devx_async_event_destroy_uobj(struct ib_uobject *uobj,
struct ib_uobject *uobj, const void *in)
struct ib_uobject *uobj = pd->uobject;
struct ib_uobject *uobj = pd->uobject;
static int uverbs_destroy_uobject(struct ib_uobject *uobj,
int uobj_destroy(struct ib_uobject *uobj, struct uverbs_attr_bundle *attrs)
struct ib_uobject *__uobj_get_destroy(const struct uverbs_api_object *obj,
struct ib_uobject *uobj;
struct ib_uobject *uobj;
static struct ib_uobject *alloc_uobj(struct uverbs_attr_bundle *attrs,
struct ib_uobject *uobj;
static int idr_add_uobj(struct ib_uobject *uobj)
static struct ib_uobject *
struct ib_uobject *uobj;
static struct ib_uobject *
struct ib_uobject *uobject;
struct ib_uobject *rdma_lookup_get_uobject(const struct uverbs_api_object *obj,
struct ib_uobject *uobj;
static struct ib_uobject *
struct ib_uobject *uobj;
static struct ib_uobject *
struct ib_uobject *uobj;
kfree_rcu(container_of(ref, struct ib_uobject, ref), rcu);
struct ib_uobject *rdma_alloc_begin_uobject(const struct uverbs_api_object *obj,
struct ib_uobject *ret;
static void alloc_abort_idr_uobject(struct ib_uobject *uobj)
static int __must_check destroy_hw_idr_uobject(struct ib_uobject *uobj,
static void remove_handle_idr_uobject(struct ib_uobject *uobj)
void uverbs_uobject_put(struct ib_uobject *uobject)
static void alloc_abort_fd_uobject(struct ib_uobject *uobj)
static int __must_check destroy_hw_fd_uobject(struct ib_uobject *uobj,
static void remove_handle_fd_uobject(struct ib_uobject *uobj)
static void alloc_commit_idr_uobject(struct ib_uobject *uobj)
static void alloc_commit_fd_uobject(struct ib_uobject *uobj)
static int uverbs_try_lock_object(struct ib_uobject *uobj,
void rdma_alloc_commit_uobject(struct ib_uobject *uobj,
void rdma_alloc_abort_uobject(struct ib_uobject *uobj,
static void lookup_put_idr_uobject(struct ib_uobject *uobj,
static void lookup_put_fd_uobject(struct ib_uobject *uobj,
void rdma_lookup_put_uobject(struct ib_uobject *uobj,
struct ib_uobject *entry;
struct ib_uobject *uobj;
struct ib_uobject *obj, *next_obj;
static void assert_uverbs_usecnt(struct ib_uobject *uobj,
struct ib_uobject *
void uverbs_finalize_object(struct ib_uobject *uobj,
struct ib_uobject *uobj;
struct ib_uobject *xrcd_uobj = ERR_PTR(-ENOENT);
struct ib_uobject *uninitialized_var(xrcd_uobj);
struct ib_uobject *uobj;
struct ib_uobject *uobj = ufd_get_read(UVERBS_OBJECT_COMP_CHANNEL,
struct ib_uobject *uobj;
struct ib_uobject *uobj;
struct ib_uobject *uobj;
struct ib_uobject *uobj;
struct ib_uobject *uobj;
struct ib_uobject *uninitialized_var(xrcd_uobj);
struct ib_uobject *uobj;
struct ib_uobject *uobj;
int ib_uverbs_dealloc_xrcd(struct ib_uobject *uobject, struct ib_xrcd *xrcd,
struct ib_uobject *uobj;
struct ib_uobject *uobj;
struct ib_uobject *uobj;
struct ib_uobject *uobj;
static int uverbs_free_rwq_ind_tbl(struct ib_uobject *uobject,
static int uverbs_free_wq(struct ib_uobject *uobject,
static int uverbs_free_srq(struct ib_uobject *uobject,
static int uverbs_free_xrcd(struct ib_uobject *uobject,
static int uverbs_free_pd(struct ib_uobject *uobject,
uverbs_completion_event_file_destroy_uobj(struct ib_uobject *uobj,
static int uverbs_free_ah(struct ib_uobject *uobject,
static int uverbs_free_flow(struct ib_uobject *uobject,
static int uverbs_free_mw(struct ib_uobject *uobject,
static int uverbs_free_qp(struct ib_uobject *uobject,
struct ib_uobject *uobj =
static int uverbs_async_event_destroy_uobj(struct ib_uobject *uobj,
static int uverbs_free_counters(struct ib_uobject *uobject,
struct ib_uobject *uobj = uverbs_attr_get_uobject(
struct ib_uobject *uobj =
static int uverbs_free_cq(struct ib_uobject *uobject,
struct ib_uobject *ev_file_uobj;
struct ib_uobject *obj;
static int uverbs_free_dm(struct ib_uobject *uobject,
struct ib_uobject *uobj =
struct ib_uobject *uobj = uverbs_attr_get_uobject(
struct ib_uobject *uobj = uverbs_attr_get_uobject(
static int uverbs_free_flow_action(struct ib_uobject *uobject,
static int uverbs_free_mr(struct ib_uobject *uobject,
struct ib_uobject *uobj =
int uobj_destroy(struct ib_uobject *uobj, struct uverbs_attr_bundle *attrs);
struct ib_uobject *
void uverbs_finalize_object(struct ib_uobject *uobj,
struct ib_uobject uobj;
struct ib_uobject uobj;
struct ib_uobject uobject;
struct ib_uobject uobject;
int ib_uverbs_dealloc_xrcd(struct ib_uobject *uobject, struct ib_xrcd *xrcd,
struct ib_uobject *uobject;
struct ib_uobject *uobject;
struct ib_uobject *uobject;
struct ib_uobject *uobject;
struct ib_uobject *uobject; /* user */
struct ib_uobject *uobject;
struct ib_uobject *uobject;
struct ib_uobject *uobject;
struct ib_uobject *uobject;
struct ib_uobject *uobj)
struct ib_uobject *uobj)
struct ib_uobject *uobject;
struct ib_uobject **uobjects;
static inline struct ib_uobject *uverbs_attr_get_uobject(const struct uverbs_attr_bundle *attrs_bundle,
struct ib_uobject ***arr)
static inline void uobj_put_write(struct ib_uobject *uobj)
static inline void uobj_alloc_abort(struct ib_uobject *uobj,
static inline struct ib_uobject *
struct ib_uobject *uobj = rdma_alloc_begin_uobject(obj, attrs);
struct ib_uobject *uobj,
struct ib_uobject uobject;
static inline void ib_set_flow(struct ib_uobject *uobj, struct ib_flow *ibflow,
static inline u32 uobj_get_object_id(struct ib_uobject *uobj)
static inline void *_uobj_get_obj_read(struct ib_uobject *uobj)
struct ib_uobject *__uobj_get_destroy(const struct uverbs_api_object *obj,
static inline void uobj_put_destroy(struct ib_uobject *uobj)
static inline void uobj_put_read(struct ib_uobject *uobj)
void (*lookup_put)(struct ib_uobject *uobj, enum rdma_lookup_mode mode);
int __must_check (*destroy_hw)(struct ib_uobject *uobj,
void (*remove_handle)(struct ib_uobject *uobj);
int __must_check (*destroy_object)(struct ib_uobject *uobj,
struct ib_uobject *rdma_lookup_get_uobject(const struct uverbs_api_object *obj,
void rdma_lookup_put_uobject(struct ib_uobject *uobj,
struct ib_uobject *rdma_alloc_begin_uobject(const struct uverbs_api_object *obj,
void rdma_alloc_abort_uobject(struct ib_uobject *uobj,
void rdma_alloc_commit_uobject(struct ib_uobject *uobj,
static inline void uverbs_uobject_get(struct ib_uobject *uobject)
void uverbs_uobject_put(struct ib_uobject *uobject);
int (*destroy_object)(struct ib_uobject *uobj,
sizeof(struct ib_uobject)), \
sizeof(struct ib_uobject)) \
UVERBS_TYPE_ALLOC_IDR_SZ(sizeof(struct ib_uobject), \
struct ib_uobject *(*alloc_begin)(const struct uverbs_api_object *obj,
void (*alloc_commit)(struct ib_uobject *uobj);
void (*alloc_abort)(struct ib_uobject *uobj);
struct ib_uobject *(*lookup_get)(const struct uverbs_api_object *obj,