lh
static void lh_init(struct lock_history *lh, struct dm_buffer_cache *cache, bool write)
static void __lh_lock(struct lock_history *lh, unsigned int index)
static void __lh_unlock(struct lock_history *lh, unsigned int index)
__lh_unlock(lh, lh->previous);
static void lh_next(struct lock_history *lh, sector_t b)
__lh_unlock(lh, lh->previous);
__lh_lock(lh, index);
__lh_lock(lh, index);
struct lock_history *lh;
lh_next(w->lh, b->block);
struct evict_wrapper w = {.lh = lh, .pred = pred, .context = context};
struct lock_history lh;
lh_init(&lh, bc, true);
b = __cache_evict(bc, list_mode, pred, context, &lh);
lh_exit(&lh);
struct evict_wrapper w = {.lh = lh, .pred = pred, .context = context};
struct lock_history lh;
lh_init(&lh, bc, true);
__cache_mark_many(bc, old_mode, new_mode, pred, context, &lh);
lh_exit(&lh);
lh_next(lh, b->block);
struct lock_history lh;
lh_init(&lh, bc, false);
__cache_iterate(bc, list_mode, fn, context, &lh);
lh_exit(&lh);