Lines Matching refs:lru
77 if ((_page)->lru.prev != _base) { \
80 prev = lru_to_page(&(_page->lru)); \
222 * @lruvec: lru vector
223 * @lru: lru to use
226 unsigned long lruvec_lru_size(struct lruvec *lruvec, enum lru_list lru, int zone_idx)
239 size += zone_page_state(zone, NR_ZONE_LRU_BASE + lru);
252 size += mem_cgroup_get_zone_lru_size(lruvec, lru, zid);
254 size += zone_page_state(zone, NR_ZONE_LRU_BASE + lru);
901 * @page: page to be put back to appropriate lru list
1036 list_del(&page->lru);
1155 list_add_tail(&page->lru, page_list);
1396 list_add(&page->lru, &free_pages);
1423 list_add(&page->lru, &ret_pages);
1452 list_for_each_entry_safe(page, next, page_list, lru) {
1456 list_move(&page->lru, &clean_pages);
1561 enum lru_list lru, unsigned long *nr_zone_taken)
1569 update_lru_size(lruvec, lru, zid, -nr_zone_taken[zid]);
1589 * @lru: LRU list id for isolating
1596 enum lru_list lru)
1598 struct list_head *src = &lruvec->lists[lru];
1621 list_move(&page->lru, &pages_skipped);
1641 list_move(&page->lru, dst);
1646 list_move(&page->lru, src);
1675 total_scan, skipped, nr_taken, mode, lru);
1676 update_lru_sizes(lruvec, lru, nr_zone_taken);
1720 int lru = page_lru(page);
1723 del_page_from_lru_list(page, lruvec, lru);
1794 enum lru_list lru;
1804 list_del(&page->lru);
1813 lru = page_lru(page);
1816 update_lru_size(lruvec, lru, page_zonenum(page), nr_pages);
1817 list_move(&page->lru, &lruvec->lists[lru]);
1822 del_page_from_lru_list(page, lruvec, lru);
1829 list_add(&page->lru, &pages_to_free);
1878 struct scan_control *sc, enum lru_list lru)
1885 bool file = is_file_lru(lru);
1911 &nr_scanned, sc, lru);
1984 enum lru_list lru)
1995 int file = is_file_lru(lru);
2003 &nr_scanned, sc, lru);
2016 list_del(&page->lru);
2044 list_add(&page->lru, &l_active);
2051 list_add(&page->lru, &l_inactive);
2055 * Move pages back to the lru list.
2100 list_move(&page->lru, &node_page_list);
2109 list_del(&page->lru);
2122 list_del(&page->lru);
2130 unsigned long shrink_list(enum lru_list lru, unsigned long nr_to_scan,
2137 stub = is_file_lru(lru) ? RA_SHRINKFILE : RA_SHRINKANON;
2140 if (is_active_lru(lru)) {
2141 if (sc->may_deactivate & (1 << is_file_lru(lru)))
2142 shrink_active_list(nr_to_scan, lruvec, sc, lru);
2152 nr_reclaimed = shrink_inactive_list(nr_to_scan, lruvec, sc, lru);
2156 return shrink_inactive_list(nr_to_scan, lruvec, sc, lru);
2227 enum lru_list lru;
2305 for_each_evictable_lru(lru) {
2306 int file = is_file_lru(lru);
2311 lruvec_size = lruvec_lru_size(lruvec, lru, sc->reclaim_idx);
2409 nr[lru] = scan;
2418 enum lru_list lru;
2437 * abort proportional reclaim if either the file or anon lru has already
2449 for_each_evictable_lru(lru) {
2450 if (nr[lru]) {
2451 nr_to_scan = min(nr[lru], SWAP_CLUSTER_MAX);
2452 nr[lru] -= nr_to_scan;
2454 nr_reclaimed += shrink_list(lru, nr_to_scan,
2486 lru = LRU_BASE;
2491 lru = LRU_FILE;
2496 nr[lru] = 0;
2497 nr[lru + LRU_ACTIVE] = 0;
2503 lru = (lru == LRU_FILE) ? LRU_BASE : LRU_FILE;
2504 nr_scanned = targets[lru] - nr[lru];
2505 nr[lru] = targets[lru] * (100 - percentage) / 100;
2506 nr[lru] -= min(nr[lru], nr_scanned);
2508 lru += LRU_ACTIVE;
2509 nr_scanned = targets[lru] - nr[lru];
2510 nr[lru] = targets[lru] * (100 - percentage) / 100;
2511 nr[lru] -= min(nr[lru], nr_scanned);
2518 * rebalance the anon lru active/inactive ratio.
4305 * appropriate zone lru list
4306 * @pvec: pagevec with lru pages to check
4309 * lru list, moves it to the appropriate evictable lru list. This function
4310 * should be only used for lru pages.
4343 enum lru_list lru = page_lru_base_type(page);
4348 add_page_to_lru_list(page, lruvec, lru);