Defined in 2 files as a function:

Referenced in 21 files:

Smatch caller information:

kernel/kprobes.c __register_kprobe() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-3556549974045937663,6432617772963328000-ptr_max
PARAM_VALUE 1 bits 6
RX_PATH
TASK_NOT_RUNNING
UNITS 0 ptr unit_byte
LOCK2 _T->lock
HALF_LOCKED2 global &fei_lock

kernel/kprobes.c get_kprobe() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 6
DATA_SOURCE 0 ptr $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 ptr unit_byte
HALF_LOCKED2 _T->lock

fs/kernfs/file.c kernfs_node_lock_ptr() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 4096-ptr_max
BUF_SIZE 0 ptr s32min-(-1),1-s32max
DATA_SOURCE 0 ptr $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 ptr unit_array_size
HALF_LOCKED2 &root->kernfs_rwsem
HALF_LOCKED2 mutex

kernel/bpf/bpf_local_storage.c select_bucket() -> hash_ptr()

Type Parameter Key Value
BUF_SIZE 0 ptr (-1)-s32max
DATA_SOURCE 0 ptr $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

fs/fuse/dir.c get_dentry_bucket() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 4096-ptr_max
PARAM_VALUE 1 bits 5
BUF_SIZE 0 ptr (-1)-s32max
DATA_SOURCE 0 ptr $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 &dentry->d_sb->s_vfs_rename_mutex

io_uring/io-wq.c io_wq_hash_work() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 6
DATA_SOURCE 0 ptr $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ctx->timeout_lock
HALF_LOCKED2 &ctx->uring_lock
HALF_LOCKED2 irq

mm/filemap.c folio_waitqueue() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 8
BUF_SIZE 0 ptr (-1)-s32max
DATA_SOURCE 0 ptr $0
STR_LEN 0 ptr (-1),8,11-12,14,17,19-20,23,26-27,29,31-32
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 ptr unit_page
HALF_LOCKED2 &mapping->invalidate_lock

fs/kernfs/inode.c kernfs_node_lock_ptr() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 4096-ptr_max
BUF_SIZE 0 ptr s32min-(-1),1-s32max
DATA_SOURCE 0 ptr $0
STR_LEN 0 ptr (-1),16
RX_PATH
TASK_NOT_RUNNING
UNITS 0 ptr unit_array_size

mm/vmscan.c get_item_key() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 0,4096-ptr_max
PARAM_VALUE 1 bits 30
DATA_SOURCE 0 ptr $0
RX_PATH
TASK_NOT_RUNNING

net/sched/cls_u32.c tc_u_hash() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 10
DATA_SOURCE 0 ptr $0
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

fs/nfsd/export.c svc_expkey_hash() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1-u64max
PARAM_VALUE 1 bits 8
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 global &nfsd_mutex

fs/nfsd/export.c svc_export_hash() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 8
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 global &nfsd_mutex

fs/nfsd/export.c svc_export_hash() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 8
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 global &nfsd_mutex

fs/nfsd/export.c svc_export_hash() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 8
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 global &nfsd_mutex

kernel/sched/build_utility.c __var_waitqueue() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 8
BUF_SIZE 0 ptr (-1),2-4,8,16,24,64,88,128,168,392
BUF_SIZE 0 ptr (-1),2-4,8,16,24,64,88,128,168,392
DATA_SOURCE 0 ptr $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &inode->i_lock
HALF_LOCKED2 &inode->i_mapping->invalidate_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &nfs_uuid->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &bdev_lock
HALF_LOCKED2 global &drm_unplug_srcu
HALF_LOCKED2 global &pernet_ops_rwsem
HALF_LOCKED2 rf.flags

kernel/locking/qspinlock.c pv_hash() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 4096-ptr_max
DATA_SOURCE 0 ptr $0

kernel/locking/qspinlock.c pv_unhash() -> hash_ptr()

Type Parameter Key Value
DATA_SOURCE 0 ptr $0

net/netfilter/nf_tables_api.c nft_objname_hash() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 32
RX_PATH
TASK_NOT_RUNNING

fs/notify/fanotify/fanotify.c fanotify_hash_path() -> hash_ptr()

Type Parameter Key Value

fs/notify/fanotify/fanotify.c fanotify_hash_path() -> hash_ptr()

Type Parameter Key Value

kernel/trace/fprobe.c add_fprobe_hash() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 4096-ptr_max
PARAM_VALUE 1 bits 6
DATA_SOURCE 0 ptr $0
STR_LEN 0 ptr (-1),22-23
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 global &event_mutex

kernel/trace/fprobe.c fprobe_node_hashfn() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 32
RX_PATH
TASK_NOT_RUNNING

kernel/trace/fprobe.c fprobe_node_obj_hashfn() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 32

kernel/trace/fprobe.c fprobe_registered() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 4096-u64max
PARAM_VALUE 1 bits 6
DATA_SOURCE 0 ptr $0
STR_LEN 0 ptr (-1),22-23
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 _T->lock

block/blk-crypto-profile.c blk_crypto_hash_bucket_for_key() -> hash_ptr()

Type Parameter Key Value
DATA_SOURCE 0 ptr $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &profile->lock
TYPE_LOCK (struct blk_crypto_profile)->lock

kernel/bpf/trampoline.c select_trampoline_lock() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 5
BUF_SIZE 0 ptr (-1),184
DATA_SOURCE 0 ptr $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &direct_mutex

kernel/module/main.c idempotent() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 8
DATA_SOURCE 0 ptr $1

kernel/module/main.c idempotent_complete() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 1 bits 8

net/sched/sch_fq.c fq_classify() -> hash_ptr()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1,3-ptr_max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 ptr unit_byte
HALF_LOCKED2 &sch->seqlock

net/sched/sch_fq.c fq_rehash() -> hash_ptr()

Type Parameter Key Value
DATA_SOURCE 1 bits $4
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 ptr unit_byte
LOCK2 bh