| /linux/Documentation/arch/powerpc/ |
| H A D | vmemmap_dedup.rst | 10 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 D | memory_model.h | 46 #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 D | vm-layout.rst | 57 ffffffc700000000 | -228 GB | ffffffc7ffffffff | 4 GB | vmemmap 93 ffff8d8000000000 | -114.5 TB | ffff8f7fffffffff | 2 TB | vmemmap
|
| /linux/Documentation/arch/riscv/ |
| H A D | vm-layout.rst | 52 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 D | mm.py | 92 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 | .gitignore | 6 hugepage-vmemmap
|
| H A D | Makefile | 69 TEST_GEN_FILES += hugepage-vmemmap
|
| H A D | run_vmtests.sh | 297 CATEGORY="hugetlb" run_test ./hugepage-vmemmap
|
| /linux/arch/s390/mm/ |
| H A D | dump_pagetables.c | 339 rc |= add_marker((unsigned long)vmemmap, (unsigned long)vmemmap + vmemmap_size, "vmemmap Area"); in pt_dump_init()
|
| /linux/arch/s390/kernel/ |
| H A D | os_info.c | 83 os_info_entry_add_val(OS_INFO_VMEMMAP, (unsigned long)vmemmap); in os_info_init()
|
| /linux/arch/s390/boot/ |
| H A D | startup.c | 36 struct page *__bootdata_preserved(vmemmap); 437 vmemmap = (struct page *)vmemmap_start; in setup_kernel_memory_layout()
|
| /linux/arch/x86/include/asm/ |
| H A D | pgtable_64.h | 254 #define vmemmap ((struct page *)VMEMMAP_START) macro
|
| /linux/arch/loongarch/include/asm/ |
| H A D | pgtable.h | 120 #define vmemmap ((struct page *)(ALIGN(VMALLOC_END, VMEMMAP_ALIGN))) macro 121 #define VMEMMAP_END ((unsigned long)vmemmap + VMEMMAP_SIZE - 1)
|
| /linux/arch/powerpc/kernel/ |
| H A D | setup-common.c | 877 pr_info("vmemmap start = 0x%lx\n", (unsigned long)vmemmap); in print_system_info()
|
| /linux/Documentation/admin-guide/sysctl/ |
| H A D | vm.rst | 670 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/riscv/include/asm/ |
| H A D | pgtable.h | 94 #define vmemmap ((struct page *)VMEMMAP_START - vmemmap_start_pfn) macro
|
| /linux/arch/powerpc/include/asm/book3s/64/ |
| H A D | pgtable.h | 264 extern struct page *vmemmap;
|
| /linux/arch/s390/include/asm/ |
| H A D | pgtable.h | 93 extern struct page *vmemmap;
|
| /linux/arch/powerpc/mm/book3s64/ |
| H A D | hash_utils.c | 1508 vmemmap = (struct page *)H_VMEMMAP_START; in hash__early_init_mmu()
|
| /linux/arch/arm64/include/asm/ |
| H A D | pgtable.h | 31 #define vmemmap ((struct page *)VMEMMAP_START - (memstart_addr >> PAGE_SHIFT)) macro
|
| /linux/Documentation/admin-guide/ |
| H A D | kernel-parameters.txt | 2128 Note that the vmemmap pages may be allocated from the added 2130 enabled, those vmemmap pages cannot be optimized even if this 2131 feature is enabled. Other vmemmap pages not allocated from 3982 those vmemmap pages cannot be optimized even
|
| /linux/arch/x86/ |
| H A D | Kconfig | 2165 (physical memory mapping, vmalloc & vmemmap). This security feature
|