Lines Matching refs:chunk
157 chunk_t chunk) in chunk_to_sector() argument
159 return chunk << store->chunk_shift; in chunk_to_sector()
215 chunk_t chunk; member
230 static void track_chunk(struct dm_snapshot *s, struct bio *bio, chunk_t chunk) in track_chunk() argument
234 c->chunk = chunk; in track_chunk()
238 &s->tracked_chunk_hash[DM_TRACKED_CHUNK_HASH(chunk)]); in track_chunk()
252 static int __chunk_is_tracked(struct dm_snapshot *s, chunk_t chunk) in __chunk_is_tracked() argument
260 &s->tracked_chunk_hash[DM_TRACKED_CHUNK_HASH(chunk)], node) { in __chunk_is_tracked()
261 if (c->chunk == chunk) { in __chunk_is_tracked()
276 static void __check_for_conflicting_io(struct dm_snapshot *s, chunk_t chunk) in __check_for_conflicting_io() argument
278 while (__chunk_is_tracked(s, chunk)) in __check_for_conflicting_io()
632 static uint32_t exception_hash(struct dm_exception_table *et, chunk_t chunk) in exception_hash() argument
634 return (chunk >> et->hash_shift) & et->hash_mask; in exception_hash()
647 chunk_t chunk) in dm_lookup_exception() argument
652 slot = &et->table[exception_hash(et, chunk)]; in dm_lookup_exception()
654 if (chunk >= e->old_chunk && in dm_lookup_exception()
655 chunk <= e->old_chunk + dm_consecutive_chunk_count(e)) in dm_lookup_exception()
1601 __lookup_pending_exception(struct dm_snapshot *s, chunk_t chunk) in __lookup_pending_exception() argument
1603 struct dm_exception *e = dm_lookup_exception(&s->pending, chunk); in __lookup_pending_exception()
1621 struct dm_snap_pending_exception *pe, chunk_t chunk) in __find_pending_exception() argument
1625 pe2 = __lookup_pending_exception(s, chunk); in __find_pending_exception()
1631 pe->e.old_chunk = chunk; in __find_pending_exception()
1650 struct bio *bio, chunk_t chunk) in remap_exception() argument
1655 (chunk - e->old_chunk)) + in remap_exception()
1664 chunk_t chunk; in snapshot_map() local
1674 chunk = sector_to_chunk(s->store, bio->bi_iter.bi_sector); in snapshot_map()
1691 e = dm_lookup_exception(&s->complete, chunk); in snapshot_map()
1693 remap_exception(s, e, bio, chunk); in snapshot_map()
1703 pe = __lookup_pending_exception(s, chunk); in snapshot_map()
1715 e = dm_lookup_exception(&s->complete, chunk); in snapshot_map()
1718 remap_exception(s, e, bio, chunk); in snapshot_map()
1722 pe = __find_pending_exception(s, pe, chunk); in snapshot_map()
1730 remap_exception(s, &pe->e, bio, chunk); in snapshot_map()
1754 track_chunk(s, bio, chunk); in snapshot_map()
1780 chunk_t chunk; in snapshot_merge_map() local
1792 chunk = sector_to_chunk(s->store, bio->bi_iter.bi_sector); in snapshot_merge_map()
1801 e = dm_lookup_exception(&s->complete, chunk); in snapshot_merge_map()
1805 chunk >= s->first_merging_chunk && in snapshot_merge_map()
1806 chunk < (s->first_merging_chunk + in snapshot_merge_map()
1814 remap_exception(s, e, bio, chunk); in snapshot_merge_map()
1817 track_chunk(s, bio, chunk); in snapshot_merge_map()
2056 chunk_t chunk; in __origin_write() local
2081 chunk = sector_to_chunk(snap->store, sector); in __origin_write()
2088 e = dm_lookup_exception(&snap->complete, chunk); in __origin_write()
2092 pe = __lookup_pending_exception(snap, chunk); in __origin_write()
2103 e = dm_lookup_exception(&snap->complete, chunk); in __origin_write()
2109 pe = __find_pending_exception(snap, pe, chunk); in __origin_write()