Home
last modified time | relevance | path

Searched refs:cache_seg (Results 1 – 8 of 8) sorted by relevance

/linux/drivers/md/dm-pcache/
H A Dcache_segment.c8 static inline struct pcache_segment_info *get_seg_info_addr(struct pcache_cache_segment *cache_seg) in get_seg_info_addr() argument
11 u32 seg_id = cache_seg->segment.seg_id; in get_seg_info_addr()
14 seg_addr = CACHE_DEV_SEGMENT(cache_seg->cache->cache_dev, seg_id); in get_seg_info_addr()
15 seg_info_addr = seg_addr + PCACHE_SEG_INFO_SIZE * cache_seg->info_index; in get_seg_info_addr()
20 static void cache_seg_info_write(struct pcache_cache_segment *cache_seg) in cache_seg_info_write() argument
23 struct pcache_segment_info *seg_info = &cache_seg->cache_seg_info; in cache_seg_info_write()
25 mutex_lock(&cache_seg->info_lock); in cache_seg_info_write()
29 cache_seg->info_index = (cache_seg->info_index + 1) % PCACHE_META_INDEX_MAX; in cache_seg_info_write()
31 seg_info_addr = get_seg_info_addr(cache_seg); in cache_seg_info_write()
34 mutex_unlock(&cache_seg->info_lock); in cache_seg_info_write()
[all …]
H A Dcache_req.c19 data_head->head_pos.cache_seg = next_seg; in cache_data_head_init()
40 struct pcache_cache_segment *cache_seg; in cache_data_alloc() local
49 if (!data_head->head_pos.cache_seg) { in cache_data_alloc()
53 key->seg_gen = key->cache_pos.cache_seg->gen; in cache_data_alloc()
56 cache_seg = head_pos->cache_seg; in cache_data_alloc()
64 cache_seg_get(cache_seg); in cache_data_alloc()
71 cache_seg_get(cache_seg); in cache_data_alloc()
73 cache_seg_put(head_pos->cache_seg); in cache_data_alloc()
74 head_pos->cache_seg = NULL; in cache_data_alloc()
96 segment = &pos->cache_seg->segment; in cache_copy_from_req_bio()
[all …]
H A Dcache_gc.c18 cache_seg_put(key->cache_pos.cache_seg); in cache_key_gc()
33 dirty_tail->cache_seg->cache_seg_id, in need_gc()
50 key_tail->cache_seg->cache_seg_id, key_tail->seg_off, in need_gc()
82 cur_seg = cache->key_tail.cache_seg; in last_kset_gc()
87 cache->key_tail.cache_seg = next_seg; in last_kset_gc()
130 if (dirty_tail.cache_seg == key_tail.cache_seg) in pcache_cache_gc_fn()
159 key_tail.cache_seg->cache_seg_id, in pcache_cache_gc_fn()
H A Dcache.h73 struct pcache_cache_segment *cache_seg; member
337 void cache_seg_get(struct pcache_cache_segment *cache_seg);
338 void cache_seg_put(struct pcache_cache_segment *cache_seg);
339 void cache_seg_set_next_seg(struct pcache_cache_segment *cache_seg, u32 seg_id);
365 return (pos->cache_seg->segment.data + pos->seg_off); in cache_pos_addr()
432 if (key->cache_pos.cache_seg) in cache_key_cutfront()
520 struct pcache_cache_segment *cache_seg; in cache_seg_remain() local
524 cache_seg = pos->cache_seg; in cache_seg_remain()
525 segment = &cache_seg->segment; in cache_seg_remain()
549 return (key->seg_gen < key->cache_pos.cache_seg->gen); in cache_key_invalid()
H A Dcache_key.c78 key_onmedia->cache_seg_id = key->cache_pos.cache_seg->cache_seg_id; in cache_key_encode()
97 key->cache_pos.cache_seg = &cache->segments[key_onmedia->cache_seg_id]; in cache_key_decode()
106 key->off, key->len, key->cache_pos.cache_seg->cache_seg_id, in cache_key_decode()
157 cache->key_head.cache_seg = next_seg; in cache_kset_close()
731 __set_bit(key->cache_pos.cache_seg->cache_seg_id, cache->seg_map); in kset_replay()
734 if (key->seg_gen < key->cache_pos.cache_seg->gen) { in kset_replay()
743 cache_seg_get(key->cache_pos.cache_seg); in kset_replay()
771 __set_bit(pos->cache_seg->cache_seg_id, cache->seg_map); in cache_replay()
794 pos->cache_seg = next_seg; in cache_replay()
797 __set_bit(pos->cache_seg->cache_seg_id, cache->seg_map); in cache_replay()
H A Dcache_writeback.c61 dirty_tail->cache_seg->cache_seg_id, dirty_tail->seg_off, in is_cache_clean()
69 dirty_tail->cache_seg->cache_seg_id, dirty_tail->seg_off, in is_cache_clean()
210 cache->dirty_tail.cache_seg = next_seg; in last_kset_writeback()
H A Dcache.c94 pos_onmedia.cache_seg_id = pos->cache_seg->cache_seg_id; in cache_pos_encode()
121 pos->cache_seg = &cache->segments[latest.cache_seg_id]; in cache_pos_decode()
201 cache->key_head.cache_seg = &cache->segments[0]; in cache_tail_init()
323 h->head_pos.cache_seg = NULL; in cache_init_req_keys()
H A Ddm_pcache.c411 cache->key_head.cache_seg->cache_seg_id, in dm_pcache_status()
413 cache->dirty_tail.cache_seg->cache_seg_id, in dm_pcache_status()
415 cache->key_tail.cache_seg->cache_seg_id, in dm_pcache_status()