dm_region_hash
struct dm_region_hash *rh;
struct dm_region_hash *rh; /* FIXME: can we get rid of this ? */
static region_t dm_rh_sector_to_region(struct dm_region_hash *rh, sector_t sector)
sector_t dm_rh_region_to_sector(struct dm_region_hash *rh, region_t region)
region_t dm_rh_bio_to_region(struct dm_region_hash *rh, struct bio *bio)
sector_t dm_rh_get_region_size(struct dm_region_hash *rh)
struct dm_region_hash *dm_region_hash_create(
struct dm_region_hash *rh;
void dm_region_hash_destroy(struct dm_region_hash *rh)
struct dm_dirty_log *dm_rh_dirty_log(struct dm_region_hash *rh)
static unsigned int rh_hash(struct dm_region_hash *rh, region_t region)
static struct dm_region *__rh_lookup(struct dm_region_hash *rh, region_t region)
static void __rh_insert(struct dm_region_hash *rh, struct dm_region *reg)
static struct dm_region *__rh_alloc(struct dm_region_hash *rh, region_t region)
static struct dm_region *__rh_find(struct dm_region_hash *rh, region_t region)
int dm_rh_get_state(struct dm_region_hash *rh, region_t region, int may_block)
struct dm_region_hash *rh = reg->rh;
void dm_rh_mark_nosync(struct dm_region_hash *rh, struct bio *bio)
void dm_rh_update_states(struct dm_region_hash *rh, int errors_handled)
static void rh_inc(struct dm_region_hash *rh, region_t region)
void dm_rh_inc_pending(struct dm_region_hash *rh, struct bio_list *bios)
void dm_rh_dec(struct dm_region_hash *rh, region_t region)
static int __rh_recovery_prepare(struct dm_region_hash *rh)
void dm_rh_recovery_prepare(struct dm_region_hash *rh)
struct dm_region *dm_rh_recovery_start(struct dm_region_hash *rh)
struct dm_region_hash *rh = reg->rh;
int dm_rh_recovery_in_flight(struct dm_region_hash *rh)
int dm_rh_flush(struct dm_region_hash *rh)
void dm_rh_delay(struct dm_region_hash *rh, struct bio *bio)
void dm_rh_stop_recovery(struct dm_region_hash *rh)
void dm_rh_start_recovery(struct dm_region_hash *rh)
int dm_rh_recovery_in_flight(struct dm_region_hash *rh);
void dm_rh_start_recovery(struct dm_region_hash *rh);
void dm_rh_stop_recovery(struct dm_region_hash *rh);
struct dm_region_hash;
struct dm_region_hash *dm_region_hash_create(
void dm_region_hash_destroy(struct dm_region_hash *rh);
struct dm_dirty_log *dm_rh_dirty_log(struct dm_region_hash *rh);
region_t dm_rh_bio_to_region(struct dm_region_hash *rh, struct bio *bio);
sector_t dm_rh_region_to_sector(struct dm_region_hash *rh, region_t region);
sector_t dm_rh_get_region_size(struct dm_region_hash *rh);
int dm_rh_get_state(struct dm_region_hash *rh, region_t region, int may_block);
void dm_rh_set_state(struct dm_region_hash *rh, region_t region,
void dm_rh_update_states(struct dm_region_hash *rh, int errors_handled);
int dm_rh_flush(struct dm_region_hash *rh);
void dm_rh_inc_pending(struct dm_region_hash *rh, struct bio_list *bios);
void dm_rh_dec(struct dm_region_hash *rh, region_t region);
void dm_rh_delay(struct dm_region_hash *rh, struct bio *bio);
void dm_rh_mark_nosync(struct dm_region_hash *rh, struct bio *bio);
void dm_rh_recovery_prepare(struct dm_region_hash *rh);
struct dm_region *dm_rh_recovery_start(struct dm_region_hash *rh);