Home
last modified time | relevance | path

Searched refs:mem_section (Results 1 – 14 of 14) sorted by relevance

/Linux-v6.1/mm/
Dsparse.c27 struct mem_section **mem_section; variable
29 struct mem_section mem_section[NR_SECTION_ROOTS][SECTIONS_PER_ROOT] variable
32 EXPORT_SYMBOL(mem_section);
63 static noinline struct mem_section __ref *sparse_index_alloc(int nid) in sparse_index_alloc()
65 struct mem_section *section = NULL; in sparse_index_alloc()
67 sizeof(struct mem_section); in sparse_index_alloc()
85 struct mem_section *section; in sparse_index_init()
94 if (mem_section[root]) in sparse_index_init()
101 mem_section[root] = section; in sparse_index_init()
123 static inline int sparse_early_nid(struct mem_section *section) in sparse_early_nid()
[all …]
Dpage_ext.c274 struct mem_section *section = __pfn_to_section(pfn); in lookup_page_ext()
307 struct mem_section *section; in init_section_page_ext()
359 struct mem_section *ms; in __free_page_ext()
381 struct mem_section *ms; in __invalidate_page_ext()
Dbootmem_info.c46 struct mem_section *ms; in register_page_bootmem_info_section()
81 struct mem_section *ms; in register_page_bootmem_info_section()
Dmemory_hotplug.c263 struct mem_section *ms; in pfn_to_online_page()
499 struct mem_section *ms = __pfn_to_section(pfn); in __remove_section()
668 struct mem_section *ms = __pfn_to_section(pfn); in section_taint_zone_device()
DKconfig408 # statically allocating the mem_section[] array can potentially
418 # Architecture platforms which require a two level mem_section in SPARSEMEM
/Linux-v6.1/include/linux/
Dmmzone.h1636 struct mem_section { struct
1667 #define SECTIONS_PER_ROOT (PAGE_SIZE / sizeof (struct mem_section))
1677 extern struct mem_section **mem_section;
1679 extern struct mem_section mem_section[NR_SECTION_ROOTS][SECTIONS_PER_ROOT];
1682 static inline unsigned long *section_to_usemap(struct mem_section *ms) in section_to_usemap()
1687 static inline struct mem_section *__nr_to_section(unsigned long nr) in __nr_to_section()
1695 if (!mem_section || !mem_section[root]) in __nr_to_section()
1698 return &mem_section[root][nr & SECTION_ROOT_MASK]; in __nr_to_section()
1740 static inline struct page *__section_mem_map_addr(struct mem_section *section) in __section_mem_map_addr()
1747 static inline int present_section(struct mem_section *section) in present_section()
[all …]
Dmemory_hotplug.h13 struct mem_section;
350 extern void sparse_remove_section(struct mem_section *ms,
Dmemory.h110 struct mem_section;
/Linux-v6.1/Documentation/translations/zh_CN/mm/
Dmemory-model.rst63 SPARSEMEM模型将物理内存显示为一个部分的集合。一个区段用mem_section结构
77 `mem_section` 对象被安排在一个叫做 `mem_sections` 的二维数组中。这个数组的
81 `NR_MEM_SECTIONS` 行。每一行持有一个 `mem_section` 对象。
83 每一行包含价值 `PAGE_SIZE` 的 `mem_section` 对象,行数的计算是为了适应所有的
/Linux-v6.1/kernel/
Dcrash_core.c436 VMCOREINFO_SYMBOL_ARRAY(mem_section); in crash_save_vmcoreinfo_init()
437 VMCOREINFO_LENGTH(mem_section, NR_SECTION_ROOTS); in crash_save_vmcoreinfo_init()
438 VMCOREINFO_STRUCT_SIZE(mem_section); in crash_save_vmcoreinfo_init()
439 VMCOREINFO_OFFSET(mem_section, section_mem_map); in crash_save_vmcoreinfo_init()
/Linux-v6.1/include/asm-generic/
Dmemory_model.h41 struct mem_section *__sec = __pfn_to_section(__pfn); \
/Linux-v6.1/Documentation/mm/
Dmemory-model.rst72 sections. A section is represented with struct mem_section
89 The `mem_section` objects are arranged in a two-dimensional array
96 single `mem_section` object.
99 `mem_section` objects and the number of rows is calculated to fit
/Linux-v6.1/Documentation/admin-guide/kdump/
Dvmcoreinfo.rst92 mem_section|(mem_section, NR_SECTION_ROOTS)|(mem_section, section_mem_map)
95 The address of the mem_section array, its length, structure size, and
/Linux-v6.1/arch/arm64/mm/
Dmmu.c1592 struct mem_section *ms; in prevent_bootmem_remove_notifier()
1653 struct mem_section *ms; in validate_bootmem_online()