Lines Matching full:base
36 * A simple test that adds a memory block of a specified base address
48 .base = SZ_1G, in memblock_add_simple_check()
55 memblock_add(r.base, r.size); in memblock_add_simple_check()
57 ASSERT_EQ(rgn->base, r.base); in memblock_add_simple_check()
69 * A simple test that adds a memory block of a specified base address, size,
81 .base = SZ_1M, in memblock_add_node_simple_check()
88 memblock_add_node(r.base, r.size, 1, MEMBLOCK_HOTPLUG); in memblock_add_node_simple_check()
90 ASSERT_EQ(rgn->base, r.base); in memblock_add_node_simple_check()
125 .base = SZ_1G, in memblock_add_disjoint_check()
129 .base = SZ_1G + SZ_16K, in memblock_add_disjoint_check()
136 memblock_add(r1.base, r1.size); in memblock_add_disjoint_check()
137 memblock_add(r2.base, r2.size); in memblock_add_disjoint_check()
139 ASSERT_EQ(rgn1->base, r1.base); in memblock_add_disjoint_check()
142 ASSERT_EQ(rgn2->base, r2.base); in memblock_add_disjoint_check()
155 * with the beginning of r1 (that is r1.base < r2.base + r2.size):
162 * | r1.base
164 * r2.base
166 * Expect to merge the two entries into one region that starts at r2.base
178 .base = SZ_512M, in memblock_add_overlap_top_check()
182 .base = SZ_256M, in memblock_add_overlap_top_check()
188 total_size = (r1.base - r2.base) + r1.size; in memblock_add_overlap_top_check()
191 memblock_add(r1.base, r1.size); in memblock_add_overlap_top_check()
192 memblock_add(r2.base, r2.size); in memblock_add_overlap_top_check()
194 ASSERT_EQ(rgn->base, r2.base); in memblock_add_overlap_top_check()
207 * with the end of r1 (that is r2.base < r1.base + r1.size):
214 * | r2.base
216 * r1.base
218 * Expect to merge the two entries into one region that starts at r1.base
230 .base = SZ_128M, in memblock_add_overlap_bottom_check()
234 .base = SZ_256M, in memblock_add_overlap_bottom_check()
240 total_size = (r2.base - r1.base) + r2.size; in memblock_add_overlap_bottom_check()
243 memblock_add(r1.base, r1.size); in memblock_add_overlap_bottom_check()
244 memblock_add(r2.base, r2.size); in memblock_add_overlap_bottom_check()
246 ASSERT_EQ(rgn->base, r1.base); in memblock_add_overlap_bottom_check()
259 * within the range of r1 (that is r1.base < r2.base &&
260 * r2.base + r2.size < r1.base + r1.size):
267 * r1.base
279 .base = SZ_8M, in memblock_add_within_check()
283 .base = SZ_16M, in memblock_add_within_check()
290 memblock_add(r1.base, r1.size); in memblock_add_within_check()
291 memblock_add(r2.base, r2.size); in memblock_add_within_check()
293 ASSERT_EQ(rgn->base, r1.base); in memblock_add_within_check()
311 .base = SZ_16K, in memblock_add_twice_check()
319 memblock_add(r.base, r.size); in memblock_add_twice_check()
320 memblock_add(r.base, r.size); in memblock_add_twice_check()
338 * Expect to merge the three entries into one region that starts at r1.base
350 .base = SZ_1G, in memblock_add_between_check()
354 .base = SZ_1G + SZ_16K, in memblock_add_between_check()
358 .base = SZ_1G + SZ_8K, in memblock_add_between_check()
367 memblock_add(r1.base, r1.size); in memblock_add_between_check()
368 memblock_add(r2.base, r2.size); in memblock_add_between_check()
369 memblock_add(r3.base, r3.size); in memblock_add_between_check()
371 ASSERT_EQ(rgn->base, r1.base); in memblock_add_between_check()
393 * Expect to add a memory block of size PHYS_ADDR_MAX - r.base. Expect the
404 .base = PHYS_ADDR_MAX - SZ_1M, in memblock_add_near_max_check()
410 total_size = PHYS_ADDR_MAX - r.base; in memblock_add_near_max_check()
413 memblock_add(r.base, r.size); in memblock_add_near_max_check()
415 ASSERT_EQ(rgn->base, r.base); in memblock_add_near_max_check()
437 .base = SZ_16K, in memblock_add_many_check()
441 phys_addr_t base, size = SZ_64; in memblock_add_many_check() local
455 base = PAGE_ALIGN(dummy_physical_memory_base()); in memblock_add_many_check()
458 memblock_add(base, new_memory_regions_size); in memblock_add_many_check()
460 /* This is the base of small memory block. */ in memblock_add_many_check()
461 base += new_memory_regions_size + gap_size; in memblock_add_many_check()
470 memblock_add(base, size); in memblock_add_many_check()
471 base += size + gap_size; in memblock_add_many_check()
492 memblock_add(r.base, r.size); in memblock_add_many_check()
493 ASSERT_EQ(memblock.memory.regions[0].base, r.base); in memblock_add_many_check()
541 * A simple test that marks a memory block of a specified base address
553 .base = SZ_2G, in memblock_reserve_simple_check()
560 memblock_reserve(r.base, r.size); in memblock_reserve_simple_check()
562 ASSERT_EQ(rgn->base, r.base); in memblock_reserve_simple_check()
589 .base = SZ_256M, in memblock_reserve_disjoint_check()
593 .base = SZ_512M, in memblock_reserve_disjoint_check()
600 memblock_reserve(r1.base, r1.size); in memblock_reserve_disjoint_check()
601 memblock_reserve(r2.base, r2.size); in memblock_reserve_disjoint_check()
603 ASSERT_EQ(rgn1->base, r1.base); in memblock_reserve_disjoint_check()
606 ASSERT_EQ(rgn2->base, r2.base); in memblock_reserve_disjoint_check()
620 * r1.base < r2.base + r2.size):
627 * | r1.base
629 * r2.base
631 * Expect to merge two entries into one region that starts at r2.base and
643 .base = SZ_1G, in memblock_reserve_overlap_top_check()
647 .base = SZ_128M, in memblock_reserve_overlap_top_check()
653 total_size = (r1.base - r2.base) + r1.size; in memblock_reserve_overlap_top_check()
656 memblock_reserve(r1.base, r1.size); in memblock_reserve_overlap_top_check()
657 memblock_reserve(r2.base, r2.size); in memblock_reserve_overlap_top_check()
659 ASSERT_EQ(rgn->base, r2.base); in memblock_reserve_overlap_top_check()
673 * r2.base < r1.base + r1.size):
680 * | r2.base
682 * r1.base
684 * Expect to merge two entries into one region that starts at r1.base and
696 .base = SZ_2K, in memblock_reserve_overlap_bottom_check()
700 .base = SZ_128K, in memblock_reserve_overlap_bottom_check()
706 total_size = (r2.base - r1.base) + r2.size; in memblock_reserve_overlap_bottom_check()
709 memblock_reserve(r1.base, r1.size); in memblock_reserve_overlap_bottom_check()
710 memblock_reserve(r2.base, r2.size); in memblock_reserve_overlap_bottom_check()
712 ASSERT_EQ(rgn->base, r1.base); in memblock_reserve_overlap_bottom_check()
726 * (r1.base < r2.base) && (r2.base + r2.size < r1.base + r1.size)):
733 * | r2.base
735 * r1.base
747 .base = SZ_1M, in memblock_reserve_within_check()
751 .base = SZ_2M, in memblock_reserve_within_check()
758 memblock_reserve(r1.base, r1.size); in memblock_reserve_within_check()
759 memblock_reserve(r2.base, r2.size); in memblock_reserve_within_check()
761 ASSERT_EQ(rgn->base, r1.base); in memblock_reserve_within_check()
780 .base = SZ_16K, in memblock_reserve_twice_check()
788 memblock_reserve(r.base, r.size); in memblock_reserve_twice_check()
789 memblock_reserve(r.base, r.size); in memblock_reserve_twice_check()
808 * r1.base and has size of r1.size + r2.size + r3.size. The region counter and
819 .base = SZ_1G, in memblock_reserve_between_check()
823 .base = SZ_1G + SZ_16K, in memblock_reserve_between_check()
827 .base = SZ_1G + SZ_8K, in memblock_reserve_between_check()
836 memblock_reserve(r1.base, r1.size); in memblock_reserve_between_check()
837 memblock_reserve(r2.base, r2.size); in memblock_reserve_between_check()
838 memblock_reserve(r3.base, r3.size); in memblock_reserve_between_check()
840 ASSERT_EQ(rgn->base, r1.base); in memblock_reserve_between_check()
862 * Expect to reserve a memory block of size PHYS_ADDR_MAX - r.base. Expect the
873 .base = PHYS_ADDR_MAX - SZ_1M, in memblock_reserve_near_max_check()
879 total_size = PHYS_ADDR_MAX - r.base; in memblock_reserve_near_max_check()
882 memblock_reserve(r.base, r.size); in memblock_reserve_near_max_check()
884 ASSERT_EQ(rgn->base, r.base); in memblock_reserve_near_max_check()
906 .base = SZ_16K, in memblock_reserve_many_check()
959 memblock_reserve(r.base, r.size); in memblock_reserve_many_check()
960 ASSERT_EQ(memblock.reserved.regions[0].base, r.base); in memblock_reserve_many_check()
1016 * rgn.base
1029 .base = SZ_2K, in memblock_remove_simple_check()
1033 .base = SZ_128K, in memblock_remove_simple_check()
1040 memblock_add(r1.base, r1.size); in memblock_remove_simple_check()
1041 memblock_add(r2.base, r2.size); in memblock_remove_simple_check()
1042 memblock_remove(r1.base, r1.size); in memblock_remove_simple_check()
1044 ASSERT_EQ(rgn->base, r2.base); in memblock_remove_simple_check()
1067 * rgn.base
1078 .base = SZ_512K, in memblock_remove_absent_check()
1082 .base = SZ_64M, in memblock_remove_absent_check()
1089 memblock_add(r1.base, r1.size); in memblock_remove_absent_check()
1090 memblock_remove(r2.base, r2.size); in memblock_remove_absent_check()
1092 ASSERT_EQ(rgn->base, r1.base); in memblock_remove_absent_check()
1106 * (that is r1.base < r2.base + r2.size):
1116 * | rgn.base
1117 * r1.base
1130 .base = SZ_32M, in memblock_remove_overlap_top_check()
1134 .base = SZ_16M, in memblock_remove_overlap_top_check()
1140 r1_end = r1.base + r1.size; in memblock_remove_overlap_top_check()
1141 r2_end = r2.base + r2.size; in memblock_remove_overlap_top_check()
1145 memblock_add(r1.base, r1.size); in memblock_remove_overlap_top_check()
1146 memblock_remove(r2.base, r2.size); in memblock_remove_overlap_top_check()
1148 ASSERT_EQ(rgn->base, r1.base + r2.base); in memblock_remove_overlap_top_check()
1161 * the already existing region r1 (that is r2.base < r1.base + r1.size):
1171 * r1.base
1184 .base = SZ_2M, in memblock_remove_overlap_bottom_check()
1188 .base = SZ_32M, in memblock_remove_overlap_bottom_check()
1194 total_size = r2.base - r1.base; in memblock_remove_overlap_bottom_check()
1197 memblock_add(r1.base, r1.size); in memblock_remove_overlap_bottom_check()
1198 memblock_remove(r2.base, r2.size); in memblock_remove_overlap_bottom_check()
1200 ASSERT_EQ(rgn->base, r1.base); in memblock_remove_overlap_bottom_check()
1214 * (r1.base < r2.base) && (r2.base + r2.size < r1.base + r1.size)):
1224 * r1.base
1226 * Expect that the region is split into two - one that ends at r2.base and
1227 * another that starts at r2.base + r2.size, with appropriate sizes. The
1239 .base = SZ_1M, in memblock_remove_within_check()
1243 .base = SZ_16M, in memblock_remove_within_check()
1249 r1_size = r2.base - r1.base; in memblock_remove_within_check()
1250 r2_size = (r1.base + r1.size) - (r2.base + r2.size); in memblock_remove_within_check()
1254 memblock_add(r1.base, r1.size); in memblock_remove_within_check()
1255 memblock_remove(r2.base, r2.size); in memblock_remove_within_check()
1257 ASSERT_EQ(rgn1->base, r1.base); in memblock_remove_within_check()
1260 ASSERT_EQ(rgn2->base, r2.base + r2.size); in memblock_remove_within_check()
1285 .base = SZ_2K, in memblock_remove_only_region_check()
1292 memblock_add(r1.base, r1.size); in memblock_remove_only_region_check()
1293 memblock_remove(r1.base, r1.size); in memblock_remove_only_region_check()
1295 ASSERT_EQ(rgn->base, 0); in memblock_remove_only_region_check()
1317 * Expect that only the portion between PHYS_ADDR_MAX and r2.base is removed.
1329 .base = PHYS_ADDR_MAX - SZ_2M, in memblock_remove_near_max_check()
1334 .base = PHYS_ADDR_MAX - SZ_1M, in memblock_remove_near_max_check()
1340 total_size = r1.size - (PHYS_ADDR_MAX - r2.base); in memblock_remove_near_max_check()
1343 memblock_add(r1.base, r1.size); in memblock_remove_near_max_check()
1344 memblock_remove(r2.base, r2.size); in memblock_remove_near_max_check()
1346 ASSERT_EQ(rgn->base, r1.base); in memblock_remove_near_max_check()
1381 .base = SZ_16M, in memblock_remove_overlap_two_check()
1385 .base = SZ_64M, in memblock_remove_overlap_two_check()
1389 .base = SZ_32M, in memblock_remove_overlap_two_check()
1395 r2_end = r2.base + r2.size; in memblock_remove_overlap_two_check()
1396 r3_end = r3.base + r3.size; in memblock_remove_overlap_two_check()
1397 new_r1_size = r3.base - r1.base; in memblock_remove_overlap_two_check()
1402 memblock_add(r1.base, r1.size); in memblock_remove_overlap_two_check()
1403 memblock_add(r2.base, r2.size); in memblock_remove_overlap_two_check()
1404 memblock_remove(r3.base, r3.size); in memblock_remove_overlap_two_check()
1406 ASSERT_EQ(rgn1->base, r1.base); in memblock_remove_overlap_two_check()
1409 ASSERT_EQ(rgn2->base, r3_end); in memblock_remove_overlap_two_check()
1450 * rgn.base
1462 .base = SZ_4M, in memblock_free_simple_check()
1466 .base = SZ_8M, in memblock_free_simple_check()
1473 memblock_reserve(r1.base, r1.size); in memblock_free_simple_check()
1474 memblock_reserve(r2.base, r2.size); in memblock_free_simple_check()
1475 memblock_free((void *)r1.base, r1.size); in memblock_free_simple_check()
1477 ASSERT_EQ(rgn->base, r2.base); in memblock_free_simple_check()
1500 * rgn.base
1511 .base = SZ_2M, in memblock_free_absent_check()
1515 .base = SZ_16M, in memblock_free_absent_check()
1522 memblock_reserve(r1.base, r1.size); in memblock_free_absent_check()
1523 memblock_free((void *)r2.base, r2.size); in memblock_free_absent_check()
1525 ASSERT_EQ(rgn->base, r1.base); in memblock_free_absent_check()
1538 * of the already existing entry r1 (that is r1.base < r2.base + r2.size):
1548 * | rgn.base
1550 * r1.base
1563 .base = SZ_8M, in memblock_free_overlap_top_check()
1567 .base = SZ_1M, in memblock_free_overlap_top_check()
1573 total_size = (r1.size + r1.base) - (r2.base + r2.size); in memblock_free_overlap_top_check()
1576 memblock_reserve(r1.base, r1.size); in memblock_free_overlap_top_check()
1577 memblock_free((void *)r2.base, r2.size); in memblock_free_overlap_top_check()
1579 ASSERT_EQ(rgn->base, r2.base + r2.size); in memblock_free_overlap_top_check()
1592 * the already existing entry r1 (that is r2.base < r1.base + r1.size):
1612 .base = SZ_8M, in memblock_free_overlap_bottom_check()
1616 .base = SZ_32M, in memblock_free_overlap_bottom_check()
1622 total_size = r2.base - r1.base; in memblock_free_overlap_bottom_check()
1625 memblock_reserve(r1.base, r1.size); in memblock_free_overlap_bottom_check()
1626 memblock_free((void *)r2.base, r2.size); in memblock_free_overlap_bottom_check()
1628 ASSERT_EQ(rgn->base, r1.base); in memblock_free_overlap_bottom_check()
1642 * (r1.base < r2.base) && (r2.base + r2.size < r1.base + r1.size)):
1652 * r1.base
1654 * Expect that the region is split into two - one that ends at r2.base and
1655 * another that starts at r2.base + r2.size, with appropriate sizes. The
1667 .base = SZ_1M, in memblock_free_within_check()
1671 .base = SZ_4M, in memblock_free_within_check()
1677 r1_size = r2.base - r1.base; in memblock_free_within_check()
1678 r2_size = (r1.base + r1.size) - (r2.base + r2.size); in memblock_free_within_check()
1682 memblock_reserve(r1.base, r1.size); in memblock_free_within_check()
1683 memblock_free((void *)r2.base, r2.size); in memblock_free_within_check()
1685 ASSERT_EQ(rgn1->base, r1.base); in memblock_free_within_check()
1688 ASSERT_EQ(rgn2->base, r2.base + r2.size); in memblock_free_within_check()
1713 .base = SZ_2K, in memblock_free_only_region_check()
1720 memblock_reserve(r1.base, r1.size); in memblock_free_only_region_check()
1721 memblock_free((void *)r1.base, r1.size); in memblock_free_only_region_check()
1723 ASSERT_EQ(rgn->base, 0); in memblock_free_only_region_check()
1744 * Expect that only the portion between PHYS_ADDR_MAX and r2.base is freed.
1756 .base = PHYS_ADDR_MAX - SZ_2M, in memblock_free_near_max_check()
1761 .base = PHYS_ADDR_MAX - SZ_1M, in memblock_free_near_max_check()
1767 total_size = r1.size - (PHYS_ADDR_MAX - r2.base); in memblock_free_near_max_check()
1770 memblock_reserve(r1.base, r1.size); in memblock_free_near_max_check()
1771 memblock_free((void *)r2.base, r2.size); in memblock_free_near_max_check()
1773 ASSERT_EQ(rgn->base, r1.base); in memblock_free_near_max_check()
1808 .base = SZ_16M, in memblock_free_overlap_two_check()
1812 .base = SZ_64M, in memblock_free_overlap_two_check()
1816 .base = SZ_32M, in memblock_free_overlap_two_check()
1822 r2_end = r2.base + r2.size; in memblock_free_overlap_two_check()
1823 r3_end = r3.base + r3.size; in memblock_free_overlap_two_check()
1824 new_r1_size = r3.base - r1.base; in memblock_free_overlap_two_check()
1829 memblock_reserve(r1.base, r1.size); in memblock_free_overlap_two_check()
1830 memblock_reserve(r2.base, r2.size); in memblock_free_overlap_two_check()
1831 memblock_free((void *)r3.base, r3.size); in memblock_free_overlap_two_check()
1833 ASSERT_EQ(rgn1->base, r1.base); in memblock_free_overlap_two_check()
1836 ASSERT_EQ(rgn2->base, r3_end); in memblock_free_overlap_two_check()
1924 .base = alignment, in memblock_trim_memory_aligned_check()
1931 memblock_add(r.base, r.size); in memblock_trim_memory_aligned_check()
1934 ASSERT_EQ(rgn->base, r.base); in memblock_trim_memory_aligned_check()
1970 .base = alignment, in memblock_trim_memory_too_small_check()
1974 .base = alignment * 4, in memblock_trim_memory_too_small_check()
1981 memblock_add(r1.base, r1.size); in memblock_trim_memory_too_small_check()
1982 memblock_add(r2.base, r2.size); in memblock_trim_memory_too_small_check()
1985 ASSERT_EQ(rgn->base, r1.base); in memblock_trim_memory_too_small_check()
1997 * r2. Region r1 is aligned on both ends and region r2 is unaligned at the base
2011 * Expect that r1 will not be trimmed and r2 will be trimmed at the base.
2025 .base = alignment, in memblock_trim_memory_unaligned_base_check()
2029 .base = alignment * 4 + offset, in memblock_trim_memory_unaligned_base_check()
2035 new_r2_base = r2.base + (alignment - offset); in memblock_trim_memory_unaligned_base_check()
2039 memblock_add(r1.base, r1.size); in memblock_trim_memory_unaligned_base_check()
2040 memblock_add(r2.base, r2.size); in memblock_trim_memory_unaligned_base_check()
2043 ASSERT_EQ(rgn1->base, r1.base); in memblock_trim_memory_unaligned_base_check()
2046 ASSERT_EQ(rgn2->base, new_r2_base); in memblock_trim_memory_unaligned_base_check()
2058 * r2. Region r1 is aligned on both ends and region r2 is aligned at the base
2086 .base = alignment, in memblock_trim_memory_unaligned_end_check()
2090 .base = alignment * 4, in memblock_trim_memory_unaligned_end_check()
2099 memblock_add(r1.base, r1.size); in memblock_trim_memory_unaligned_end_check()
2100 memblock_add(r2.base, r2.size); in memblock_trim_memory_unaligned_end_check()
2103 ASSERT_EQ(rgn1->base, r1.base); in memblock_trim_memory_unaligned_end_check()
2106 ASSERT_EQ(rgn2->base, r2.base); in memblock_trim_memory_unaligned_end_check()