Home
last modified time | relevance | path

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

/linux/Documentation/arch/powerpc/
H A Dvmemmap_dedup.rst10 On powerpc, vmemmap deduplication is only used with radix MMU translation. Also
11 with a 64K page size, only the devdax namespace with 1G alignment uses vmemmap
14 With 2M PMD level mapping, we require 32 struct pages and a single 64K vmemmap
16 vmemmap deduplication possible.
19 vmemmap page can contain 1024 struct pages (64K/sizeof(struct page)). Hence we
20 require 16 64K pages in vmemmap to map the struct page for 1G PUD level mapping.
47 4K vmemmap page contains 64 struct pages(4K/sizeof(struct page)). Hence we
48 require 8 4K pages in vmemmap to map the struct page for 2M pmd level mapping.
75 vmemmap page can contain 64 struct pages (4K/sizeof(struct page)). Hence we
76 require 4096 4K pages in vmemmap to map the struct pages for 1G PUD level
/linux/include/asm-generic/
H A Dmemory_model.h46 #define __pfn_to_page(pfn) (vmemmap + (pfn))
47 #define __page_to_pfn(page) (unsigned long)((page) - vmemmap)
/linux/Documentation/translations/zh_CN/arch/riscv/
H A Dvm-layout.rst57 ffffffc700000000 | -228 GB | ffffffc7ffffffff | 4 GB | vmemmap
93 ffff8d8000000000 | -114.5 TB | ffff8f7fffffffff | 2 TB | vmemmap
/linux/Documentation/admin-guide/kdump/
H A Dvmcoreinfo.rst467 VMEMMAP_START ~ VMEMMAP_END-1 : vmemmap region, used for struct page array.
514 The vmemmap_list maintains the entire vmemmap physical mapping. Used
515 to get vmemmap list count and populated vmemmap regions info. If the
516 vmemmap address translation information is stored in the crash kernel,
517 it is used to translate vmemmap kernel virtual addresses.
534 The vmemmap virtual address space management does not have a traditional
540 when computing the count of vmemmap regions.
589 * VMEMMAP_START ~ VMEMMAP_END : vmemmap space, used for struct page array.
/linux/Documentation/arch/riscv/
H A Dvm-layout.rst52 ffffffc500000000 | -236 GB | ffffffc5ffffffff | 4 GB | vmemmap
89 ffff8d8000000000 | -114.5 TB | ffff8f7fffffffff | 2 TB | vmemmap
125 ff1c000000000000 | -57 PB | ff1fffffffffffff | 1 PB | vmemmap
/linux/scripts/gdb/linux/
H A Dmm.py92 self.vmemmap = gdb.Value(self.VMEMMAP_START).cast(utils.get_page_type().pointer())
186 return int(page.cast(utils.get_page_type().pointer()) - self.vmemmap)
189 return self.vmemmap + pfn
278 …self.vmemmap = gdb.Value(self.VMEMMAP_START).cast(utils.get_page_type().pointer()) - (self.memstar…
432 …return int(page.cast(utils.get_page_type().pointer()) - self.vmemmap.cast(utils.get_page_type().po…
438 return (self.vmemmap + pfn).cast(utils.get_page_type().pointer())
/linux/tools/testing/selftests/mm/
H A D.gitignore6 hugepage-vmemmap
H A DMakefile69 TEST_GEN_FILES += hugepage-vmemmap
H A Drun_vmtests.sh297 CATEGORY="hugetlb" run_test ./hugepage-vmemmap
/linux/arch/s390/mm/
H A Ddump_pagetables.c339 rc |= add_marker((unsigned long)vmemmap, (unsigned long)vmemmap + vmemmap_size, "vmemmap Area"); in pt_dump_init()
/linux/arch/powerpc/include/asm/nohash/64/
H A Dpgtable.h68 #define vmemmap ((struct page *)VMEMMAP_BASE) macro
/linux/arch/s390/kernel/
H A Dos_info.c83 os_info_entry_add_val(OS_INFO_VMEMMAP, (unsigned long)vmemmap); in os_info_init()
/linux/kernel/
H A Dvmcore_info.c179 VMCOREINFO_SYMBOL_ARRAY(vmemmap); in crash_save_vmcoreinfo_init()
/linux/arch/x86/include/asm/
H A Dpgtable_64.h254 #define vmemmap ((struct page *)VMEMMAP_START) macro
/linux/mm/
H A DMakefile88 obj-$(CONFIG_SPARSEMEM_VMEMMAP) += sparse-vmemmap.o
H A DKconfig416 # to enable the feature of HugeTLB/dev_dax vmemmap optimization.
/linux/arch/powerpc/kernel/
H A Dsetup-common.c873 pr_info("vmemmap start = 0x%lx\n", (unsigned long)vmemmap); in print_system_info()
/linux/Documentation/admin-guide/sysctl/
H A Dvm.rst670 Once enabled, the vmemmap pages of subsequent allocation of HugeTLB pages from
674 to the buddy allocator, the vmemmap pages representing that range needs to be
675 remapped again and the vmemmap pages discarded earlier need to be rellocated
684 pool to the buddy allocator since the allocation of vmemmap pages could be
687 Once disabled, the vmemmap pages of subsequent allocation of HugeTLB pages from
/linux/arch/sparc/include/asm/
H A Dpgtable_64.h86 #define vmemmap ((struct page *)VMEMMAP_BASE) macro
/linux/arch/riscv/include/asm/
H A Dpgtable.h94 #define vmemmap ((struct page *)VMEMMAP_START - vmemmap_start_pfn) macro
/linux/arch/powerpc/mm/book3s64/
H A Dhash_utils.c1508 vmemmap = (struct page *)H_VMEMMAP_START; in hash__early_init_mmu()
/linux/arch/arm64/include/asm/
H A Dpgtable.h31 #define vmemmap ((struct page *)VMEMMAP_START - (memstart_addr >> PAGE_SHIFT)) macro
/linux/Documentation/dev-tools/
H A Dkasan.rst421 other areas - such as vmalloc and vmemmap space - a single read-only
/linux/Documentation/admin-guide/
H A Dkernel-parameters.txt2131 Note that the vmemmap pages may be allocated from the added
2133 enabled, those vmemmap pages cannot be optimized even if this
2134 feature is enabled. Other vmemmap pages not allocated from
4000 those vmemmap pages cannot be optimized even
/linux/
H A DMAINTAINERS16686 F: mm/sparse-vmemmap.c