MediaMetrics: limit maximum memory used
Use media utility function limitProcessMemory().
Test: restrict mediametrics memory by property, ensure restart
Bug: 152084875
Change-Id: I20b51cecd67e9ac5e03ab34c1c68b1cfd0b8a964
diff --git a/services/mediametrics/main_mediametrics.cpp b/services/mediametrics/main_mediametrics.cpp
index ec392e2..3c71e42 100644
--- a/services/mediametrics/main_mediametrics.cpp
+++ b/services/mediametrics/main_mediametrics.cpp
@@ -23,12 +23,17 @@
#include <binder/IPCThreadState.h>
#include <binder/IServiceManager.h>
#include <binder/ProcessState.h>
-
+#include <media/MediaUtils.h>
int main(int argc __unused, char **argv __unused)
{
using namespace android;
+ limitProcessMemory(
+ "media.metrics.maxmem", /* property that defines limit */
+ (size_t)128 * (1 << 20), /* SIZE_MAX, upper limit in bytes */
+ 10 /* upper limit as percentage of physical RAM */);
+
signal(SIGPIPE, SIG_IGN);
// to match the service name