memblock tests: add tests for memblock_*bottom_up functions
authorRebecca Mckeever <remckee0@gmail.com>
Sat, 27 Aug 2022 05:42:49 +0000 (00:42 -0500)
committerMike Rapoport <rppt@linux.ibm.com>
Tue, 30 Aug 2022 10:12:00 +0000 (13:12 +0300)
Add simple tests for memblock_set_bottom_up() and memblock_bottom_up().

Reviewed-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Shaoqin Huang <shaoqin.huang@intel.com>
Signed-off-by: Rebecca Mckeever <remckee0@gmail.com>
Signed-off-by: Mike Rapoport <rppt@linux.ibm.com>
Link: https://lore.kernel.org/r/b03701d2faeaf00f7184e4b72903de4e5e939437.1661578349.git.remckee0@gmail.com
tools/testing/memblock/tests/basic_api.c

index ea79396e461112e21c23b6728f82911ecf08afe8..c7490291c485134a269935e63878ba040dcae246 100644 (file)
@@ -1679,6 +1679,50 @@ static int memblock_free_checks(void)
        return 0;
 }
 
+static int memblock_set_bottom_up_check(void)
+{
+       prefix_push("memblock_set_bottom_up");
+
+       memblock_set_bottom_up(false);
+       ASSERT_EQ(memblock.bottom_up, false);
+       memblock_set_bottom_up(true);
+       ASSERT_EQ(memblock.bottom_up, true);
+
+       reset_memblock_attributes();
+       test_pass_pop();
+
+       return 0;
+}
+
+static int memblock_bottom_up_check(void)
+{
+       prefix_push("memblock_bottom_up");
+
+       memblock_set_bottom_up(false);
+       ASSERT_EQ(memblock_bottom_up(), memblock.bottom_up);
+       ASSERT_EQ(memblock_bottom_up(), false);
+       memblock_set_bottom_up(true);
+       ASSERT_EQ(memblock_bottom_up(), memblock.bottom_up);
+       ASSERT_EQ(memblock_bottom_up(), true);
+
+       reset_memblock_attributes();
+       test_pass_pop();
+
+       return 0;
+}
+
+static int memblock_bottom_up_checks(void)
+{
+       test_print("Running memblock_*bottom_up tests...\n");
+
+       prefix_reset();
+       memblock_set_bottom_up_check();
+       prefix_reset();
+       memblock_bottom_up_check();
+
+       return 0;
+}
+
 int memblock_basic_checks(void)
 {
        memblock_initialization_check();
@@ -1686,6 +1730,7 @@ int memblock_basic_checks(void)
        memblock_reserve_checks();
        memblock_remove_checks();
        memblock_free_checks();
+       memblock_bottom_up_checks();
 
        return 0;
 }