Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 3 files:
- drivers/md/dm-pcache/cache_key.c
- drivers/md/dm-pcache/cache_req.c
- drivers/md/dm-pcache/cache_writeback.c, line 189
Smatch caller information:
drivers/md/dm-pcache/cache_req.c cache_write() -> cache_key_insert()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cache_tree | 4096-ptr_max |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| PARAM_VALUE | 1 | key->cache_pos.cache_seg | 4096-ptr_max |
| PARAM_VALUE | 1 | key->cache_tree | 4096-ptr_max |
| PARAM_VALUE | 1 | key->len | 1-4194304 |
| PARAM_VALUE | 2 | fixup | 1 |
| BUF_SIZE | 1 | key->cache_tree | (-1),224 |
| CAPPED_DATA | 1 | key->len | 1 |
| DATA_SOURCE | 1 | key | r cache_key_alloc |
| NOSPEC | 1 | key->len | |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 1 | key->len | 1-4194304[c] |
| HOST_DATA | 1 | key->off | 4194304[c] |
| USER_DATA | 1 | key->len | 1-4194304[c] |
| USER_DATA | 1 | key->off | 4194304[c] |
| NO_OVERFLOW_SIMPLE | 1 | key->cache_tree->key_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | key->cache_tree->n_subtrees | |
| LOCK2 | &cache_subtree->tree_lock | ||
| HALF_LOCKED2 | &md->io_barrier | ||
| TYPE_LOCK | (struct pcache_cache_subtree)->tree_lock |
drivers/md/dm-pcache/cache_req.c submit_cache_miss_req() -> cache_key_insert()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cache_tree | 4096-ptr_max |
| PARAM_VALUE | 1 | key | 1-u64max |
| PARAM_VALUE | 2 | fixup | 1 |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &cache_subtree->tree_lock | ||
| HALF_LOCKED2 | &md->io_barrier | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct pcache_cache_subtree)->tree_lock |
drivers/md/dm-pcache/cache_key.c fixup_overlap_contained() -> cache_key_insert()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cache_tree | 0,4096-ptr_max |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| PARAM_VALUE | 1 | key->len | 1-u32max |
| PARAM_VALUE | 2 | fixup | 0 |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &cache_subtree->tree_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct pcache_cache_subtree)->tree_lock |
drivers/md/dm-pcache/cache_key.c kset_replay() -> cache_key_insert()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cache_tree | 4096-ptr_max |
| PARAM_VALUE | 0 | cache_tree->cache | 4096-ptr_max |
| PARAM_VALUE | 0 | cache_tree->key_pool.alloc | 7276475779886346240 |
| PARAM_VALUE | 0 | cache_tree->key_pool.elements | 1-u64max |
| PARAM_VALUE | 0 | cache_tree->key_pool.free | 8263660038527102976 |
| PARAM_VALUE | 0 | cache_tree->key_pool.min_nr | 1024 |
| PARAM_VALUE | 0 | cache_tree->n_subtrees | 0 |
| PARAM_VALUE | 0 | cache_tree->subtrees | 16,4096-ptr_max |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| PARAM_VALUE | 1 | key->cache_pos.cache_seg | 4096-ptr_max |
| PARAM_VALUE | 1 | key->cache_tree | 4096-ptr_max |
| PARAM_VALUE | 1 | key->len | 1-u32max |
| PARAM_VALUE | 1 | key->list_node.next->next | 4096-ptr_max |
| PARAM_VALUE | 1 | key->list_node.prev->next | 4096-ptr_max |
| PARAM_VALUE | 1 | key->list_node.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 2 | fixup | 1 |
| BUF_SIZE | 1 | key->cache_tree | (-1),224 |
| CAPPED_DATA | 1 | key->cache_pos.cache_seg->gen | 1 |
| DATA_SOURCE | 1 | key | r cache_key_alloc |
| PARAM_COMPARE | 1 | key->cache_pos.cache_seg->gen | <= $1->seg_gen |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 0 | cache_tree->key_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 0 | cache_tree->n_subtrees | |
| NO_OVERFLOW_SIMPLE | 1 | key->cache_tree->key_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | key->cache_tree->n_subtrees | |
| LOCK2 | &cache_subtree->tree_lock | ||
| HALF_LOCKED2 | &md->type_lock | ||
| TYPE_LOCK | (struct pcache_cache_subtree)->tree_lock |
drivers/md/dm-pcache/cache_writeback.c cache_kset_insert_tree() -> cache_key_insert()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cache_tree | 4096-ptr_max |
| PARAM_VALUE | 1 | key | 4096-ptr_max |
| PARAM_VALUE | 1 | key->cache_pos.cache_seg | 4096-ptr_max |
| PARAM_VALUE | 1 | key->cache_tree | 4096-ptr_max |
| PARAM_VALUE | 1 | key->len | 1-u32max |
| PARAM_VALUE | 2 | fixup | 1 |
| BUF_SIZE | 1 | key->cache_tree | (-1),224 |
| DATA_SOURCE | 1 | key | r cache_key_alloc |
| PREEMPT_ADD | <- disables preempt | ||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 1 | key->cache_tree->key_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 1 | key->cache_tree->n_subtrees | |
| LOCK2 | &cache->writeback_lock | ||
| LOCK2 | &cache_subtree->tree_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct pcache_cache)->writeback_lock | ||
| TYPE_LOCK | (struct pcache_cache_subtree)->tree_lock |