Searched refs:lrugen (Results 1 – 5 of 5) sorted by relevance
2718 unsigned long max_seq = READ_ONCE((lruvec)->lrugen.max_seq)2722 READ_ONCE((lruvec)->lrugen.min_seq[LRU_GEN_ANON]), \2723 READ_ONCE((lruvec)->lrugen.min_seq[LRU_GEN_FILE]), \2785 return lruvec->lrugen.max_seq - lruvec->lrugen.min_seq[type] + 1; in get_nr_gens()3202 struct lru_gen_folio *lrugen = &lruvec->lrugen; in read_ctrl_pos() local3203 int hist = lru_hist_from_seq(lrugen->min_seq[type]); in read_ctrl_pos()3209 pos->refaulted += lrugen->avg_refaulted[type][i] + in read_ctrl_pos()3210 atomic_long_read(&lrugen->refaulted[hist][type][i]); in read_ctrl_pos()3211 pos->total += lrugen->avg_total[type][i] + in read_ctrl_pos()3212 lrugen->protected[hist][type][i] + in read_ctrl_pos()[all …]
241 struct lru_gen_folio *lrugen; in lru_gen_eviction() local257 lrugen = &lruvec->lrugen; in lru_gen_eviction()258 min_seq = READ_ONCE(lrugen->min_seq[type]); in lru_gen_eviction()262 atomic_long_add(delta, &lrugen->evicted[hist][type][tier]); in lru_gen_eviction()286 max_seq = READ_ONCE((*lruvec)->lrugen.max_seq); in lru_gen_test_recent()299 struct lru_gen_folio *lrugen; in lru_gen_refault() local314 lrugen = &lruvec->lrugen; in lru_gen_refault()316 hist = lru_hist_from_seq(READ_ONCE(lrugen->min_seq[type])); in lru_gen_refault()320 atomic_long_add(delta, &lrugen->refaulted[hist][type][tier]); in lru_gen_refault()
391 seq = READ_ONCE(folio_lruvec(folio)->lrugen.min_seq[type]); in lru_gen_clear_refs()
84 ``lrugen->max_seq`` for both anon and file types as they are aged on86 ``lrugen->min_seq[]`` separately for anon and file types as clean file92 truncated generation number is an index to ``lrugen->folios[]``. The96 ``lrugen->folios[]``; otherwise it stores zero.100 generations, tiers do not have dedicated ``lrugen->folios[]``. In131 increments ``min_seq`` when ``lrugen->folios[]`` indexed by
788 struct lru_gen_folio lrugen; member