Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/md/dm-pcache/cache_segment.c cache_seg_invalidate() -> cache_get_wq()

Type Parameter Key Value
PARAM_VALUE 0 cache 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cache_subtree->tree_lock

drivers/md/dm-pcache/cache_key.c cache_key_append() -> cache_get_wq()

Type Parameter Key Value
PARAM_VALUE 0 cache 4096-ptr_max
DATA_SOURCE 0 cache $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cache_subtree->tree_lock
LOCK2 &kset->kset_lock
TYPE_LOCK (struct pcache_cache_kset)->kset_lock
TYPE_LOCK (struct pcache_cache_subtree)->tree_lock

drivers/md/dm-pcache/cache_key.c kset_flush_fn() -> cache_get_wq()

Type Parameter Key Value
CAPPED_DATA 0 cache->cache_info.n_segs 1
HALF_LOCKED2 &pool->lock

drivers/md/dm-pcache/cache_writeback.c cache_writeback_fn() -> cache_get_wq()

Type Parameter Key Value
PARAM_VALUE 0 cache 4096-ptr_max
CAPPED_DATA 0 cache->writeback_key_tree.n_subtrees 1
CAPPED_DATA 0 &cache->dirty_tail_lock 1
CAPPED_DATA 0 &cache->writeback_lock 1
LOCK2 0 &cache->writeback_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct pcache_cache)->writeback_lock

drivers/md/dm-pcache/cache_writeback.c cache_writeback_init() -> cache_get_wq()

Type Parameter Key Value
PARAM_VALUE 0 cache 4096-ptr_max
BUF_SIZE 0 cache 12160
CAPPED_DATA 0 cache->ksets 1
CAPPED_DATA 0 cache->req_key_tree.subtrees 1
DATA_SOURCE 0 cache $0
NO_OVERFLOW_SIMPLE 0 cache->n_ksets
NO_OVERFLOW_SIMPLE 0 cache->req_key_tree.cache->n_ksets
NO_OVERFLOW_SIMPLE 0 cache->req_key_tree.cache->req_key_tree.key_pool.min_nr
NO_OVERFLOW_SIMPLE 0 cache->req_key_tree.cache->req_key_tree.n_subtrees
NO_OVERFLOW_SIMPLE 0 cache->req_key_tree.key_pool.min_nr
NO_OVERFLOW_SIMPLE 0 cache->req_key_tree.n_subtrees
NO_OVERFLOW_SIMPLE 0 cache->writeback_key_tree.cache->n_ksets
NO_OVERFLOW_SIMPLE 0 cache->writeback_key_tree.cache->req_key_tree.n_subtrees
NO_OVERFLOW_SIMPLE 0 cache->writeback_key_tree.n_subtrees

drivers/md/dm-pcache/cache_writeback.c writeback_ctx_end() -> cache_get_wq()

Type Parameter Key Value
PARAM_VALUE 0 cache 4096-ptr_max
DATA_SOURCE 0 cache $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &cache->writeback_lock
TYPE_LOCK (struct pcache_cache)->writeback_lock

drivers/md/dm-pcache/cache_gc.c pcache_cache_gc_fn() -> cache_get_wq()

Type Parameter Key Value
PARAM_VALUE 0 cache 4096-ptr_max
CAPPED_DATA 0 &cache->dirty_tail_lock 1
CAPPED_DATA 0 &cache->key_tail_lock 1
HALF_LOCKED2 &pool->lock

drivers/md/dm-pcache/cache.c pcache_cache_start() -> cache_get_wq()

Type Parameter Key Value
PARAM_VALUE 0 cache 4096-ptr_max
BUF_SIZE 0 cache 12160
CAPPED_DATA 0 cache->cache_info.n_segs 1
CAPPED_DATA 0 cache->req_key_tree.subtrees 1
BIT_INFO 0 cache->cache_info.flags 0x2,0xffffffffffffffff
NO_OVERFLOW_SIMPLE 0 cache->n_ksets
NO_OVERFLOW_SIMPLE 0 cache->req_key_tree.cache->n_ksets
NO_OVERFLOW_SIMPLE 0 cache->req_key_tree.cache->req_key_tree.key_pool.min_nr
NO_OVERFLOW_SIMPLE 0 cache->req_key_tree.cache->req_key_tree.n_subtrees
NO_OVERFLOW_SIMPLE 0 cache->req_key_tree.n_subtrees
NO_OVERFLOW_SIMPLE 0 cache->writeback_key_tree.cache->n_ksets
NO_OVERFLOW_SIMPLE 0 cache->writeback_key_tree.cache->req_key_tree.key_pool.min_nr
NO_OVERFLOW_SIMPLE 0 cache->writeback_key_tree.cache->req_key_tree.n_subtrees
NO_OVERFLOW_SIMPLE 0 cache->writeback_key_tree.n_subtrees
HALF_LOCKED2 &md->type_lock