Replace malloc_not_svelte with malloc_low_memory.
The malloc_not_svelte variable name is confusing and makes the
low memory config the default. Change this so that the default is
the regular allocator, and that Malloc_low_memory is used to enable
the low memory allocator.
Update blueprint rules so that scudo is the default action.
Test: Verified scudo config is used by default.
Test: Verfified Android GO config uses the jemalloc low memory config.
Change-Id: Ie7b4b005a6377e2a031bbae979d66b50c8b3bcdb
diff --git a/debuggerd/Android.bp b/debuggerd/Android.bp
index 2529516..3a882ea 100644
--- a/debuggerd/Android.bp
+++ b/debuggerd/Android.bp
@@ -240,11 +240,16 @@
"libdebuggerd/backtrace.cpp",
"libdebuggerd/gwp_asan.cpp",
"libdebuggerd/open_files_list.cpp",
+ "libdebuggerd/scudo.cpp",
"libdebuggerd/tombstone.cpp",
"libdebuggerd/tombstone_proto.cpp",
"libdebuggerd/utility.cpp",
],
+ cflags: [
+ "-DUSE_SCUDO",
+ ],
+
local_include_dirs: ["libdebuggerd/include"],
export_include_dirs: ["libdebuggerd/include"],
@@ -256,6 +261,7 @@
"bionic_libc_platform_headers",
"gwp_asan_headers",
"liblog_headers",
+ "scudo_headers",
],
static_libs: [
@@ -273,6 +279,7 @@
"libtombstone_proto",
"libprocinfo",
"libprotobuf-cpp-lite",
+ "libscudo",
],
target: {
@@ -312,11 +319,9 @@
cflags: ["-DROOT_POSSIBLE"],
},
- malloc_not_svelte: {
- cflags: ["-DUSE_SCUDO"],
- whole_static_libs: ["libscudo"],
- srcs: ["libdebuggerd/scudo.cpp"],
- header_libs: ["scudo_headers"],
+ malloc_low_memory: {
+ cflags: ["-UUSE_SCUDO"],
+ exclude_static_libs: ["libscudo"],
},
},
apex_available: [
diff --git a/debuggerd/libdebuggerd/include/libdebuggerd/scudo.h b/debuggerd/libdebuggerd/include/libdebuggerd/scudo.h
index a506859..89bf5a9 100644
--- a/debuggerd/libdebuggerd/include/libdebuggerd/scudo.h
+++ b/debuggerd/libdebuggerd/include/libdebuggerd/scudo.h
@@ -16,6 +16,8 @@
#pragma once
+#if defined(USE_SCUDO)
+
#include "types.h"
#include "utility.h"
@@ -49,3 +51,5 @@
void FillInCause(Cause* cause, const scudo_error_report* report,
unwindstack::AndroidUnwinder* unwinder) const;
};
+
+#endif // USE_SCUDO
diff --git a/debuggerd/libdebuggerd/scudo.cpp b/debuggerd/libdebuggerd/scudo.cpp
index 3fa3bd0..4ee87c8 100644
--- a/debuggerd/libdebuggerd/scudo.cpp
+++ b/debuggerd/libdebuggerd/scudo.cpp
@@ -14,6 +14,8 @@
* limitations under the License.
*/
+#if defined(USE_SCUDO)
+
#include "libdebuggerd/scudo.h"
#include "libdebuggerd/tombstone.h"
@@ -141,3 +143,5 @@
FillInCause(tombstone->add_causes(), &error_info_.reports[report_num++], unwinder);
}
}
+
+#endif // USE_SCUDO