Home
last modified time | relevance | path

Searched refs:page_ext (Results 1 - 22 of 22) sorted by relevance

/kernel/linux/linux-6.6/include/linux/
H A Dpage_idle.h7 #include <linux/page_ext.h>
18 struct page_ext *page_ext = page_ext_get(&folio->page); in folio_test_young() local
21 if (unlikely(!page_ext)) in folio_test_young()
24 page_young = test_bit(PAGE_EXT_YOUNG, &page_ext->flags); in folio_test_young()
25 page_ext_put(page_ext); in folio_test_young()
32 struct page_ext *page_ext = page_ext_get(&folio->page); in folio_set_young() local
34 if (unlikely(!page_ext)) in folio_set_young()
37 set_bit(PAGE_EXT_YOUNG, &page_ext in folio_set_young()
43 struct page_ext *page_ext = page_ext_get(&folio->page); folio_test_clear_young() local
57 struct page_ext *page_ext = page_ext_get(&folio->page); folio_test_idle() local
71 struct page_ext *page_ext = page_ext_get(&folio->page); folio_set_idle() local
82 struct page_ext *page_ext = page_ext_get(&folio->page); folio_clear_idle() local
[all...]
H A Dpage_ext.h13 * struct page_ext_operations - per page_ext client operations
14 * @offset: Offset to the client's data within page_ext. Offset is returned to
16 * @size: The size of the client data within page_ext.
17 * @need: Function that returns true if client requires page_ext.
19 * @need_shared_flags: True when client is using shared page_ext->flags
47 * A page_ext page is associated with every page descriptor. The
48 * page_ext helps us add more information about the page.
49 * All page_ext are allocated at boot or memory hotplug event,
50 * then the page_ext for pfn always exists.
52 struct page_ext { struct
84 page_ext_data(struct page_ext *page_ext, struct page_ext_operations *ops) page_ext_data() argument
126 page_ext_put(struct page_ext *page_ext) page_ext_put() argument
[all...]
H A Dmmzone.h1312 struct page_ext *node_page_ext;
1836 struct page_ext;
1855 * If SPARSEMEM, pgdat doesn't have page_ext pointer. We use
1856 * section. (see page_ext.h about this.)
1858 struct page_ext *page_ext; member
H A Dmm.h22 #include <linux/page_ext.h>
/kernel/linux/linux-5.10/include/linux/
H A Dpage_idle.h7 #include <linux/page_ext.h>
50 struct page_ext *page_ext = lookup_page_ext(page); in page_is_young() local
52 if (unlikely(!page_ext)) in page_is_young()
55 return test_bit(PAGE_EXT_YOUNG, &page_ext->flags); in page_is_young()
60 struct page_ext *page_ext = lookup_page_ext(page); in set_page_young() local
62 if (unlikely(!page_ext)) in set_page_young()
65 set_bit(PAGE_EXT_YOUNG, &page_ext->flags); in set_page_young()
70 struct page_ext *page_ex in test_and_clear_page_young() local
80 struct page_ext *page_ext = lookup_page_ext(page); page_is_idle() local
90 struct page_ext *page_ext = lookup_page_ext(page); set_page_idle() local
100 struct page_ext *page_ext = lookup_page_ext(page); clear_page_idle() local
[all...]
H A Dpage_ext.h30 * A page_ext page is associated with every page descriptor. The
31 * page_ext helps us add more information about the page.
32 * All page_ext are allocated at boot or memory hotplug event,
33 * then the page_ext for pfn always exists.
35 struct page_ext { struct
58 struct page_ext *lookup_page_ext(const struct page *page);
60 static inline struct page_ext *page_ext_next(struct page_ext *curr) in page_ext_next()
68 struct page_ext;
74 static inline struct page_ext *lookup_page_ex
[all...]
H A Dmmzone.h756 struct page_ext *node_page_ext;
1251 struct page_ext;
1270 * If SPARSEMEM, pgdat doesn't have page_ext pointer. We use
1271 * section. (see page_ext.h about this.)
1273 struct page_ext *page_ext; member
H A Dmm.h25 #include <linux/page_ext.h>
/kernel/linux/linux-5.10/mm/
H A Dpage_owner.c102 static inline struct page_owner *get_page_owner(struct page_ext *page_ext) in get_page_owner() argument
104 return (void *)page_ext + page_owner_ops.offset; in get_page_owner()
149 struct page_ext *page_ext; in __reset_page_owner() local
156 page_ext = lookup_page_ext(page); in __reset_page_owner()
157 if (unlikely(!page_ext)) in __reset_page_owner()
160 __clear_bit(PAGE_EXT_OWNER_ALLOCATED, &page_ext->flags); in __reset_page_owner()
161 page_owner = get_page_owner(page_ext); in __reset_page_owner()
164 page_ext in __reset_page_owner()
168 __set_page_owner_handle(struct page *page, struct page_ext *page_ext, depot_stack_handle_t handle, unsigned int order, gfp_t gfp_mask) __set_page_owner_handle() argument
193 struct page_ext *page_ext = lookup_page_ext(page); __set_page_owner() local
205 struct page_ext *page_ext = lookup_page_ext(page); __set_page_owner_migrate_reason() local
218 struct page_ext *page_ext = lookup_page_ext(page); __split_page_owner() local
268 struct page_ext *page_ext; pagetypeinfo_showmixedcount_print() local
415 struct page_ext *page_ext = lookup_page_ext(page); __dump_page_owner() local
473 struct page_ext *page_ext; read_page_owner() local
582 struct page_ext *page_ext; init_pages_in_zone() local
[all...]
H A Dpage_ext.c5 #include <linux/page_ext.h>
46 * When need callback returns true, page_ext checks if there is a request for
48 * extra space is allocated for each page_ext entry and offset is returned to
70 unsigned long page_ext_size = sizeof(struct page_ext);
109 static inline struct page_ext *get_entry(void *base, unsigned long index) in get_entry()
122 struct page_ext *lookup_page_ext(const struct page *page) in lookup_page_ext()
126 struct page_ext *base; in lookup_page_ext()
131 * page can reach here before the page_ext arrays are in lookup_page_ext()
144 struct page_ext *base; in alloc_node_page_ext()
186 pr_info("allocated %ld bytes of page_ext\ in page_ext_init_flatmem()
[all...]
H A Dpage_poison.c7 #include <linux/page_ext.h>
H A Dpage_idle.c13 #include <linux/page_ext.h>
H A DMakefile113 obj-$(CONFIG_PAGE_EXTENSION) += page_ext.o
H A Dvmstat.c29 #include <linux/page_ext.h>
/kernel/linux/linux-6.6/mm/
H A Dpage_owner.c105 static inline struct page_owner *get_page_owner(struct page_ext *page_ext) in get_page_owner() argument
107 return page_ext_data(page_ext, &page_owner_ops); in get_page_owner()
140 struct page_ext *page_ext; in __reset_page_owner() local
145 page_ext = page_ext_get(page); in __reset_page_owner()
146 if (unlikely(!page_ext)) in __reset_page_owner()
151 __clear_bit(PAGE_EXT_OWNER_ALLOCATED, &page_ext->flags); in __reset_page_owner()
152 page_owner = get_page_owner(page_ext); in __reset_page_owner()
155 page_ext in __reset_page_owner()
160 __set_page_owner_handle(struct page_ext *page_ext, depot_stack_handle_t handle, unsigned short order, gfp_t gfp_mask) __set_page_owner_handle() argument
189 struct page_ext *page_ext; __set_page_owner() local
203 struct page_ext *page_ext = page_ext_get(page); __set_page_owner_migrate_reason() local
217 struct page_ext *page_ext = page_ext_get(page); __split_page_owner() local
279 struct page_ext *page_ext; pagetypeinfo_showmixedcount_print() local
457 struct page_ext *page_ext = page_ext_get((void *)page); __dump_page_owner() local
513 struct page_ext *page_ext; read_page_owner() local
645 struct page_ext *page_ext; init_pages_in_zone() local
[all...]
H A Dpage_ext.c5 #include <linux/page_ext.h>
48 * When need callback returns true, page_ext checks if there is a request for
50 * extra space is allocated for each page_ext entry and offset is returned to
111 page_ext_size = sizeof(struct page_ext); in invoke_need_callbacks()
139 static inline struct page_ext *get_entry(void *base, unsigned long index) in get_entry()
155 static struct page_ext *lookup_page_ext(const struct page *page) in lookup_page_ext()
159 struct page_ext *base; in lookup_page_ext()
165 * page can reach here before the page_ext arrays are in lookup_page_ext()
178 struct page_ext *base; in alloc_node_page_ext()
220 pr_info("allocated %ld bytes of page_ext\ in page_ext_init_flatmem()
229 page_ext_invalid(struct page_ext *page_ext) page_ext_invalid() argument
238 struct page_ext *page_ext = READ_ONCE(section->page_ext); lookup_page_ext() local
506 struct page_ext *page_ext; page_ext_get() local
528 page_ext_put(struct page_ext *page_ext) page_ext_put() argument
[all...]
H A Dpage_table_check.c51 static struct page_table_check *get_page_table_check(struct page_ext *page_ext) in get_page_table_check() argument
53 BUG_ON(!page_ext); in get_page_table_check()
54 return page_ext_data(page_ext, &page_table_check_ops); in get_page_table_check()
63 struct page_ext *page_ext; in page_table_check_clear() local
72 page_ext = page_ext_get(page); in page_table_check_clear()
78 struct page_table_check *ptc = get_page_table_check(page_ext); in page_table_check_clear()
87 page_ext = page_ext_next(page_ext); in page_table_check_clear()
100 struct page_ext *page_ext; page_table_check_set() local
135 struct page_ext *page_ext; __page_table_check_zero() local
[all...]
H A Dpage_idle.c13 #include <linux/page_ext.h>
H A DMakefile119 obj-$(CONFIG_PAGE_EXTENSION) += page_ext.o
H A Dmm_init.c24 #include <linux/page_ext.h>
2781 * page_ext requires contiguous pages, in mm_core_init()
2803 /* If no deferred init page_ext now, as vmap is fully initialized */ in mm_core_init()
/kernel/linux/linux-6.6/scripts/gdb/linux/
H A Dpage_owner.py13 page_ext_t = utils.CachedType('struct page_ext')
69 def page_ext_invalid(self, page_ext):
70 if page_ext == gdb.Value(0):
72 if page_ext.cast(utils.get_ulong_type()) & PAGE_EXT_INVALID == PAGE_EXT_INVALID:
82 page_ext = section["page_ext"]
83 if self.page_ext_invalid(page_ext):
85 return self.get_entry(page_ext, pfn)
88 page_ext = self.lookup_page_ext(page)
89 if page_ext !
[all...]
/kernel/linux/linux-5.10/init/
H A Dmain.c62 #include <linux/page_ext.h>
826 * page_ext requires contiguous pages, in mm_init()

Completed in 32 milliseconds