Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 3 files:
- drivers/md/dm-pcache/cache_gc.c, line 161
- drivers/md/dm-pcache/cache_key.c, line 748
- drivers/md/dm-pcache/cache_writeback.c, line 181
Smatch caller information:
drivers/md/dm-pcache/cache_key.c kset_replay() -> cache_key_decode()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cache | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->cache_ctrl | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->cache_dev | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->cache_dev->seg_lock->first_waiter->task->blocked_lock.owner | (-4611686018427387904)-4611686018427387903 |
| PARAM_VALUE | 0 | cache->cache_dev->seg_lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | cache->cache_dev->seg_lock.first_waiter->task->blocked_lock.owner | (-1) |
| PARAM_VALUE | 0 | cache->cache_dev->seg_lock.first_waiter->task->blocked_lock.owner_cpu | 4294967295 |
| PARAM_VALUE | 0 | cache->cache_dev->seg_lock.first_waiter->task->blocked_lock.raw_lock.val.counter | s32min-s32max |
| PARAM_VALUE | 0 | cache->cache_dev->seg_lock.first_waiter->task->usage.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | cache->cache_info.seg_id | 0-64 |
| PARAM_VALUE | 0 | cache->cache_info_addr | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->data_heads | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->dirty_tail_seq | 0-255 |
| PARAM_VALUE | 0 | cache->key_head.seg_off | 0 |
| PARAM_VALUE | 0 | cache->key_tail_seq | 0-255 |
| PARAM_VALUE | 0 | cache->ksets | 16,4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.cache | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->backing_dev | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->cache_ctrl | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->cache_full | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->cache_info.flags | 0-8192 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->cache_info.seg_id | 0-64 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->cache_info_addr | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->data_heads | 0,4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->dev_size | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->dirty_tail_seq | 0-255 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->gc_work.cpu | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->gc_work.wq | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->key_tail_seq | 0-255 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->ksets | 0,16,4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->n_ksets | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->n_segs | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->req_key_tree.key_pool.alloc | 0,7276475779886346240 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->req_key_tree.key_pool.free | 0,8263660038527102976 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->req_key_tree.key_pool.min_nr | 0,1024 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->req_key_tree.subtrees | 0,16,4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->seg_map | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.cache->segments | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.key_pool.alloc | 7276475779886346240 |
| PARAM_VALUE | 0 | cache->req_key_tree.key_pool.elements | 1-u64max |
| PARAM_VALUE | 0 | cache->req_key_tree.key_pool.free | 8263660038527102976 |
| PARAM_VALUE | 0 | cache->req_key_tree.key_pool.min_nr | 1024 |
| PARAM_VALUE | 0 | cache->req_key_tree.key_pool.pool_data | 0,4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.key_pool.wait.head.next->next | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.key_pool.wait.head.prev->next | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.key_pool.wait.head.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->req_key_tree.n_subtrees | 0 |
| PARAM_VALUE | 0 | cache->req_key_tree.subtrees | 16,4096-ptr_max |
| PARAM_VALUE | 0 | cache->seg_map | 4096-ptr_max |
| PARAM_VALUE | 1 | key_onmedia | 4096-ptr_max |
| PARAM_VALUE | 2 | key | 0,4096-ptr_max |
| PARAM_VALUE | 2 | key->cache_tree | 4096-ptr_max |
| PARAM_VALUE | 2 | key->list_node.next->next | 4096-ptr_max |
| PARAM_VALUE | 2 | key->list_node.prev->next | 4096-ptr_max |
| PARAM_VALUE | 2 | key->list_node.prev->prev | 4096-ptr_max |
| BUF_SIZE | 0 | cache->data_heads | 16 |
| BUF_SIZE | 0 | cache->ksets | 5408 |
| BUF_SIZE | 2 | key->cache_tree | (-1),224 |
| CAPPED_DATA | 0 | cache->n_ksets | 1 |
| DATA_SOURCE | 0 | cache | $0 |
| DATA_SOURCE | 2 | key | r cache_key_alloc |
| 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 | 2 | key->cache_tree->key_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 2 | key->cache_tree->n_subtrees | |
| HALF_LOCKED2 | &md->type_lock |
drivers/md/dm-pcache/cache_writeback.c cache_kset_insert_tree() -> cache_key_decode()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cache | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.first_waiter->task->blocked_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.first_waiter->task->blocked_lock.owner | (-1) |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.first_waiter->task->blocked_lock.owner_cpu | 4294967295 |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.first_waiter->task->blocked_lock.raw_lock.val.counter | s32min-s32max |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.first_waiter->task->usage.refs.counter | s32min-s32max |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | cache->wb_kset_onmedia_buf | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->wb_kset_onmedia_buf->magic | 7451369025480052506 |
| PARAM_VALUE | 0 | cache->writeback_ctx.pending.counter | 0 |
| PARAM_VALUE | 0 | cache->writeback_errors.counter | 0 |
| PARAM_VALUE | 0 | cache->writeback_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | cache->writeback_lock.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | cache->writeback_lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | cache->writeback_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | cache->writeback_lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | cache->writeback_lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | cache->writeback_lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | key_onmedia | 4096-ptr_max |
| PARAM_VALUE | 2 | key | 0,4096-ptr_max |
| PARAM_VALUE | 2 | key->cache_tree | 4096-ptr_max |
| BUF_SIZE | 2 | key->cache_tree | (-1),224 |
| CAPPED_DATA | 0 | cache->wb_kset_onmedia_buf->crc | 1 |
| DATA_SOURCE | 0 | cache | $0 |
| DATA_SOURCE | 2 | key | r cache_key_alloc |
| NO_OVERFLOW_SIMPLE | 2 | key->cache_tree->key_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 2 | key->cache_tree->n_subtrees | |
| LOCK2 | 0 | &cache->writeback_lock | |
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct pcache_cache)->writeback_lock |
drivers/md/dm-pcache/cache_gc.c pcache_cache_gc_fn() -> cache_key_decode()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cache | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | cache->dirty_tail_lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | cache->gc_errors.counter | 0 |
| PARAM_VALUE | 0 | cache->gc_kset_onmedia_buf->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cache->gc_kset_onmedia_buf->magic | 7451369025480052506 |
| PARAM_VALUE | 0 | cache->key_tail_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | cache->key_tail_lock.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 0 | cache->key_tail_lock.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 0 | cache->key_tail_lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | cache->key_tail_lock.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | key_onmedia | 4096-ptr_max |
| PARAM_VALUE | 2 | key | 194387841164607488 |
| PARAM_VALUE | 2 | key->cache_pos.cache_seg | 0 |
| PARAM_VALUE | 2 | key->cache_pos.seg_off | 0 |
| PARAM_VALUE | 2 | key->cache_subtree | 0 |
| PARAM_VALUE | 2 | key->cache_tree | 4096-ptr_max |
| PARAM_VALUE | 2 | key->flags | 0 |
| PARAM_VALUE | 2 | key->len | 0 |
| PARAM_VALUE | 2 | key->list_node.next | 4096-ptr_max |
| PARAM_VALUE | 2 | key->list_node.next->next | 4096-ptr_max |
| PARAM_VALUE | 2 | key->list_node.prev | 4096-ptr_max |
| PARAM_VALUE | 2 | key->list_node.prev->next | 4096-ptr_max |
| PARAM_VALUE | 2 | key->list_node.prev->prev | 4096-ptr_max |
| PARAM_VALUE | 2 | key->off | 0 |
| PARAM_VALUE | 2 | key->rb_node.__rb_parent_color | 0 |
| PARAM_VALUE | 2 | key->rb_node.rb_left | 0 |
| PARAM_VALUE | 2 | key->rb_node.rb_right | 0 |
| PARAM_VALUE | 2 | key->ref.refcount.refs.counter | 1 |
| PARAM_VALUE | 2 | key->seg_gen | 0 |
| BUF_SIZE | 2 | key | 104 |
| CAPPED_DATA | 0 | cache->gc_kset_onmedia_buf->crc | 1 |
| CAPPED_DATA | 0 | &cache->dirty_tail_lock | 1 |
| CAPPED_DATA | 0 | &cache->key_tail_lock | 1 |
| NO_OVERFLOW_SIMPLE | 2 | key->cache_tree->key_pool.min_nr | |
| NO_OVERFLOW_SIMPLE | 2 | key->cache_tree->n_subtrees | |
| HALF_LOCKED2 | &pool->lock |