diff options
| author | 2019-07-15 16:44:05 -0700 | |
|---|---|---|
| committer | 2019-07-15 16:44:05 -0700 | |
| commit | 0d79e1293c58ce9c0079e13ff5468f0303ff5b11 (patch) | |
| tree | 2f94b715c643e538601878cd71d3e2173d22b600 | |
| parent | b206ac6f07e17d5882e03f6f9a4ec16ac07e6232 (diff) | |
| parent | 3ea9580a290e21e0adaa336619794eed95f71cd5 (diff) | |
Ignore signal registration for debugging
am: 3ea9580a29
Change-Id: I90f90104e68b4911f15bbfc1dfc3407320b86564
| -rw-r--r-- | core/java/com/android/internal/os/Zygote.java | 8 | ||||
| -rw-r--r-- | services/core/java/com/android/server/am/ProcessList.java | 3 |
2 files changed, 11 insertions, 0 deletions
diff --git a/core/java/com/android/internal/os/Zygote.java b/core/java/com/android/internal/os/Zygote.java index 2ba9cf1961e9..46e041b3f33e 100644 --- a/core/java/com/android/internal/os/Zygote.java +++ b/core/java/com/android/internal/os/Zygote.java @@ -106,6 +106,14 @@ public final class Zygote { */ public static final int USE_APP_IMAGE_STARTUP_CACHE = 1 << 16; + /** + * When set, application specified signal handlers are not chained (i.e, ignored) + * by the runtime. + * + * Used for debugging only. Usage: set debug.ignoreappsignalhandler to 1. + */ + public static final int DEBUG_IGNORE_APP_SIGNAL_HANDLER = 1 << 17; + /** No external storage should be mounted. */ public static final int MOUNT_EXTERNAL_NONE = IVold.REMOUNT_MODE_NONE; /** Default external storage should be mounted. */ diff --git a/services/core/java/com/android/server/am/ProcessList.java b/services/core/java/com/android/server/am/ProcessList.java index b399971d1ad5..3d598ddbd030 100644 --- a/services/core/java/com/android/server/am/ProcessList.java +++ b/services/core/java/com/android/server/am/ProcessList.java @@ -1544,6 +1544,9 @@ public final class ProcessList { if ("1".equals(SystemProperties.get("debug.assert"))) { runtimeFlags |= Zygote.DEBUG_ENABLE_ASSERT; } + if ("1".equals(SystemProperties.get("debug.ignoreappsignalhandler"))) { + runtimeFlags |= Zygote.DEBUG_IGNORE_APP_SIGNAL_HANDLER; + } if (mService.mNativeDebuggingApp != null && mService.mNativeDebuggingApp.equals(app.processName)) { // Enable all debug flags required by the native debugger. |