summaryrefslogtreecommitdiffstats
path: root/adb/services.c
diff options
context:
space:
mode:
authorMike Lockwood <lockwood@android.com>2009-05-20 09:14:30 -0400
committerMike Lockwood <lockwood@android.com>2009-05-20 09:14:30 -0400
commit249ad57a887680538d1dc0195e746b1d877ebd6a (patch)
tree73f311c3825cade0ef3dc7dc7510e03d51e83344 /adb/services.c
parente6be870641d6db12493342c53344d68f464cc0a8 (diff)
downloadsystem_core-249ad57a887680538d1dc0195e746b1d877ebd6a.zip
system_core-249ad57a887680538d1dc0195e746b1d877ebd6a.tar.gz
system_core-249ad57a887680538d1dc0195e746b1d877ebd6a.tar.bz2
adb: adbd no longer disables OOM and now sets children's OOM adjustment to zero
Signed-off-by: Mike Lockwood <lockwood@android.com>
Diffstat (limited to 'adb/services.c')
-rw-r--r--adb/services.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/adb/services.c b/adb/services.c
index 1de55e6..0a5edcf 100644
--- a/adb/services.c
+++ b/adb/services.c
@@ -244,6 +244,18 @@ static int create_subprocess(const char *cmd, const char *arg0, const char *arg1
cmd, strerror(errno), errno);
exit(-1);
} else {
+#if !ADB_HOST
+ // set child's OOM adjustment to zero
+ char text[64];
+ snprintf(text, sizeof text, "/proc/%d/oom_adj", pid);
+ int fd = adb_open(text, O_WRONLY);
+ if (fd >= 0) {
+ adb_write(fd, "0", 1);
+ adb_close(fd);
+ } else {
+ D("adb: unable to open %s\n", text);
+ }
+#endif
return ptm;
}
#endif /* !HAVE_WIN32_PROC */