enr 206 drivers/block/drbd/drbd_actlog.c static struct bm_extent *find_active_resync_extent(struct drbd_device *device, unsigned int enr) enr 209 drivers/block/drbd/drbd_actlog.c tmp = lc_find(device->resync, enr/AL_EXT_PER_BM_SECT); enr 218 drivers/block/drbd/drbd_actlog.c static struct lc_element *_al_get(struct drbd_device *device, unsigned int enr, bool nonblock) enr 225 drivers/block/drbd/drbd_actlog.c bm_ext = find_active_resync_extent(device, enr); enr 234 drivers/block/drbd/drbd_actlog.c al_ext = lc_try_get(device->act_log, enr); enr 236 drivers/block/drbd/drbd_actlog.c al_ext = lc_get(device->act_log, enr); enr 264 drivers/block/drbd/drbd_actlog.c unsigned enr; enr 270 drivers/block/drbd/drbd_actlog.c for (enr = first; enr <= last; enr++) { enr 273 drivers/block/drbd/drbd_actlog.c (al_ext = _al_get(device, enr, false)) != NULL); enr 274 drivers/block/drbd/drbd_actlog.c if (al_ext->lc_number != enr) enr 493 drivers/block/drbd/drbd_actlog.c unsigned enr; enr 519 drivers/block/drbd/drbd_actlog.c for (enr = first; enr <= last; enr++) { enr 521 drivers/block/drbd/drbd_actlog.c tmp = lc_find(device->resync, enr/AL_EXT_PER_BM_SECT); enr 535 drivers/block/drbd/drbd_actlog.c for (enr = first; enr <= last; enr++) { enr 537 drivers/block/drbd/drbd_actlog.c al_ext = lc_get_cumulative(device->act_log, enr); enr 539 drivers/block/drbd/drbd_actlog.c drbd_info(device, "LOGIC BUG for enr=%u\n", enr); enr 550 drivers/block/drbd/drbd_actlog.c unsigned enr; enr 557 drivers/block/drbd/drbd_actlog.c for (enr = first; enr <= last; enr++) { enr 558 drivers/block/drbd/drbd_actlog.c extent = lc_find(device->act_log, enr); enr 560 drivers/block/drbd/drbd_actlog.c drbd_err(device, "al_complete_io() called on inactive extent %u\n", enr); enr 652 drivers/block/drbd/drbd_actlog.c unsigned int enr, int count, enr 667 drivers/block/drbd/drbd_actlog.c e = lc_find(device->resync, enr); enr 669 drivers/block/drbd/drbd_actlog.c e = lc_get(device->resync, enr); enr 672 drivers/block/drbd/drbd_actlog.c if (ext->lce.lc_number == enr) { enr 692 drivers/block/drbd/drbd_actlog.c ext->rs_left = drbd_bm_e_weight(device, enr); enr 701 drivers/block/drbd/drbd_actlog.c int rs_left = drbd_bm_e_weight(device, enr); enr 706 drivers/block/drbd/drbd_actlog.c ext->flags, enr, rs_left); enr 902 drivers/block/drbd/drbd_actlog.c struct bm_extent *_bme_get(struct drbd_device *device, unsigned int enr) enr 914 drivers/block/drbd/drbd_actlog.c e = lc_get(device->resync, enr); enr 917 drivers/block/drbd/drbd_actlog.c if (bm_ext->lce.lc_number != enr) { enr 918 drivers/block/drbd/drbd_actlog.c bm_ext->rs_left = drbd_bm_e_weight(device, enr); enr 942 drivers/block/drbd/drbd_actlog.c static int _is_in_al(struct drbd_device *device, unsigned int enr) enr 947 drivers/block/drbd/drbd_actlog.c rv = lc_is_used(device->act_log, enr); enr 962 drivers/block/drbd/drbd_actlog.c unsigned int enr = BM_SECT_TO_EXT(sector); enr 969 drivers/block/drbd/drbd_actlog.c (bm_ext = _bme_get(device, enr))); enr 981 drivers/block/drbd/drbd_actlog.c !_is_in_al(device, enr * AL_EXT_PER_BM_SECT + i) || enr 1014 drivers/block/drbd/drbd_actlog.c unsigned int enr = BM_SECT_TO_EXT(sector); enr 1015 drivers/block/drbd/drbd_actlog.c const unsigned int al_enr = enr*AL_EXT_PER_BM_SECT; enr 1026 drivers/block/drbd/drbd_actlog.c if (throttle && device->resync_wenr != enr) enr 1030 drivers/block/drbd/drbd_actlog.c if (device->resync_wenr != LC_FREE && device->resync_wenr != enr) { enr 1061 drivers/block/drbd/drbd_actlog.c e = lc_try_get(device->resync, enr); enr 1082 drivers/block/drbd/drbd_actlog.c e = lc_get(device->resync, enr); enr 1092 drivers/block/drbd/drbd_actlog.c if (bm_ext->lce.lc_number != enr) { enr 1093 drivers/block/drbd/drbd_actlog.c bm_ext->rs_left = drbd_bm_e_weight(device, enr); enr 1128 drivers/block/drbd/drbd_actlog.c device->resync_wenr = enr; enr 1136 drivers/block/drbd/drbd_actlog.c unsigned int enr = BM_SECT_TO_EXT(sector); enr 1142 drivers/block/drbd/drbd_actlog.c e = lc_find(device->resync, enr); enr 1155 drivers/block/drbd/drbd_actlog.c (unsigned long long)sector, enr); enr 1632 drivers/block/drbd/drbd_bitmap.c int drbd_bm_e_weight(struct drbd_device *device, unsigned long enr) enr 1648 drivers/block/drbd/drbd_bitmap.c s = S2W(enr); enr 1649 drivers/block/drbd/drbd_bitmap.c e = min((size_t)S2W(enr+1), b->bm_words); enr 1359 drivers/block/drbd/drbd_int.h extern int drbd_bm_e_weight(struct drbd_device *device, unsigned long enr); enr 244 include/linux/lru_cache.h extern void lc_set(struct lru_cache *lc, unsigned int enr, int index); enr 247 include/linux/lru_cache.h extern struct lc_element *lc_get_cumulative(struct lru_cache *lc, unsigned int enr); enr 248 include/linux/lru_cache.h extern struct lc_element *lc_try_get(struct lru_cache *lc, unsigned int enr); enr 249 include/linux/lru_cache.h extern struct lc_element *lc_find(struct lru_cache *lc, unsigned int enr); enr 250 include/linux/lru_cache.h extern struct lc_element *lc_get(struct lru_cache *lc, unsigned int enr); enr 294 include/linux/lru_cache.h extern bool lc_is_used(struct lru_cache *lc, unsigned int enr); enr 243 lib/lru_cache.c static struct hlist_head *lc_hash_slot(struct lru_cache *lc, unsigned int enr) enr 245 lib/lru_cache.c return lc->lc_slot + (enr % lc->nr_elements); enr 249 lib/lru_cache.c static struct lc_element *__lc_find(struct lru_cache *lc, unsigned int enr, enr 256 lib/lru_cache.c hlist_for_each_entry(e, lc_hash_slot(lc, enr), colision) { enr 260 lib/lru_cache.c if (e->lc_new_number != enr) enr 280 lib/lru_cache.c struct lc_element *lc_find(struct lru_cache *lc, unsigned int enr) enr 282 lib/lru_cache.c return __lc_find(lc, enr, 0); enr 295 lib/lru_cache.c bool lc_is_used(struct lru_cache *lc, unsigned int enr) enr 297 lib/lru_cache.c struct lc_element *e = __lc_find(lc, enr, 1); enr 361 lib/lru_cache.c static struct lc_element *__lc_get(struct lru_cache *lc, unsigned int enr, unsigned int flags) enr 371 lib/lru_cache.c e = __lc_find(lc, enr, 1); enr 429 lib/lru_cache.c e = lc_prepare_for_change(lc, enr); enr 480 lib/lru_cache.c struct lc_element *lc_get(struct lru_cache *lc, unsigned int enr) enr 482 lib/lru_cache.c return __lc_get(lc, enr, LC_GET_MAY_CHANGE); enr 500 lib/lru_cache.c struct lc_element *lc_get_cumulative(struct lru_cache *lc, unsigned int enr) enr 502 lib/lru_cache.c return __lc_get(lc, enr, LC_GET_MAY_CHANGE|LC_GET_MAY_USE_UNCOMMITTED); enr 521 lib/lru_cache.c struct lc_element *lc_try_get(struct lru_cache *lc, unsigned int enr) enr 523 lib/lru_cache.c return __lc_get(lc, enr, 0); enr 606 lib/lru_cache.c void lc_set(struct lru_cache *lc, unsigned int enr, int index) enr 618 lib/lru_cache.c e->lc_number = e->lc_new_number = enr; enr 620 lib/lru_cache.c if (enr == LC_FREE) enr 623 lib/lru_cache.c hlist_add_head(&e->colision, lc_hash_slot(lc, enr));