Documented in 1 files:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/infiniband/core/device.c ib_add_sub_device() -> ib_device_try_get()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->ops.add_sub_dev 1-u64max
PARAM_VALUE 0 dev->ops.del_sub_dev 1-u64max
PARAM_VALUE 0 dev->refcount.refs.counter (-1073741824),0-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

drivers/infiniband/core/device.c ib_device_get_by_index() -> ib_device_try_get()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-1025,1027-1029,1031-u64max
DATA_SOURCE 0 dev r xa_load
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &devices_rwsem

drivers/infiniband/core/device.c ib_device_get_by_netdev() -> ib_device_try_get()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &link_ops_rwsem
HALF_LOCKED2 global &rtnl_mutex

drivers/infiniband/core/device.c ib_unregister_client() -> ib_device_try_get()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
PARAM_VALUE 0 dev->client_data_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 dev->client_data_rwsem.first_waiter->type 0-1
LOCK2 rcu_read
HALF_LOCKED2 global &smbdirect_globals.mutex

drivers/infiniband/sw/rxe/rxe_net.c rxe_loopback() -> ib_device_try_get()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

drivers/infiniband/sw/rxe/rxe_recv.c rxe_rcv_mcast_pkt() -> ib_device_try_get()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &rxe->mcg_lock
LOCK2 bh
TYPE_LOCK (struct rxe_dev)->mcg_lock