Home
last modified time | relevance | path

Searched refs:lru (Results 1 – 25 of 137) sorted by relevance

123456

/Linux-v5.15/mm/
Dlist_lru.c21 static void list_lru_register(struct list_lru *lru) in list_lru_register() argument
24 list_add(&lru->list, &list_lrus); in list_lru_register()
28 static void list_lru_unregister(struct list_lru *lru) in list_lru_unregister() argument
31 list_del(&lru->list); in list_lru_unregister()
35 static int lru_shrinker_id(struct list_lru *lru) in lru_shrinker_id() argument
37 return lru->shrinker_id; in lru_shrinker_id()
40 static inline bool list_lru_memcg_aware(struct list_lru *lru) in list_lru_memcg_aware() argument
42 return lru->memcg_aware; in list_lru_memcg_aware()
56 return memcg_lrus->lru[idx]; in list_lru_from_memcg_idx()
57 return &nlru->lru; in list_lru_from_memcg_idx()
[all …]
Dzbud.c111 struct list_head lru; member
128 struct list_head lru; member
159 INIT_LIST_HEAD(&zhdr->lru); in init_zbud_page()
232 INIT_LIST_HEAD(&pool->lru); in zbud_create_pool()
323 if (!list_empty(&zhdr->lru)) in zbud_alloc()
324 list_del(&zhdr->lru); in zbud_alloc()
325 list_add(&zhdr->lru, &pool->lru); in zbud_alloc()
368 list_del(&zhdr->lru); in zbud_free()
422 if (!pool->ops || !pool->ops->evict || list_empty(&pool->lru) || in zbud_reclaim_page()
428 zhdr = list_last_entry(&pool->lru, struct zbud_header, lru); in zbud_reclaim_page()
[all …]
Dballoon_compaction.c48 list_for_each_entry_safe(page, tmp, pages, lru) { in balloon_page_list_enqueue()
49 list_del(&page->lru); in balloon_page_list_enqueue()
84 list_for_each_entry_safe(page, tmp, &b_dev_info->pages, lru) { in balloon_page_list_dequeue()
104 list_add(&page->lru, pages); in balloon_page_list_dequeue()
200 return list_first_entry(&pages, struct page, lru); in balloon_page_dequeue()
213 list_del(&page->lru); in balloon_page_isolate()
226 list_add(&page->lru, &b_dev_info->pages); in balloon_page_putback()
Dvmscan.c163 if ((_page)->lru.prev != _base) { \
166 prev = lru_to_page(&(_page->lru)); \
591 static unsigned long lruvec_lru_size(struct lruvec *lruvec, enum lru_list lru, in lruvec_lru_size() argument
604 size += mem_cgroup_get_zone_lru_size(lruvec, lru, zid); in lruvec_lru_size()
606 size += zone_page_state(zone, NR_ZONE_LRU_BASE + lru); in lruvec_lru_size()
1392 list_del(&page->lru); in shrink_page_list()
1511 list_add_tail(&page->lru, page_list); in shrink_page_list()
1536 list_add(&page->lru, &demote_pages); in shrink_page_list()
1765 list_add(&page->lru, &free_pages); in shrink_page_list()
1792 list_add(&page->lru, &ret_pages); in shrink_page_list()
[all …]
Dpage_reporting.c151 list_for_each_entry_safe(page, next, list, lru) { in page_reporting_cycle()
186 if (!list_is_first(&page->lru, list)) in page_reporting_cycle()
187 list_rotate_to_front(&page->lru, list); in page_reporting_cycle()
211 next = list_first_entry(list, struct page, lru); in page_reporting_cycle()
219 if (!list_entry_is_head(next, list, lru) && !list_is_first(&next->lru, list)) in page_reporting_cycle()
220 list_rotate_to_front(&next->lru, list); in page_reporting_cycle()
Dpgtable-generic.c168 INIT_LIST_HEAD(&pgtable->lru); in pgtable_trans_huge_deposit()
170 list_add(&pgtable->lru, &pmd_huge_pte(mm, pmdp)->lru); in pgtable_trans_huge_deposit()
185 pmd_huge_pte(mm, pmdp) = list_first_entry_or_null(&pgtable->lru, in pgtable_trans_huge_withdraw()
186 struct page, lru); in pgtable_trans_huge_withdraw()
188 list_del(&pgtable->lru); in pgtable_trans_huge_withdraw()
Dz3fold.c162 struct list_head lru; member
391 INIT_LIST_HEAD(&page->lru); in init_z3fold_page()
513 if (!list_empty(&page->lru)) in __release_z3fold_page()
514 list_del_init(&page->lru); in __release_z3fold_page()
999 INIT_LIST_HEAD(&pool->lru); in z3fold_create_pool()
1174 if (!list_empty(&page->lru)) in z3fold_alloc()
1175 list_del(&page->lru); in z3fold_alloc()
1177 list_add(&page->lru, &pool->lru); in z3fold_alloc()
1216 list_del(&page->lru); in z3fold_free()
1331 if (list_empty(&pool->lru)) { in z3fold_reclaim_page()
[all …]
Dmmzone.c77 enum lru_list lru; in lruvec_init() local
82 for_each_lru(lru) in lruvec_init()
83 INIT_LIST_HEAD(&lruvec->lists[lru]); in lruvec_init()
/Linux-v5.15/include/linux/
Dlist_lru.h37 struct list_lru_one *lru[]; member
44 struct list_lru_one lru; member
61 void list_lru_destroy(struct list_lru *lru);
62 int __list_lru_init(struct list_lru *lru, bool memcg_aware,
65 #define list_lru_init(lru) \ argument
66 __list_lru_init((lru), false, NULL, NULL)
67 #define list_lru_init_key(lru, key) \ argument
68 __list_lru_init((lru), false, (key), NULL)
69 #define list_lru_init_memcg(lru, shrinker) \ argument
70 __list_lru_init((lru), true, NULL, shrinker)
[all …]
Dmm_inline.h28 enum lru_list lru, enum zone_type zid, in update_lru_size() argument
33 __mod_lruvec_state(lruvec, NR_LRU_BASE + lru, nr_pages); in update_lru_size()
35 NR_ZONE_LRU_BASE + lru, nr_pages); in update_lru_size()
37 mem_cgroup_update_lru_size(lruvec, lru, zid, nr_pages); in update_lru_size()
68 enum lru_list lru; in page_lru() local
75 lru = page_is_file_lru(page) ? LRU_INACTIVE_FILE : LRU_INACTIVE_ANON; in page_lru()
77 lru += LRU_ACTIVE; in page_lru()
79 return lru; in page_lru()
85 enum lru_list lru = page_lru(page); in add_page_to_lru_list() local
87 update_lru_size(lruvec, lru, page_zonenum(page), thp_nr_pages(page)); in add_page_to_lru_list()
[all …]
Dballoon_compaction.h105 list_add(&page->lru, &balloon->pages); in balloon_page_insert()
126 list_del(&page->lru); in balloon_page_delete()
149 list_add(&page->lru, &balloon->pages); in balloon_page_insert()
155 list_del(&page->lru); in balloon_page_delete()
190 list_add(&page->lru, pages); in balloon_page_push()
202 struct page *page = list_first_entry_or_null(pages, struct page, lru); in balloon_page_pop()
207 list_del(&page->lru); in balloon_page_pop()
Dmmzone.h106 struct page, lru); in get_page_from_free_area()
275 #define for_each_lru(lru) for (lru = 0; lru < NR_LRU_LISTS; lru++) argument
277 #define for_each_evictable_lru(lru) for (lru = 0; lru <= LRU_ACTIVE_FILE; lru++) argument
279 static inline bool is_file_lru(enum lru_list lru) in is_file_lru() argument
281 return (lru == LRU_INACTIVE_FILE || lru == LRU_ACTIVE_FILE); in is_file_lru()
284 static inline bool is_active_lru(enum lru_list lru) in is_active_lru() argument
286 return (lru == LRU_ACTIVE_ANON || lru == LRU_ACTIVE_FILE); in is_active_lru()
/Linux-v5.15/kernel/bpf/
Dbpf_lru_list.c139 static void __bpf_lru_list_rotate_active(struct bpf_lru *lru, in __bpf_lru_list_rotate_active() argument
153 if (++i == lru->nr_scans || node == first_node) in __bpf_lru_list_rotate_active()
166 static void __bpf_lru_list_rotate_inactive(struct bpf_lru *lru, in __bpf_lru_list_rotate_inactive() argument
182 while (i < lru->nr_scans) { in __bpf_lru_list_rotate_inactive()
206 __bpf_lru_list_shrink_inactive(struct bpf_lru *lru, in __bpf_lru_list_shrink_inactive() argument
220 } else if (lru->del_from_htab(lru->del_arg, node)) { in __bpf_lru_list_shrink_inactive()
227 if (++i == lru->nr_scans) in __bpf_lru_list_shrink_inactive()
237 static void __bpf_lru_list_rotate(struct bpf_lru *lru, struct bpf_lru_list *l) in __bpf_lru_list_rotate() argument
240 __bpf_lru_list_rotate_active(lru, l); in __bpf_lru_list_rotate()
242 __bpf_lru_list_rotate_inactive(lru, l); in __bpf_lru_list_rotate()
[all …]
Dbpf_lru_list.h73 int bpf_lru_init(struct bpf_lru *lru, bool percpu, u32 hash_offset,
75 void bpf_lru_populate(struct bpf_lru *lru, void *buf, u32 node_offset,
77 void bpf_lru_destroy(struct bpf_lru *lru);
78 struct bpf_lru_node *bpf_lru_pop_free(struct bpf_lru *lru, u32 hash);
79 void bpf_lru_push_free(struct bpf_lru *lru, struct bpf_lru_node *node);
80 void bpf_lru_promote(struct bpf_lru *lru, struct bpf_lru_node *node);
/Linux-v5.15/samples/bpf/
Dtest_lru_dist.c105 static void pfect_lru_init(struct pfect_lru *lru, unsigned int lru_size, in pfect_lru_init() argument
108 lru->map_fd = bpf_create_map(BPF_MAP_TYPE_HASH, in pfect_lru_init()
112 assert(lru->map_fd != -1); in pfect_lru_init()
114 lru->free_nodes = malloc(lru_size * sizeof(struct pfect_lru_node)); in pfect_lru_init()
115 assert(lru->free_nodes); in pfect_lru_init()
117 INIT_LIST_HEAD(&lru->list); in pfect_lru_init()
118 lru->cur_size = 0; in pfect_lru_init()
119 lru->lru_size = lru_size; in pfect_lru_init()
120 lru->nr_unique = lru->nr_misses = lru->total = 0; in pfect_lru_init()
123 static void pfect_lru_destroy(struct pfect_lru *lru) in pfect_lru_destroy() argument
[all …]
/Linux-v5.15/net/ceph/
Dpagelist.c32 struct page *page = list_entry(pl->head.prev, struct page, lru); in ceph_pagelist_unmap_tail()
45 lru); in ceph_pagelist_release()
46 list_del(&page->lru); in ceph_pagelist_release()
61 page = list_first_entry(&pl->free_list, struct page, lru); in ceph_pagelist_addpage()
62 list_del(&page->lru); in ceph_pagelist_addpage()
69 list_add_tail(&page->lru, &pl->head); in ceph_pagelist_addpage()
113 list_add_tail(&page->lru, &pl->free_list); in ceph_pagelist_reserve()
125 struct page, lru); in ceph_pagelist_free_reserve()
126 list_del(&page->lru); in ceph_pagelist_free_reserve()
159 page = list_entry(pl->head.prev, struct page, lru); in ceph_pagelist_truncate()
[all …]
/Linux-v5.15/fs/nfs/
Dnfs42xattr.c71 struct list_head lru; member
82 struct list_head lru; member
130 struct list_lru *lru; in nfs4_xattr_entry_lru_add() local
132 lru = (entry->flags & NFS4_XATTR_ENTRY_EXTVAL) ? in nfs4_xattr_entry_lru_add()
135 return list_lru_add(lru, &entry->lru); in nfs4_xattr_entry_lru_add()
141 struct list_lru *lru; in nfs4_xattr_entry_lru_del() local
143 lru = (entry->flags & NFS4_XATTR_ENTRY_EXTVAL) ? in nfs4_xattr_entry_lru_del()
146 return list_lru_del(lru, &entry->lru); in nfs4_xattr_entry_lru_del()
239 INIT_LIST_HEAD(&entry->lru); in nfs4_xattr_alloc_entry()
261 if (WARN_ON(!list_empty(&entry->lru))) in nfs4_xattr_free_entry_cb()
[all …]
/Linux-v5.15/drivers/gpu/drm/nouveau/nvkm/subdev/instmem/
Dnv50.c37 struct list_head lru; member
52 struct list_head lru; member
142 eobj = list_first_entry_or_null(&imem->lru, typeof(*eobj), lru); in nv50_instobj_kmap()
148 list_del_init(&eobj->lru); in nv50_instobj_kmap()
204 if (likely(iobj->lru.next) && iobj->map) { in nv50_instobj_release()
205 BUG_ON(!list_empty(&iobj->lru)); in nv50_instobj_release()
206 list_add_tail(&iobj->lru, &imem->lru); in nv50_instobj_release()
245 if (likely(iobj->lru.next)) in nv50_instobj_acquire()
246 list_del_init(&iobj->lru); in nv50_instobj_acquire()
269 if (likely(iobj->lru.next)) { in nv50_instobj_boot()
[all …]
/Linux-v5.15/arch/mips/mm/
Dcerr-sb1.c326 uint8_t lru; in extract_ic() local
348 lru = (taghi >> 14) & 0xff; in extract_ic()
352 (lru & 0x3), in extract_ic()
353 ((lru >> 2) & 0x3), in extract_ic()
354 ((lru >> 4) & 0x3), in extract_ic()
355 ((lru >> 6) & 0x3)); in extract_ic()
481 uint8_t ecc, lru; in extract_dc() local
503 lru = (taghi >> 14) & 0xff; in extract_dc()
507 (lru & 0x3), in extract_dc()
508 ((lru >> 2) & 0x3), in extract_dc()
[all …]
/Linux-v5.15/fs/proc/
Dmeminfo.c40 int lru; in meminfo_proc_show() local
51 for (lru = LRU_BASE; lru < NR_LRU_LISTS; lru++) in meminfo_proc_show()
52 pages[lru] = global_node_page_state(NR_LRU_BASE + lru); in meminfo_proc_show()
/Linux-v5.15/drivers/xen/
Dballoon.c163 list_add_tail(&page->lru, &ballooned_pages); in balloon_append()
166 list_add(&page->lru, &ballooned_pages); in balloon_append()
180 page = list_entry(ballooned_pages.next, struct page, lru); in balloon_retrieve()
183 list_del(&page->lru); in balloon_retrieve()
196 struct list_head *next = page->lru.next; in balloon_next_page()
199 return list_entry(next, struct page, lru); in balloon_next_page()
406 page = list_first_entry_or_null(&ballooned_pages, struct page, lru); in increase_reservation()
456 list_add(&page->lru, &pages); in decrease_reservation()
473 list_for_each_entry_safe(page, tmp, &pages, lru) { in decrease_reservation()
478 list_del(&page->lru); in decrease_reservation()
/Linux-v5.15/include/trace/events/
Dpagemap.h37 __field(enum lru_list, lru )
44 __entry->lru = page_lru(page);
52 __entry->lru,
/Linux-v5.15/drivers/md/
Ddm-writecache.c84 struct list_head lru; member
114 struct list_head lru; member
670 list_add(&ins->lru, &wc->lru); in writecache_insert_entry()
676 list_del(&e->lru); in writecache_unlink()
696 list_add_tail(&e->lru, &wc->freelist); in writecache_add_to_freelist()
736 e = container_of(wc->freelist.next, struct wc_entry, lru); in writecache_pop_from_freelist()
739 list_del(&e->lru); in writecache_pop_from_freelist()
775 wc->lru.next = LIST_POISON1; in writecache_poison_lists()
776 wc->lru.prev = LIST_POISON2; in writecache_poison_lists()
801 if (list_empty(&wc->lru)) in writecache_flush()
[all …]
/Linux-v5.15/kernel/power/
Dwakelock.c32 struct list_head lru; member
95 list_add(&wl->lru, &wakelocks_lru_list); in wakelocks_lru_add()
100 list_move(&wl->lru, &wakelocks_lru_list); in wakelocks_lru_most_recent()
111 list_for_each_entry_safe_reverse(wl, aux, &wakelocks_lru_list, lru) { in __wakelocks_gc()
126 list_del(&wl->lru); in __wakelocks_gc()
/Linux-v5.15/tools/testing/selftests/bpf/progs/
Dtimer.c47 } lru SEC(".maps");
79 lru_timer = bpf_map_lookup_elem(&lru, &lru_key); in timer_cb1()
135 bpf_map_update_elem(&lru, &lru_key, &init, 0); in BPF_PROG()
136 lru_timer = bpf_map_lookup_elem(&lru, &lru_key); in BPF_PROG()
139 bpf_timer_init(lru_timer, &lru, CLOCK_MONOTONIC); in BPF_PROG()

123456