Home
last modified time | relevance | path

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

12

/linux-5.19.10/tools/testing/memblock/tests/
Dbasic_api.c10 assert(memblock.memory.regions); in memblock_initialization_check()
11 assert(memblock.memory.cnt == 1); in memblock_initialization_check()
12 assert(memblock.memory.max == EXPECTED_MEMBLOCK_REGIONS); in memblock_initialization_check()
13 assert(strcmp(memblock.memory.name, "memory") == 0); in memblock_initialization_check()
15 assert(memblock.reserved.regions); in memblock_initialization_check()
16 assert(memblock.reserved.cnt == 1); in memblock_initialization_check()
17 assert(memblock.memory.max == EXPECTED_MEMBLOCK_REGIONS); in memblock_initialization_check()
18 assert(strcmp(memblock.reserved.name, "reserved") == 0); in memblock_initialization_check()
20 assert(!memblock.bottom_up); in memblock_initialization_check()
21 assert(memblock.current_limit == MEMBLOCK_ALLOC_ANYWHERE); in memblock_initialization_check()
[all …]
Dcommon.c12 memset(memblock.memory.regions, 0, in reset_memblock_regions()
13 memblock.memory.cnt * sizeof(struct memblock_region)); in reset_memblock_regions()
14 memblock.memory.cnt = 1; in reset_memblock_regions()
15 memblock.memory.max = INIT_MEMBLOCK_REGIONS; in reset_memblock_regions()
16 memblock.memory.total_size = 0; in reset_memblock_regions()
18 memset(memblock.reserved.regions, 0, in reset_memblock_regions()
19 memblock.reserved.cnt * sizeof(struct memblock_region)); in reset_memblock_regions()
20 memblock.reserved.cnt = 1; in reset_memblock_regions()
21 memblock.reserved.max = INIT_MEMBLOCK_RESERVED_REGIONS; in reset_memblock_regions()
22 memblock.reserved.total_size = 0; in reset_memblock_regions()
[all …]
Dalloc_helpers_api.c20 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_from_simple_generic_check()
40 assert(memblock.reserved.cnt == 1); in alloc_from_simple_generic_check()
41 assert(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()
84 assert(memblock.reserved.cnt == 1); in alloc_from_misaligned_generic_check()
85 assert(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(memblock.reserved.cnt == 1); in alloc_from_top_down_high_addr_check()
128 assert(memblock.reserved.total_size == size); in alloc_from_top_down_high_addr_check()
151 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_from_top_down_no_space_above_check()
[all …]
Dalloc_api.c10 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_top_down_simple_check()
26 assert(memblock.reserved.cnt == 1); in alloc_top_down_simple_check()
27 assert(memblock.reserved.total_size == size); in alloc_top_down_simple_check()
53 struct memblock_region *rgn1 = &memblock.reserved.regions[1]; in alloc_top_down_disjoint_check()
54 struct memblock_region *rgn2 = &memblock.reserved.regions[0]; in alloc_top_down_disjoint_check()
83 assert(memblock.reserved.cnt == 2); in alloc_top_down_disjoint_check()
84 assert(memblock.reserved.total_size == total_size); in alloc_top_down_disjoint_check()
101 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_top_down_before_check()
121 assert(memblock.reserved.cnt == 1); in alloc_top_down_before_check()
122 assert(memblock.reserved.total_size == total_size); in alloc_top_down_before_check()
[all …]
Dalloc_nid_api.c20 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_try_nid_top_down_simple_check()
46 assert(memblock.reserved.cnt == 1); in alloc_try_nid_top_down_simple_check()
47 assert(memblock.reserved.total_size == size); in alloc_try_nid_top_down_simple_check()
71 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_try_nid_top_down_end_misaligned_check()
98 assert(memblock.reserved.cnt == 1); in alloc_try_nid_top_down_end_misaligned_check()
99 assert(memblock.reserved.total_size == size); in alloc_try_nid_top_down_end_misaligned_check()
121 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_try_nid_exact_address_generic_check()
147 assert(memblock.reserved.cnt == 1); in alloc_try_nid_exact_address_generic_check()
148 assert(memblock.reserved.total_size == size); in alloc_try_nid_exact_address_generic_check()
172 struct memblock_region *rgn = &memblock.reserved.regions[0]; in alloc_try_nid_top_down_narrow_range_check()
[all …]
/linux-5.19.10/tools/testing/memblock/
DMakefile11 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
34 memblock.c: $(EXTR_SRC)
35 test -L memblock.c || ln -s $(EXTR_SRC) memblock.c
38 $(RM) $(TARGETS) $(OFILES) linux/memblock.h memblock.c asm/cmpxchg.h
DREADME14 difficult. This test suite, usually referred as memblock simulator, is
15 an attempt at testing the memblock mechanism. It runs one monolithic test that
17 allocation functionalities of memblock. The main data structure of the boot time
22 As this project uses the actual memblock code and has to run in user space,
24 introduced memblock simulator (commit 16802e55dea9 ("memblock tests: Add
25 skeleton of the memblock simulator")) and a few preparation commits just
50 memblock
61 | |-- common.(c|h) -- helper functions for resetting memblock;
72 memblock to track valid memory ranges. To achieve this, the test suite registers
73 with memblock memory stored by test_memory struct. It is a small wrapper that
[all …]
D.gitignore2 memblock.c
3 linux/memblock.h
/linux-5.19.10/mm/
Dmemblock.c111 struct memblock memblock __initdata_memblock = {
141 static __refdata struct memblock_type *memblock_memory = &memblock.memory;
291 end = memblock.current_limit; in memblock_find_in_range_node()
365 if (memblock.reserved.regions != memblock_reserved_init_regions) { in memblock_discard()
366 addr = __pa(memblock.reserved.regions); in memblock_discard()
368 memblock.reserved.max); in memblock_discard()
370 kfree(memblock.reserved.regions); in memblock_discard()
375 if (memblock.memory.regions != memblock_memory_init_regions) { in memblock_discard()
376 addr = __pa(memblock.memory.regions); in memblock_discard()
378 memblock.memory.max); in memblock_discard()
[all …]
/linux-5.19.10/include/linux/
Dmemblock.h91 struct memblock { struct
98 extern struct memblock memblock; argument
219 __for_each_mem_range(i, &memblock.memory, NULL, NUMA_NO_NODE, \
231 __for_each_mem_range_rev(i, &memblock.memory, NULL, NUMA_NO_NODE, \
245 __for_each_mem_range(i, &memblock.reserved, NULL, NUMA_NO_NODE, \
344 __for_each_mem_range(i, &memblock.memory, &memblock.reserved, \
361 __for_each_mem_range_rev(i, &memblock.memory, &memblock.reserved, \
465 memblock.bottom_up = enable; in memblock_set_bottom_up()
475 return memblock.bottom_up; in memblock_bottom_up()
561 for (region = memblock.memory.regions; \
[all …]
/linux-5.19.10/Documentation/translations/zh_CN/core-api/
Dboot-time-mm.rst22 一个叫做 ``memblock`` 的专用分配器执行启动时的内存管理。特定架构的初始化
36 mm/memblock.c
42 下面是关于memblock数据结构、函数和宏的描述。其中一些实际上是内部的,但由于
48 include/linux/memblock.h
49 mm/memblock.c
/linux-5.19.10/Documentation/core-api/
Dboot-time-mm.rst10 A specialized allocator called ``memblock`` performs the
26 .. kernel-doc:: mm/memblock.c
27 :doc: memblock overview
33 Here is the description of memblock data structures, functions and
39 .. kernel-doc:: include/linux/memblock.h
40 .. kernel-doc:: mm/memblock.c
/linux-5.19.10/arch/microblaze/mm/
Dinit.c158 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()
/linux-5.19.10/arch/powerpc/mm/
Dinit_32.c126 if (memblock.memory.cnt > 1) { in MMU_init()
128 memblock_enforce_memory_limit(memblock.memory.regions[0].size); in MMU_init()
/linux-5.19.10/arch/powerpc/platforms/embedded6xx/
Dwii.c59 struct memblock_region *p = memblock.memory.regions; in wii_memory_fixups()
61 BUG_ON(memblock.memory.cnt != 2); in wii_memory_fixups()
/linux-5.19.10/arch/arm/mm/
Dpmsa-v8.c248 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()
/linux-5.19.10/drivers/net/ethernet/neterion/vxge/
Dvxge-config.c1114 ((struct __vxge_hw_blockpool_entry *)p)->memblock, in __vxge_hw_blockpool_destroy()
1141 void *memblock; in __vxge_hw_blockpool_create() local
1173 memblock = vxge_os_dma_malloc( in __vxge_hw_blockpool_create()
1178 if (memblock == NULL) { in __vxge_hw_blockpool_create()
1184 dma_addr = dma_map_single(&hldev->pdev->dev, memblock, in __vxge_hw_blockpool_create()
1188 vxge_os_dma_free(hldev->pdev, memblock, &acc_handle); in __vxge_hw_blockpool_create()
1207 entry->memblock = memblock; in __vxge_hw_blockpool_create()
2039 void *memblock; in __vxge_hw_ring_item_dma_addr() local
2047 memblock = mempoolh->memblocks_arr[memblock_idx]; in __vxge_hw_ring_item_dma_addr()
2053 dma_item_offset = (u8 *)item - (u8 *)memblock; in __vxge_hw_ring_item_dma_addr()
[all …]
Dvxge-config.h534 void *memblock; member
1093 void *memblock; member
1951 void *memblock = mempool->memblocks_arr[memblock_idx]; in __vxge_hw_mempool_item_priv() local
1954 offset = (u32)((u8 *)item - (u8 *)memblock); in __vxge_hw_mempool_item_priv()
/linux-5.19.10/arch/x86/mm/
Dnuma.c249 if (!memblock_overlaps_region(&memblock.memory, in numa_cleanup_meminfo()
509 ret = memblock_set_node(mb->start, mb->end - mb->start, &memblock.reserved, mb->nid); in numa_clear_kernel_node_hotplug()
560 &memblock.memory, mb->nid); in numa_register_memblks()
651 WARN_ON(memblock_set_node(0, ULLONG_MAX, &memblock.memory, in numa_init()
653 WARN_ON(memblock_set_node(0, ULLONG_MAX, &memblock.reserved, in numa_init()
/linux-5.19.10/drivers/infiniband/core/
Duverbs_ioctl.c496 struct bundle_alloc_head *memblock; in bundle_destroy() local
534 for (memblock = pbundle->allocated_mem; memblock;) { in bundle_destroy()
535 struct bundle_alloc_head *tmp = memblock; in bundle_destroy()
537 memblock = memblock->next; in bundle_destroy()
/linux-5.19.10/arch/loongarch/kernel/
Dmem.c53 memblock_set_node(0, PHYS_ADDR_MAX, &memblock.memory, 0); in memblock_init()
/linux-5.19.10/arch/riscv/kernel/
Dsetup.c155 num_resources = memblock.memory.cnt + memblock.reserved.cnt + 1; in init_resources()
/linux-5.19.10/arch/powerpc/include/asm/
Dfadump-internal.h20 #define memblock_num_regions(memblock_type) (memblock.memblock_type.cnt)
/linux-5.19.10/arch/s390/kernel/
Dsetup.c659 if (memblock.memory.regions[0].size < crash_size) { in reserve_crashkernel()
705 (unsigned long)memblock.memory.total_size >> 20); in reserve_crashkernel()
780 memblock_set_node(0, ULONG_MAX, &memblock.memory, 0); in memblock_add_mem_detect_info()
/linux-5.19.10/Documentation/ABI/testing/
Dppc-memtrace15 aligned to the memblock size. This amount of RAM will be removed

12