Documented in 1 files:
Defined in 1 files as a function:
Referenced in 15 files:
- drivers/dma/idxd/submit.c
- drivers/md/md-llbitmap.c, line 820
- drivers/md/md.c, line 413
- drivers/nvme/target/core.c, line 1217
- drivers/nvme/target/pr.c, line 995
- drivers/target/target_core_alua.c, line 942
- drivers/target/target_core_device.c
- drivers/target/target_core_pr.c, line 730
- drivers/target/target_core_transport.c
- drivers/target/target_core_xcopy.c, line 97
- fs/aio.c, line 1148
- fs/nfsd/nfssvc.c, line 211
- include/linux/cgroup_refcnt.h, line 64
- kernel/cgroup/cgroup-v1.c
- mm/swapfile.c, line 1349
Smatch caller information:
drivers/md/md-llbitmap.c llbitmap_raise_barrier() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/md/md.c md_handle_request() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &md->io_barrier |
mm/swapfile.c get_swap_device_info() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/aio.c lookup_ioctx() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| LOCK2 | rcu_read |
fs/nfsd/nfssvc.c nfsd_net_try_get() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | rcu_read |
drivers/nvme/target/core.c nvmet_req_init() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock |
drivers/dma/idxd/submit.c idxd_submit_desc() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/dma/idxd/submit.c idxd_submit_desc() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PARAM_VALUE | 0 | ref->percpu_count_ptr | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/target/target_core_alua.c core_alua_queue_state_change_ua() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &tg_pt_gp->tg_pt_gp_lock | ||
| LOCK2 | &tg_pt_gp->tg_pt_gp_transition_mutex | ||
| HALF_LOCKED2 | &buffer->mutex | ||
| HALF_LOCKED2 | &frag->frag_sem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct t10_alua_tg_pt_gp)->tg_pt_gp_lock | ||
| TYPE_LOCK | (struct t10_alua_tg_pt_gp)->tg_pt_gp_transition_mutex |
drivers/nvme/target/pr.c nvmet_pr_get_ns_pc_ref() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 0-1025,1027-1029,1031-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock |
kernel/cgroup/cgroup.c css_tryget_online() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &m->lock | ||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &seq->lock | ||
| HALF_LOCKED2 | global &cpuset_mutex | ||
| HALF_LOCKED2 | global &cpuset_top_mutex | ||
| HALF_LOCKED2 | global &freezer_mutex | ||
| HALF_LOCKED2 | global &zswap_shrink_lock | ||
| HALF_LOCKED2 | rcu_read |
kernel/cgroup/cgroup-v1.c cgroup1_get_tree() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| NS_CAPABLE | 0 | 21 | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &fc->uapi_mutex |
kernel/cgroup/cgroup-v1.c cgroup1_root_to_use() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| NS_CAPABLE | 0 | 21 | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &fc->uapi_mutex |
drivers/target/target_core_xcopy.c target_xcopy_locate_se_dev_e4() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &pool->lock |
drivers/target/target_core_transport.c target_get_sess_cmd() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/target/target_core_transport.c target_handle_task_attr() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &sess->cmdsn_mutex |
drivers/target/target_core_device.c transport_lookup_cmd_lun() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read |
drivers/target/target_core_device.c transport_lookup_cmd_lun() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/target/target_core_device.c transport_lookup_tmr_lun() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read |
drivers/target/target_core_pr.c __core_scsi3_alloc_registration() -> percpu_ref_tryget_live()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | ref | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &dev->se_port_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct se_device)->se_port_lock |