summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUday Kumar Sundar <usundar@codeaurora.org>2013-10-07 10:31:48 -0700
committerSteve Kondik <shade@chemlab.org>2014-01-28 00:47:13 -0800
commit045bbe6a86f352b4ecc6412433ab4a5e534cc865 (patch)
tree2cfbc592f0a8899ec6652e5b58e7b91045523f93
parent258f631e86c4a78888ff49719e3eb9eaeb1ed835 (diff)
downloadandroid_dalvik-045bbe6a86f352b4ecc6412433ab4a5e534cc865.tar.gz
android_dalvik-045bbe6a86f352b4ecc6412433ab4a5e534cc865.tar.bz2
android_dalvik-045bbe6a86f352b4ecc6412433ab4a5e534cc865.zip
setting RLIMIT to INFINITY.
This is to generate coredumps for processes spawned by zygote Change-Id: I2dbac76fbcaa7be3845ba5e12ad064548a25e2e3
-rw-r--r--vm/native/dalvik_system_Zygote.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/vm/native/dalvik_system_Zygote.cpp b/vm/native/dalvik_system_Zygote.cpp
index 6c8a2f851..995268c3f 100644
--- a/vm/native/dalvik_system_Zygote.cpp
+++ b/vm/native/dalvik_system_Zygote.cpp
@@ -45,6 +45,10 @@
#include <sys/utsname.h>
#include <sys/capability.h>
+#ifdef HAVE_ANDROID_OS
+#include <cutils/properties.h>
+#endif
+
#if defined(HAVE_PRCTL)
# include <sys/prctl.h>
#endif
@@ -416,8 +420,15 @@ static void enableDebugFeatures(u4 debugFlags)
ALOGE("could not set dumpable bit flag for pid %d: %s",
getpid(), strerror(errno));
} else {
+ char prop_value[PROPERTY_VALUE_MAX];
+ property_get("persist.debug.trace",prop_value,"0");
struct rlimit rl;
- rl.rlim_cur = 0;
+ if(prop_value[0] == '1') {
+ ALOGE("setting RLIM to infinity for process %d",getpid());
+ rl.rlim_cur = RLIM_INFINITY;
+ } else {
+ rl.rlim_cur = 0;
+ }
rl.rlim_max = RLIM_INFINITY;
if (setrlimit(RLIMIT_CORE, &rl) < 0) {
ALOGE("could not disable core file generation for pid %d: %s",