Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/mbcache.c __entry_find() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h r mb_cache_entry_head
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING

fs/mbcache.c hlist_bl_add_head() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

fs/mbcache.c mb_cache_entry_create() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h r mb_cache_entry_head
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING

fs/mbcache.c mb_cache_entry_get() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h r mb_cache_entry_head
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING

fs/gfs2/quota.c hlist_bl_add_head_rcu() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &qd_lock

net/netfilter/ipvs/ip_vs_ctl.c __ip_vs_get_service_entries() -> hlist_bl_first()

Type Parameter Key Value
NS_CAPABLE 0 12
RX_PATH
LOCK2 &ipvs->service_mutex
LOCK2 &ipvs->svc_resize_sem
TYPE_LOCK (struct netns_ipvs)->service_mutex
TYPE_LOCK (struct netns_ipvs)->svc_resize_sem

net/netfilter/ipvs/ip_vs_ctl.c hlist_bl_add_head_rcu() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ipvs->service_mutex
HALF_LOCKED2 &ipvs->svc_resize_sem
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/netfilter/ipvs/ip_vs_ctl.c ip_vs_flush() -> hlist_bl_first()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ipvs->service_mutex
HALF_LOCKED2 global &pernet_ops_rwsem
TYPE_LOCK (struct netns_ipvs)->service_mutex

net/netfilter/ipvs/ip_vs_ctl.c svc_resize_work_handler() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
LOCK2 &ipvs->svc_resize_sem
LOCK2 bh
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct netns_ipvs)->svc_resize_sem

net/netfilter/ipvs/ip_vs_conn.c conn_resize_work_handler() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
LOCK2 bh
HALF_LOCKED2 &pool->lock

net/netfilter/ipvs/ip_vs_conn.c hlist_bl_add_head_rcu() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cp->lock
HALF_LOCKED2 bh

fs/netfs/fscache_volume.c fscache_hash_volume() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fc->uapi_mutex
HALF_LOCKED2 &fsc->client->mount_mutex
HALF_LOCKED2 &tcon->fscache_lock
HALF_LOCKED2 global &cifs_mount_mutex

fs/netfs/fscache_volume.c fscache_wake_pending_volume() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

fs/netfs/fscache_volume.c hlist_bl_add_head() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &fc->uapi_mutex
HALF_LOCKED2 &fsc->client->mount_mutex
HALF_LOCKED2 &tcon->fscache_lock
HALF_LOCKED2 global &cifs_mount_mutex

fs/netfs/fscache_cookie.c fscache_hash_cookie() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mdsc->snap_rwsem

fs/netfs/fscache_cookie.c hlist_bl_add_head() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mdsc->snap_rwsem

fs/dcache.c d_alloc_parallel() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h r in_lookup_hash
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &dir_inode->i_rwsem
HALF_LOCKED2 &dvnode->rmdir_lock
HALF_LOCKED2 &inode->i_rwsem

fs/dcache.c hlist_bl_add_head() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &dir_inode->i_rwsem
HALF_LOCKED2 &dvnode->rmdir_lock
HALF_LOCKED2 &inode->i_rwsem

fs/dcache.c hlist_bl_add_head_rcu() -> hlist_bl_first()

Type Parameter Key Value
PARAM_VALUE 0 h 4096-ptr_max
DATA_SOURCE 0 h $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &entry->d_lockref.lock
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &inode->i_lock
HALF_LOCKED2 &target->d_lockref.lock
HALF_LOCKED2 global &rename_lock.lock
TYPE_LOCK (struct lockref)->lock