Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 32 files:

Smatch caller information:

drivers/crypto/hisilicon/qm.c qm_create_qp_nolock() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 0
PARAM_VALUE 2 start 0
PARAM_VALUE 4 gfp 2080
RX_PATH
TASK_NOT_RUNNING
UNITS 3 end unit_array_size
LOCK2 &qm->qps_lock
HALF_LOCKED2 &qm_list->lock
HALF_LOCKED2 &uacce->mutex
TYPE_LOCK (struct hisi_qm)->qps_lock

net/rxrpc/conn_client.c rxrpc_alloc_client_connection() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 1073741824
PARAM_VALUE 4 gfp 10272
BUF_SIZE 1 ptr 1304
DATA_SOURCE 1 ptr r rxrpc_alloc_connection

fs/afs/cell.c afs_lookup_cell() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 2
PARAM_VALUE 3 end 1073741823
PARAM_VALUE 4 gfp 3264
BUF_SIZE 1 ptr 960
DATA_SOURCE 1 ptr r afs_alloc_cell
RX_PATH
TASK_NOT_RUNNING
LOCK2 &net->cells_lock
HALF_LOCKED2 &net->cells_alias_lock
TYPE_LOCK (struct afs_net)->cells_lock

fs/vboxsf/utils.c vboxsf_new_inode() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 0
PARAM_VALUE 4 gfp 2080
DATA_SOURCE 1 ptr r new_inode
RX_PATH
TASK_NOT_RUNNING
LOCK2 &sbi->ino_idr_lock
LOCK2 flags
TYPE_LOCK (struct vboxsf_sbi)->ino_idr_lock

drivers/misc/fastrpc.c fastrpc_context_alloc() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 256
PARAM_VALUE 4 gfp 2080
BUF_SIZE 1 ptr 360
DATA_SOURCE 1 ptr r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cctx->lock
LOCK2 flags
TYPE_LOCK (struct fastrpc_channel_ctx)->lock

kernel/bpf/syscall.c bpf_link_alloc_id() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 8932354724322914304
PARAM_VALUE 1 ptr 16,4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end s32max
PARAM_VALUE 4 gfp 2080
DATA_SOURCE 1 ptr $0
LOCK2 bh
LOCK2 global &link_idr_lock
HALF_LOCKED2 &prog->aux->dst_mutex
HALF_LOCKED2 global &rtnl_mutex

kernel/bpf/syscall.c bpf_map_alloc_id() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 1879201974377660416
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end s32max
PARAM_VALUE 4 gfp 2080
DATA_SOURCE 1 ptr $0
LOCK2 bh
LOCK2 global &map_idr_lock

kernel/bpf/syscall.c bpf_prog_alloc_id() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 7903331674700357632
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end s32max
PARAM_VALUE 4 gfp 2080
BUF_SIZE 1 ptr 0-s32max
DATA_SOURCE 1 ptr $0
LOCK2 bh
LOCK2 global &prog_idr_lock

drivers/gpu/drm/msm/msm_gem_submit.c msm_ioctl_gem_submit() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end s32max
PARAM_VALUE 4 gfp 10240
DATA_SOURCE 1 ptr r dma_fence_get
LOCK2 &queue->idr_lock
LOCK2 &queue->lock
TYPE_LOCK (struct msm_gpu_submitqueue)->idr_lock
TYPE_LOCK (struct msm_gpu_submitqueue)->lock

fs/nfsd/nfs4state.c nfs4_alloc_stid() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 1-u64max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 0
PARAM_VALUE 4 gfp 10240
DATA_SOURCE 1 ptr r kmem_cache_alloc_noprof
LOCK2 &cl->cl_lock
TYPE_LOCK (struct nfs4_client)->cl_lock

fs/nfsd/nfs4state.c nfs4_init_cp_state() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 0
PARAM_VALUE 3 end 0
PARAM_VALUE 4 gfp 10240
DATA_SOURCE 1 ptr $1
LOCK2 &nn->s2s_cp_lock
TYPE_LOCK (struct nfsd_net)->s2s_cp_lock

ipc/util.c ipc_idr_alloc() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 0
PARAM_VALUE 2 start 0
PARAM_VALUE 3 end 16-16777216
PARAM_VALUE 4 gfp 10240
CAPPED_DATA 3 end 1
LOCK2 &ids->rwsem
LOCK2 &new->lock
LOCK2 rcu_read
TYPE_LOCK (struct ipc_ids)->rwsem
TYPE_LOCK (struct kern_ipc_perm)->lock

drivers/rapidio/rio_cm.c riocm_ch_alloc() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 3790520816292196352
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 3 end 2-65536
PARAM_VALUE 4 gfp 10240
BUF_SIZE 1 ptr 2432
DATA_SOURCE 1 ptr r _kzalloc_noprof
FUZZY_MAX 3 end 65536
USER_DATA 2 start 1-u16max
USER_DATA 3 end 2-65536
LOCK2 bh
LOCK2 global &idr_lock

fs/kernfs/dir.c __kernfs_new_node() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 1-u64max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 0
PARAM_VALUE 4 gfp 2080
DATA_SOURCE 1 ptr r kmem_cache_alloc_noprof
RX_PATH
TASK_NOT_RUNNING
LOCK2 &root->kernfs_idr_lock
TYPE_LOCK (struct kernfs_root)->kernfs_idr_lock

fs/fuse/backing.c fuse_backing_id_alloc() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 0
PARAM_VALUE 4 gfp 2080
BUF_SIZE 1 ptr 40
DATA_SOURCE 1 ptr $1
CAPABLE 0 21
LOCK2 &fc->lock
TYPE_LOCK (struct fuse_conn)->lock

drivers/net/ethernet/mellanox/mlxsw/spectrum_pgt.c mlxsw_sp_pgt_mid_alloc_range() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 0
PARAM_VALUE 4 gfp 3264
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mlxsw_sp->pgt->lock
HALF_LOCKED2 &devlink->lock
TYPE_LOCK (struct mlxsw_sp_pgt)->lock

kernel/pid.c alloc_pid() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 0
PARAM_VALUE 2 start 1,300
PARAM_VALUE 4 gfp 2080
FUZZY_MAX 2 start 300
BIT_INFO 2 start 0x0,0x12d
HARD_MAX 2 start 300
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &pidmap_lock

fs/smb/server/vfs_cache.c __open_id() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 2147483646
PARAM_VALUE 4 gfp 10240
DATA_SOURCE 1 ptr $1
LOCK2 &ft->lock
TYPE_LOCK (struct ksmbd_file_table)->lock

net/sched/cls_u32.c gen_new_htid() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 2047
PARAM_VALUE 4 gfp 3264
BUF_SIZE 1 ptr 160-2200
DATA_SOURCE 1 ptr $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex

drivers/slimbus/messaging.c slim_alloc_txn_tid() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 256
PARAM_VALUE 4 gfp 2080
BUF_SIZE 1 ptr (-1),24
DATA_SOURCE 1 ptr $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ctrl->txn_lock
LOCK2 flags
HALF_LOCKED2 &ctrl->lock
TYPE_LOCK (struct slim_controller)->txn_lock

kernel/cgroup/cgroup.c cgroup_init_root_id() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4232887947127533568
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 0
PARAM_VALUE 3 end 0
PARAM_VALUE 4 gfp 3264
BUF_SIZE 1 ptr (-1),16384
DATA_SOURCE 1 ptr $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &cgroup_mutex

drivers/tty/serial/mps2-uart.c mps2_of_get_port() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 5615161019195617280
PARAM_VALUE 1 ptr 1-u64max
PARAM_VALUE 2 start 0
PARAM_VALUE 3 end 3
PARAM_VALUE 4 gfp 3264
BUF_SIZE 1 ptr 640
BUF_SIZE 1 ptr 640
DATA_SOURCE 1 ptr $1
RX_PATH
TASK_NOT_RUNNING

drivers/soc/qcom/qmi_interface.c qmi_txn_init() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 0
PARAM_VALUE 3 end u16max
PARAM_VALUE 4 gfp 3264
DATA_SOURCE 1 ptr $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &qmi->txn_lock
HALF_LOCKED2 &ctrl->ssr_lock
HALF_LOCKED2 &pdr->list_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct qmi_handle)->txn_lock

fs/notify/inotify/inotify_user.c inotify_add_to_idr() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 0
PARAM_VALUE 4 gfp 10240
BUF_SIZE 0 idr 96
DATA_SOURCE 0 idr $0
DATA_SOURCE 1 ptr $2
LOCK2 &group->mark_mutex
LOCK2 idr_lock
TYPE_LOCK (struct fsnotify_group)->mark_mutex

kernel/bpf/btf.c btf_alloc_id() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 3137076036466089984
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end s32max
PARAM_VALUE 4 gfp 2080
BUF_SIZE 1 ptr (-1),248
DATA_SOURCE 1 ptr $0
LOCK2 bh
LOCK2 global &btf_idr_lock

drivers/crypto/hisilicon/sec2/sec_crypto.c sec_alloc_req_id() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 0
PARAM_VALUE 2 start 0
PARAM_VALUE 4 gfp 2080
RX_PATH
TASK_NOT_RUNNING
LOCK2 &qp_ctx->id_lock
LOCK2 bh
TYPE_LOCK (struct sec_qp_ctx)->id_lock

net/netlink/genetlink.c genl_register_family() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 5432476477966569472
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 16-19
PARAM_VALUE 3 end 17-19,1024
PARAM_VALUE 4 gfp 3264
DATA_SOURCE 1 ptr $0
FUZZY_MAX 2 start 19
LOCK2 global &cb_lock
LOCK2 global &genl_mutex

drivers/target/target_core_device.c target_configure_device() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 3649590317112512512
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 0
PARAM_VALUE 3 end s32max
PARAM_VALUE 4 gfp 3264
BUF_SIZE 1 ptr (-1),5816
DATA_SOURCE 1 ptr $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &device_mutex
HALF_LOCKED2 &buffer->mutex
HALF_LOCKED2 &frag->frag_sem

sound/soc/qcom/qdsp6/topology.c audioreach_tplg_alloc_module() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 28672
PARAM_VALUE 3 end 32768
PARAM_VALUE 4 gfp 3264
BUF_SIZE 1 ptr 256
DATA_SOURCE 1 ptr r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
LOCK2 &apm->lock
LOCK2 &card->mutex
LOCK2 _T->lock
TYPE_LOCK (struct q6apm)->lock
TYPE_LOCK (struct snd_soc_card)->mutex

drivers/net/ethernet/marvell/prestera/prestera_counter.c prestera_counter_get_vacant() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 0
PARAM_VALUE 4 gfp 3264
RX_PATH
TASK_NOT_RUNNING
UNITS 2 start unit_array_size
LOCK2 &block->mtx
HALF_LOCKED2 &block->cb_lock
HALF_LOCKED2 &flowtable->flow_block_lock
TYPE_LOCK (struct prestera_counter_block)->mtx

drivers/soc/qcom/apr.c gpr_alloc_port() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 268435456
PARAM_VALUE 3 end 536870912
PARAM_VALUE 4 gfp 2080
BUF_SIZE 1 ptr 112
RX_PATH
TASK_NOT_RUNNING
LOCK2 &pr->svcs_lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct packet_router)->svcs_lock

drivers/rpmsg/qcom_glink_native.c qcom_glink_alloc_intent() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end (-1)
PARAM_VALUE 4 gfp 2080
BUF_SIZE 1 ptr 48
DATA_SOURCE 1 ptr r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
LOCK2 &channel->intent_lock
LOCK2 flags
TYPE_LOCK (struct glink_channel)->intent_lock

drivers/rpmsg/qcom_glink_native.c qcom_glink_send_open_req() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 4096-ptr_max
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 1
PARAM_VALUE 3 end 65536
PARAM_VALUE 4 gfp 2080
BUF_SIZE 1 ptr (-1),1136
DATA_SOURCE 1 ptr $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &glink->idr_lock
LOCK2 flags
HALF_LOCKED2 &eptdev->ept_lock
HALF_LOCKED2 &port->ops_lock
TYPE_LOCK (struct qcom_glink)->idr_lock

net/sctp/associola.c sctp_assoc_set_id() -> idr_alloc_cyclic()

Type Parameter Key Value
PARAM_VALUE 0 idr 3527216425152483328
PARAM_VALUE 1 ptr 4096-ptr_max
PARAM_VALUE 2 start 3
PARAM_VALUE 3 end 0
PARAM_VALUE 4 gfp 10240
BUF_SIZE 1 ptr (-1),3016
DATA_SOURCE 1 ptr $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 global &sctp_assocs_id_lock
HALF_LOCKED2 sk