diff options
author | Uday Kumar Sundar <usundar@codeaurora.org> | 2013-10-07 10:31:48 -0700 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2014-01-28 00:47:13 -0800 |
commit | 045bbe6a86f352b4ecc6412433ab4a5e534cc865 (patch) | |
tree | 2cfbc592f0a8899ec6652e5b58e7b91045523f93 /vm | |
parent | 258f631e86c4a78888ff49719e3eb9eaeb1ed835 (diff) | |
download | android_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
Diffstat (limited to 'vm')
-rw-r--r-- | vm/native/dalvik_system_Zygote.cpp | 13 |
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", |