Home
last modified time | relevance | path

Searched refs:lruvec (Results 1 – 15 of 15) sorted by relevance

/Linux-v5.10/include/linux/
Dmm_inline.h27 static __always_inline void __update_lru_size(struct lruvec *lruvec, in __update_lru_size() argument
31 struct pglist_data *pgdat = lruvec_pgdat(lruvec); in __update_lru_size()
33 __mod_lruvec_state(lruvec, NR_LRU_BASE + lru, nr_pages); in __update_lru_size()
38 static __always_inline void update_lru_size(struct lruvec *lruvec, in update_lru_size() argument
42 __update_lru_size(lruvec, lru, zid, nr_pages); in update_lru_size()
44 mem_cgroup_update_lru_size(lruvec, lru, zid, nr_pages); in update_lru_size()
49 struct lruvec *lruvec, enum lru_list lru) in add_page_to_lru_list() argument
51 update_lru_size(lruvec, lru, page_zonenum(page), thp_nr_pages(page)); in add_page_to_lru_list()
52 list_add(&page->lru, &lruvec->lists[lru]); in add_page_to_lru_list()
56 struct lruvec *lruvec, enum lru_list lru) in add_page_to_lru_list_tail() argument
[all …]
Dmemcontrol.h108 struct lruvec lruvec; member
465 static inline struct lruvec *mem_cgroup_lruvec(struct mem_cgroup *memcg, in mem_cgroup_lruvec()
469 struct lruvec *lruvec; in mem_cgroup_lruvec() local
472 lruvec = &pgdat->__lruvec; in mem_cgroup_lruvec()
480 lruvec = &mz->lruvec; in mem_cgroup_lruvec()
487 if (unlikely(lruvec->pgdat != pgdat)) in mem_cgroup_lruvec()
488 lruvec->pgdat = pgdat; in mem_cgroup_lruvec()
489 return lruvec; in mem_cgroup_lruvec()
492 struct lruvec *mem_cgroup_page_lruvec(struct page *, struct pglist_data *);
562 static inline struct mem_cgroup *lruvec_memcg(struct lruvec *lruvec) in lruvec_memcg() argument
[all …]
Dmmzone.h277 struct lruvec { struct
820 struct lruvec __lruvec;
878 extern void lruvec_init(struct lruvec *lruvec);
880 static inline struct pglist_data *lruvec_pgdat(struct lruvec *lruvec) in lruvec_pgdat() argument
883 return lruvec->pgdat; in lruvec_pgdat()
885 return container_of(lruvec, struct pglist_data, __lruvec); in lruvec_pgdat()
889 extern unsigned long lruvec_lru_size(struct lruvec *lruvec, enum lru_list lru, int zone_idx);
Dswap.h316 void workingset_age_nonresident(struct lruvec *lruvec, unsigned long nr_pages);
337 extern void lru_note_cost(struct lruvec *lruvec, bool file,
342 struct lruvec *lruvec, struct list_head *head);
/Linux-v5.10/mm/
Dworkingset.c227 void workingset_age_nonresident(struct lruvec *lruvec, unsigned long nr_pages) in workingset_age_nonresident() argument
241 atomic_long_add(nr_pages, &lruvec->nonresident_age); in workingset_age_nonresident()
242 } while ((lruvec = parent_lruvec(lruvec))); in workingset_age_nonresident()
257 struct lruvec *lruvec; in workingset_eviction() local
265 lruvec = mem_cgroup_lruvec(target_memcg, pgdat); in workingset_eviction()
266 workingset_age_nonresident(lruvec, thp_nr_pages(page)); in workingset_eviction()
268 memcgid = mem_cgroup_id(lruvec_memcg(lruvec)); in workingset_eviction()
269 eviction = atomic_long_read(&lruvec->nonresident_age); in workingset_eviction()
286 struct lruvec *eviction_lruvec; in workingset_refault()
292 struct lruvec *lruvec; in workingset_refault() local
[all …]
Dswap.c83 struct lruvec *lruvec; in __page_cache_release() local
87 lruvec = mem_cgroup_page_lruvec(page, pgdat); in __page_cache_release()
90 del_page_from_lru_list(page, lruvec, page_off_lru(page)); in __page_cache_release()
207 void (*move_fn)(struct page *page, struct lruvec *lruvec, void *arg), in pagevec_lru_move_fn() argument
212 struct lruvec *lruvec; in pagevec_lru_move_fn() local
226 lruvec = mem_cgroup_page_lruvec(page, pgdat); in pagevec_lru_move_fn()
227 (*move_fn)(page, lruvec, arg); in pagevec_lru_move_fn()
235 static void pagevec_move_tail_fn(struct page *page, struct lruvec *lruvec, in pagevec_move_tail_fn() argument
241 del_page_from_lru_list(page, lruvec, page_lru(page)); in pagevec_move_tail_fn()
243 add_page_to_lru_list_tail(page, lruvec, page_lru(page)); in pagevec_move_tail_fn()
[all …]
Dvmscan.c315 unsigned long lruvec_lru_size(struct lruvec *lruvec, enum lru_list lru, int zone_idx) in lruvec_lru_size() argument
321 struct zone *zone = &lruvec_pgdat(lruvec)->node_zones[zid]; in lruvec_lru_size()
327 size += mem_cgroup_get_zone_lru_size(lruvec, lru, zid); in lruvec_lru_size()
1616 static __always_inline void update_lru_sizes(struct lruvec *lruvec, in update_lru_sizes() argument
1625 update_lru_size(lruvec, lru, zid, -nr_zone_taken[zid]); in update_lru_sizes()
1650 struct lruvec *lruvec, struct list_head *dst, in isolate_lru_pages() argument
1654 struct list_head *src = &lruvec->lists[lru]; in isolate_lru_pages()
1732 update_lru_sizes(lruvec, lru, nr_zone_taken); in isolate_lru_pages()
1771 struct lruvec *lruvec; in isolate_lru_page() local
1774 lruvec = mem_cgroup_page_lruvec(page, pgdat); in isolate_lru_page()
[all …]
Dmmzone.c89 void lruvec_init(struct lruvec *lruvec) in lruvec_init() argument
93 memset(lruvec, 0, sizeof(struct lruvec)); in lruvec_init()
96 INIT_LIST_HEAD(&lruvec->lists[lru]); in lruvec_init()
Dmemcontrol.c809 void __mod_memcg_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx, in __mod_memcg_lruvec_state() argument
816 pn = container_of(lruvec, struct mem_cgroup_per_node, lruvec); in __mod_memcg_lruvec_state()
830 pg_data_t *pgdat = lruvec_pgdat(lruvec); in __mod_memcg_lruvec_state()
850 void __mod_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx, in __mod_lruvec_state() argument
854 __mod_node_page_state(lruvec_pgdat(lruvec), idx, val); in __mod_lruvec_state()
858 __mod_memcg_lruvec_state(lruvec, idx, val); in __mod_lruvec_state()
865 struct lruvec *lruvec; in __mod_lruvec_slab_state() local
879 lruvec = mem_cgroup_lruvec(memcg, pgdat); in __mod_lruvec_slab_state()
880 __mod_lruvec_state(lruvec, idx, val); in __mod_lruvec_slab_state()
1346 struct lruvec *mem_cgroup_page_lruvec(struct page *page, struct pglist_data *pgdat) in mem_cgroup_page_lruvec()
[all …]
Dslab.h310 struct lruvec *lruvec; in mod_objcg_state() local
314 lruvec = mem_cgroup_lruvec(memcg, pgdat); in mod_objcg_state()
315 mod_memcg_lruvec_state(lruvec, idx, nr); in mod_objcg_state()
Dmlock.c115 struct lruvec *lruvec; in __munlock_isolate_lru_page() local
117 lruvec = mem_cgroup_page_lruvec(page, page_pgdat(page)); in __munlock_isolate_lru_page()
121 del_page_from_lru_list(page, lruvec, page_lru(page)); in __munlock_isolate_lru_page()
Dhuge_memory.c2349 struct lruvec *lruvec, struct list_head *list) in __split_huge_page_tail() argument
2410 lru_add_page_tail(head, page_tail, lruvec, list); in __split_huge_page_tail()
2418 struct lruvec *lruvec; in __split_huge_page() local
2424 lruvec = mem_cgroup_page_lruvec(head, pgdat); in __split_huge_page()
2438 __split_huge_page_tail(head, i, lruvec, list); in __split_huge_page()
Dpage-writeback.c2726 struct lruvec *lruvec; in test_clear_page_writeback() local
2730 lruvec = mem_cgroup_page_lruvec(page, page_pgdat(page)); in test_clear_page_writeback()
2758 dec_lruvec_state(lruvec, NR_WRITEBACK); in test_clear_page_writeback()
Dcompaction.c805 struct lruvec *lruvec; in isolate_migratepages_block() local
1001 lruvec = mem_cgroup_page_lruvec(page, pgdat); in isolate_migratepages_block()
1012 del_page_from_lru_list(page, lruvec, page_lru(page)); in isolate_migratepages_block()
Dmigrate.c493 struct lruvec *old_lruvec, *new_lruvec; in migrate_page_move_mapping()