/kernel/linux/linux-6.6/tools/testing/memblock/tests/ |
H A D | basic_api.c | 4 #include <linux/memblock.h> 17 ASSERT_NE(memblock.memory.regions, NULL); in memblock_initialization_check() 18 ASSERT_EQ(memblock.memory.cnt, 1); in memblock_initialization_check() 19 ASSERT_EQ(memblock.memory.max, EXPECTED_MEMBLOCK_REGIONS); in memblock_initialization_check() 20 ASSERT_EQ(strcmp(memblock.memory.name, "memory"), 0); in memblock_initialization_check() 22 ASSERT_NE(memblock.reserved.regions, NULL); in memblock_initialization_check() 23 ASSERT_EQ(memblock.reserved.cnt, 1); in memblock_initialization_check() 24 ASSERT_EQ(memblock.memory.max, EXPECTED_MEMBLOCK_REGIONS); in memblock_initialization_check() 25 ASSERT_EQ(strcmp(memblock.reserved.name, "reserved"), 0); in memblock_initialization_check() 27 ASSERT_EQ(memblock in memblock_initialization_check() [all...] |
H A D | alloc_nid_api.c | 66 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_nid_top_down_simple_check() 91 ASSERT_EQ(memblock.reserved.cnt, 1); in alloc_nid_top_down_simple_check() 92 ASSERT_EQ(memblock.reserved.total_size, size); in alloc_nid_top_down_simple_check() 118 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_nid_top_down_end_misaligned_check() 144 ASSERT_EQ(memblock.reserved.cnt, 1); in alloc_nid_top_down_end_misaligned_check() 145 ASSERT_EQ(memblock.reserved.total_size, size); in alloc_nid_top_down_end_misaligned_check() 169 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_nid_exact_address_generic_check() 194 ASSERT_EQ(memblock.reserved.cnt, 1); in alloc_nid_exact_address_generic_check() 195 ASSERT_EQ(memblock.reserved.total_size, size); in alloc_nid_exact_address_generic_check() 221 struct memblock_region *rgn = &memblock in alloc_nid_top_down_narrow_range_check() [all...] |
H A D | alloc_helpers_api.c | 20 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_from_simple_generic_check() 38 ASSERT_EQ(memblock.reserved.cnt, 1); in alloc_from_simple_generic_check() 39 ASSERT_EQ(memblock.reserved.total_size, size); in alloc_from_simple_generic_check() 63 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_from_misaligned_generic_check() 82 ASSERT_EQ(memblock.reserved.cnt, 1); in alloc_from_misaligned_generic_check() 83 ASSERT_EQ(memblock.reserved.total_size, size); in alloc_from_misaligned_generic_check() 110 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_from_top_down_high_addr_check() 127 ASSERT_EQ(memblock.reserved.cnt, 1); in alloc_from_top_down_high_addr_check() 128 ASSERT_EQ(memblock.reserved.total_size, size); in alloc_from_top_down_high_addr_check() 153 struct memblock_region *rgn = &memblock in alloc_from_top_down_no_space_above_check() [all...] |
H A D | alloc_exact_nid_api.c | 30 struct memblock_region *new_rgn = &memblock.reserved.regions[0]; in alloc_exact_nid_top_down_numa_simple_check() 31 struct memblock_region *req_node = &memblock.memory.regions[nid_req]; in alloc_exact_nid_top_down_numa_simple_check() 56 ASSERT_EQ(memblock.reserved.cnt, 1); in alloc_exact_nid_top_down_numa_simple_check() 57 ASSERT_EQ(memblock.reserved.total_size, size); in alloc_exact_nid_top_down_numa_simple_check() 82 struct memblock_region *new_rgn = &memblock.reserved.regions[1]; in alloc_exact_nid_top_down_numa_part_reserved_check() 83 struct memblock_region *req_node = &memblock.memory.regions[nid_req]; in alloc_exact_nid_top_down_numa_part_reserved_check() 112 ASSERT_EQ(memblock.reserved.cnt, 2); in alloc_exact_nid_top_down_numa_part_reserved_check() 113 ASSERT_EQ(memblock.reserved.total_size, size + r1.size); in alloc_exact_nid_top_down_numa_part_reserved_check() 143 struct memblock_region *new_rgn = &memblock.reserved.regions[0]; in alloc_exact_nid_top_down_numa_split_range_low_check() 144 struct memblock_region *req_node = &memblock in alloc_exact_nid_top_down_numa_split_range_low_check() [all...] |
H A D | common.c | 30 "memblock function being tested, the name of the test,\n\t\t\t" 41 memset(memblock.memory.regions, 0, in reset_memblock_regions() 42 memblock.memory.cnt * sizeof(struct memblock_region)); in reset_memblock_regions() 43 memblock.memory.cnt = 1; in reset_memblock_regions() 44 memblock.memory.max = INIT_MEMBLOCK_REGIONS; in reset_memblock_regions() 45 memblock.memory.total_size = 0; in reset_memblock_regions() 47 memset(memblock.reserved.regions, 0, in reset_memblock_regions() 48 memblock.reserved.cnt * sizeof(struct memblock_region)); in reset_memblock_regions() 49 memblock.reserved.cnt = 1; in reset_memblock_regions() 50 memblock in reset_memblock_regions() [all...] |
H A D | alloc_api.c | 26 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_top_down_simple_check() 44 ASSERT_EQ(memblock.reserved.cnt, 1); in alloc_top_down_simple_check() 45 ASSERT_EQ(memblock.reserved.total_size, size); in alloc_top_down_simple_check() 73 struct memblock_region *rgn1 = &memblock.reserved.regions[1]; in alloc_top_down_disjoint_check() 74 struct memblock_region *rgn2 = &memblock.reserved.regions[0]; in alloc_top_down_disjoint_check() 105 ASSERT_EQ(memblock.reserved.cnt, 2); in alloc_top_down_disjoint_check() 106 ASSERT_EQ(memblock.reserved.total_size, total_size); in alloc_top_down_disjoint_check() 125 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_top_down_before_check() 147 ASSERT_EQ(memblock.reserved.cnt, 1); in alloc_top_down_before_check() 148 ASSERT_EQ(memblock in alloc_top_down_before_check() [all...] |
/kernel/linux/linux-6.6/tools/testing/memblock/ |
H A D | Makefile | 11 DEP_OFILES = memblock.o lib/slab.o mmzone.o slab.o 13 EXTR_SRC = ../../../mm/memblock.c 27 include: ../../../include/linux/memblock.h ../../include/linux/*.h \ 31 test -L linux/memblock.h || ln -s ../../../../include/linux/memblock.h linux/memblock.h 35 memblock.c: $(EXTR_SRC) 36 test -L memblock.c || ln -s $(EXTR_SRC) memblock.c 39 $(RM) $(TARGETS) $(OFILES) linux/memblock [all...] |
/kernel/linux/linux-5.10/mm/ |
H A D | memblock.c | 18 #include <linux/memblock.h> 33 * DOC: memblock overview 56 * wrapped with struct memblock. This structure is statically 66 * The early architecture setup should tell memblock what the physical 74 * Once memblock is setup the memory can be allocated using one of the 91 * memblock data structures (except "physmem") will be discarded after the 111 struct memblock memblock __initdata_memblock = { 136 * keep a pointer to &memblock.memory in the text section to use it in 138 * For architectures that do not keep memblock dat [all...] |
/kernel/linux/linux-6.6/mm/ |
H A D | memblock.c | 18 #include <linux/memblock.h> 37 * DOC: memblock overview 60 * wrapped with struct memblock. This structure is statically 70 * The early architecture setup should tell memblock what the physical 78 * Once memblock is setup the memory can be allocated using one of the 95 * memblock data structures (except "physmem") will be discarded after the 115 struct memblock memblock __initdata_memblock = { 140 * keep a pointer to &memblock.memory in the text section to use it in 142 * For architectures that do not keep memblock dat [all...] |
/kernel/linux/linux-5.10/include/linux/ |
H A D | memblock.h | 75 * struct memblock - memblock allocator metadata 81 struct memblock { struct 88 extern struct memblock memblock; 162 * __for_each_mem_range - iterate through memblock areas from type_a and not 182 * __for_each_mem_range_rev - reverse iterate through memblock areas from 209 __for_each_mem_range(i, &memblock.memory, NULL, NUMA_NO_NODE, \ 213 * for_each_mem_range_rev - reverse iterate through memblock areas from 220 __for_each_mem_range_rev(i, &memblock [all...] |
/kernel/linux/linux-6.6/include/linux/ |
H A D | memblock.h | 85 * struct memblock - memblock allocator metadata 91 struct memblock { struct 98 extern struct memblock memblock; 173 * __for_each_mem_range - iterate through memblock areas from type_a and not 193 * __for_each_mem_range_rev - reverse iterate through memblock areas from 220 __for_each_mem_range(i, &memblock.memory, NULL, NUMA_NO_NODE, \ 225 * for_each_mem_range_rev - reverse iterate through memblock areas from 232 __for_each_mem_range_rev(i, &memblock [all...] |
/kernel/linux/linux-5.10/arch/microblaze/mm/ |
H A D | init.c | 11 #include <linux/memblock.h> 210 memblock.memory.regions[0].size = memory_size; in mm_cmdline_setup() 248 if (!memblock.reserved.cnt) { in mmu_init() 253 if ((u32) memblock.memory.regions[0].size < 0x400000) { in mmu_init() 258 if ((u32) memblock.memory.regions[0].size < kernel_tlb) { in mmu_init() 264 memory_start = (u32) memblock.memory.regions[0].base; in mmu_init() 265 lowmem_size = memory_size = (u32) memblock.memory.regions[0].size; in mmu_init()
|
/kernel/linux/linux-6.6/arch/microblaze/mm/ |
H A D | init.c | 11 #include <linux/memblock.h> 158 memblock.memory.regions[0].size = memory_size; in mm_cmdline_setup() 196 if (!memblock.reserved.cnt) { in mmu_init() 201 if ((u32) memblock.memory.regions[0].size < 0x400000) { in mmu_init() 206 if ((u32) memblock.memory.regions[0].size < kernel_tlb) { in mmu_init() 212 memory_start = (u32) memblock.memory.regions[0].base; in mmu_init() 213 lowmem_size = memory_size = (u32) memblock.memory.regions[0].size; in mmu_init()
|
/kernel/linux/linux-5.10/arch/loongarch/loongson64/ |
H A D | mem.c | 7 #include <linux/memblock.h> 62 memblock_set_node(0, PHYS_ADDR_MAX, &memblock.memory, 0); in memblock_init() 63 memblock_set_node(0, PHYS_ADDR_MAX, &memblock.reserved, 0); in memblock_init()
|
/kernel/linux/linux-6.6/arch/loongarch/kernel/ |
H A D | mem.c | 7 #include <linux/memblock.h> 61 memblock_set_node(0, PHYS_ADDR_MAX, &memblock.memory, 0); in memblock_init() 62 memblock_set_node(0, PHYS_ADDR_MAX, &memblock.reserved, 0); in memblock_init()
|
/kernel/linux/linux-5.10/arch/powerpc/mm/ |
H A D | init_32.c | 27 #include <linux/memblock.h> 124 if (memblock.memory.cnt > 1) { in MMU_init() 126 memblock_enforce_memory_limit(memblock.memory.regions[0].size); in MMU_init()
|
/kernel/linux/linux-5.10/arch/powerpc/platforms/embedded6xx/ |
H A D | wii.c | 17 #include <linux/memblock.h> 59 struct memblock_region *p = memblock.memory.regions; in wii_memory_fixups() 61 BUG_ON(memblock.memory.cnt != 2); in wii_memory_fixups()
|
/kernel/linux/linux-5.10/arch/arm/mm/ |
H A D | pmsa-v8.c | 7 #include <linux/memblock.h> 114 * memblock auto merges contiguous blocks, remove in pmsav8_adjust_lowmem_bounds() 248 add_range(mem, ARRAY_SIZE(mem), 0, memblock.memory.regions[0].base, in pmsav8_setup() 249 memblock.memory.regions[0].base + memblock.memory.regions[0].size); in pmsav8_setup()
|
/kernel/linux/linux-6.6/arch/arm/mm/ |
H A D | pmsa-v8.c | 7 #include <linux/memblock.h> 114 * memblock auto merges contiguous blocks, remove in pmsav8_adjust_lowmem_bounds() 248 add_range(mem, ARRAY_SIZE(mem), 0, memblock.memory.regions[0].base, in pmsav8_setup() 249 memblock.memory.regions[0].base + memblock.memory.regions[0].size); in pmsav8_setup()
|
/kernel/linux/linux-5.10/arch/x86/mm/ |
H A D | numa.c | 8 #include <linux/memblock.h> 249 if (!memblock_overlaps_region(&memblock.memory, in numa_cleanup_meminfo() 483 * Mark all currently memblock-reserved physical memory (which covers the 493 * We have to do some preprocessing of memblock regions, to in numa_clear_kernel_node_hotplug() 496 * At this time, all memory regions reserved by memblock are in numa_clear_kernel_node_hotplug() 502 * and use those ranges to set the nid in memblock.reserved. in numa_clear_kernel_node_hotplug() 503 * This will split up the memblock regions along node in numa_clear_kernel_node_hotplug() 510 ret = memblock_set_node(mb->start, mb->end - mb->start, &memblock.reserved, mb->nid); in numa_clear_kernel_node_hotplug() 515 * Now go over all reserved memblock regions, to construct a in numa_clear_kernel_node_hotplug() 519 * numa_meminfo might not include all memblock in numa_clear_kernel_node_hotplug() [all...] |
H A D | numa_64.c | 6 #include <linux/memblock.h>
|
/kernel/linux/linux-6.6/arch/x86/mm/ |
H A D | numa.c | 8 #include <linux/memblock.h> 250 if (!memblock_overlaps_region(&memblock.memory, in numa_cleanup_meminfo() 483 * Mark all currently memblock-reserved physical memory (which covers the 493 * We have to do some preprocessing of memblock regions, to in numa_clear_kernel_node_hotplug() 496 * At this time, all memory regions reserved by memblock are in numa_clear_kernel_node_hotplug() 502 * and use those ranges to set the nid in memblock.reserved. in numa_clear_kernel_node_hotplug() 503 * This will split up the memblock regions along node in numa_clear_kernel_node_hotplug() 510 ret = memblock_set_node(mb->start, mb->end - mb->start, &memblock.reserved, mb->nid); in numa_clear_kernel_node_hotplug() 515 * Now go over all reserved memblock regions, to construct a in numa_clear_kernel_node_hotplug() 519 * numa_meminfo might not include all memblock in numa_clear_kernel_node_hotplug() [all...] |
H A D | numa_64.c | 6 #include <linux/memblock.h>
|
/kernel/linux/linux-5.10/arch/xtensa/include/asm/ |
H A D | sysmem.h | 14 #include <linux/memblock.h>
|
/kernel/linux/linux-6.6/arch/xtensa/include/asm/ |
H A D | sysmem.h | 14 #include <linux/memblock.h>
|