Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/infiniband/core/rdma_core.c __uobj_get_destroy() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 0 uobj 4096-ptr_max
PARAM_VALUE 0 uobj->uapi_object 4096-ptr_max
PARAM_VALUE 0 uobj->usecnt.counter 0-s32max
PARAM_VALUE 1 mode 2
BUF_SIZE 0 uobj s32min-(-1),1-s32max
BUF_SIZE 0 uobj s32min-(-1),1-s32max
CAPPED_DATA 0 uobj->uapi_object 1
DATA_SOURCE 0 uobj r rdma_lookup_get_uobject
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/rdma_core.c uobj_put_destroy() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 0 uobj 4096-ptr_max
PARAM_VALUE 0 uobj->cg_obj.cg->css.flags 1-u32max
PARAM_VALUE 0 uobj->cg_obj.cg->css.refcnt.data 0,4096-ptr_max
PARAM_VALUE 0 uobj->context 0
PARAM_VALUE 0 uobj->list.next->prev 4096-ptr_max
PARAM_VALUE 0 uobj->list.prev->next 4096-ptr_max
PARAM_VALUE 0 uobj->object 0
PARAM_VALUE 0 uobj->object->f_cred->process_keyring->usage.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->rcu.next 0
PARAM_VALUE 0 uobj->object->f_cred->request_key_auth->usage.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->session_keyring->usage.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->thread_keyring->usage.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->ucounts->count.refcnt.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->ucounts->ns->ns.__ns_ref.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->user_ns->ns.__ns_ref.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_llist.next 0
PARAM_VALUE 0 uobj->object->f_security 0
PARAM_VALUE 0 uobj->object->f_task_work.func 5179756662909861888
PARAM_VALUE 0 uobj->uapi_object 4096-ptr_max
PARAM_VALUE 0 uobj->ufile->idr.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 uobj->usecnt.counter 0-s32max
PARAM_VALUE 1 mode 2
BUF_SIZE 0 uobj s32min-(-1),1-s32max
BUF_SIZE 0 uobj s32min-(-1),1-s32max
CAPPED_DATA 0 uobj->uapi_object 1
DATA_SOURCE 0 uobj $0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/rdma_core.c uverbs_finalize_object() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
DATA_SOURCE 0 uobj $0
NOCHECK_CALL
LOCK2 &ufile->device->disassociate_srcu
TYPE_LOCK (struct ib_uverbs_device)->disassociate_srcu

drivers/infiniband/core/rdma_core.c uverbs_finalize_object() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 1
DATA_SOURCE 0 uobj $0
NOCHECK_CALL
LOCK2 &ufile->device->disassociate_srcu
TYPE_LOCK (struct ib_uverbs_device)->disassociate_srcu

drivers/infiniband/core/rdma_core.c uverbs_finalize_object() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 0 uobj 1-u64max
PARAM_VALUE 1 mode 2
DATA_SOURCE 0 uobj $0
NOCHECK_CALL
LOCK2 &ufile->device->disassociate_srcu
TYPE_LOCK (struct ib_uverbs_device)->disassociate_srcu

drivers/infiniband/core/uverbs_ioctl.c uobj_put_destroy() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 0 uobj->cg_obj.cg->css.flags 1-u32max
PARAM_VALUE 0 uobj->context 0
PARAM_VALUE 0 uobj->list.next->prev 4096-ptr_max
PARAM_VALUE 0 uobj->list.prev->next 4096-ptr_max
PARAM_VALUE 0 uobj->object 0
PARAM_VALUE 0 uobj->object->f_cred->process_keyring->usage.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->rcu.next 0
PARAM_VALUE 0 uobj->object->f_cred->request_key_auth->usage.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->session_keyring->usage.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->thread_keyring->usage.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->ucounts->count.refcnt.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->ucounts->ns->ns.__ns_ref.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_cred->user_ns->ns.__ns_ref.refs.counter s32min-s32max
PARAM_VALUE 0 uobj->object->f_security 0
PARAM_VALUE 0 uobj->object->f_task_work.func 5179756662909861888
PARAM_VALUE 0 uobj->ufile->idr.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 uobj->usecnt.counter 0-s32max
PARAM_VALUE 0 *uobj->object->f_security (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 mode 2
DATA_SOURCE 0 uobj $0
NOCHECK_CALL
LOCK2 &ufile->device->disassociate_srcu
TYPE_LOCK (struct ib_uverbs_device)->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c __uverbs_create_xsrq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c __uverbs_create_xsrq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c create_qp() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c create_qp() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c create_qp() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c create_qp() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c create_qp() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_attach_mcast() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_detach_mcast() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_ex_create_flow() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_ex_create_flow() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_ex_create_rwq_ind_table() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_ex_create_rwq_ind_table() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_ex_create_wq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_ex_create_wq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_ex_modify_cq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_ex_modify_wq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_modify_srq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_poll_cq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_post_recv() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_post_send() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_post_srq_recv() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_query_qp() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_query_srq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_req_notify_cq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c ib_uverbs_resize_cq() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c modify_qp() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 1 mode 0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c uobj_put_destroy() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 0 uobj 4096-ptr_max
PARAM_VALUE 0 uobj->object 0,4096-ptr_max
PARAM_VALUE 0 uobj->uapi_object 4096-ptr_max
PARAM_VALUE 1 mode 2
BUF_SIZE 0 uobj s32min-(-1),1-s32max
BUF_SIZE 0 uobj s32min-(-1),1-s32max
CAPPED_DATA 0 uobj 1
CAPPED_DATA 0 uobj->uapi_object 1
DATA_SOURCE 0 uobj $0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c uobj_put_read() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 0 uobj->uapi_object->type_class->lookup_put 4096-ptr_max
PARAM_VALUE 1 mode 0
BUF_SIZE 0 uobj s32min-(-1),1-s32max
BUF_SIZE 0 uobj s32min-(-1),1-s32max
DATA_SOURCE 0 uobj $0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu

drivers/infiniband/core/uverbs_cmd.c uobj_put_write() -> rdma_lookup_put_uobject()

Type Parameter Key Value
PARAM_VALUE 0 uobj 4096-ptr_max
PARAM_VALUE 0 uobj->object 4096-ptr_max
PARAM_VALUE 0 uobj->uapi_object 4096-ptr_max
PARAM_VALUE 0 uobj->uapi_object->type_class->lookup_put 920179148291260416,8357056992988438528
PARAM_VALUE 1 mode 1
BUF_SIZE 0 uobj s32min-(-1),1-s32max
BUF_SIZE 0 uobj s32min-(-1),1-s32max
CAPPED_DATA 0 uobj 1
CAPPED_DATA 0 uobj->uapi_object 1
DATA_SOURCE 0 uobj $0
NOCHECK_CALL
HALF_LOCKED2 &file->device->disassociate_srcu