Move all leak info functions to android_mallopt.
Bug: 130028357
Test: malloc_hooks unit tests.
Test: Enable backtrace for mediaserver, run dumpsys media.player -m
Test: Enable backtrace for calendar, run am dumpheap -n <PID> <FILE>
Change-Id: I6774e28ccd9b3f2310127a5b39ccd15fe696a787
Merged-In: I6774e28ccd9b3f2310127a5b39ccd15fe696a787
(cherry picked from commit 3aadc5e80a5e2cf6b6760ed90d528709223bb449)
diff --git a/libc/malloc_hooks/tests/malloc_hooks_tests.cpp b/libc/malloc_hooks/tests/malloc_hooks_tests.cpp
index 0d23a6a..86e20ea 100644
--- a/libc/malloc_hooks/tests/malloc_hooks_tests.cpp
+++ b/libc/malloc_hooks/tests/malloc_hooks_tests.cpp
@@ -38,6 +38,7 @@
#include <gtest/gtest.h>
+#include <private/bionic_malloc.h>
#include <private/bionic_malloc_dispatch.h>
#include <tests/utils.h>
@@ -197,19 +198,15 @@
}
TEST_F(MallocHooksTest, DISABLED_extended_functions) {
- uint8_t* info = nullptr;
- size_t overall_size = 100;
- size_t info_size = 200;
- size_t total_memory = 300;
- size_t backtrace_size = 400;
- get_malloc_leak_info(&info, &overall_size, &info_size, &total_memory, &backtrace_size);
- EXPECT_EQ(nullptr, info);
- EXPECT_EQ(0U, overall_size);
- EXPECT_EQ(0U, info_size);
- EXPECT_EQ(0U, total_memory);
- EXPECT_EQ(0U, backtrace_size);
+ android_mallopt_leak_info_t leak_info;
+ ASSERT_TRUE(android_mallopt(M_GET_MALLOC_LEAK_INFO, &leak_info, sizeof(leak_info)));
+ EXPECT_EQ(nullptr, leak_info.buffer);
+ EXPECT_EQ(0U, leak_info.overall_size);
+ EXPECT_EQ(0U, leak_info.info_size);
+ EXPECT_EQ(0U, leak_info.total_memory);
+ EXPECT_EQ(0U, leak_info.backtrace_size);
- free_malloc_leak_info(info);
+ ASSERT_TRUE(android_mallopt(M_FREE_MALLOC_LEAK_INFO, &leak_info, sizeof(leak_info)));
malloc_enable();
malloc_disable();