diff options
| author | 2016-03-09 17:30:50 +0000 | |
|---|---|---|
| committer | 2016-03-09 17:30:50 +0000 | |
| commit | 2048b01dfec8877d672a4da41a158f68b12b5337 (patch) | |
| tree | ba361d4a97c0bae5f51b9bf269d26ebb094d8afb /runtime/runtime_linux.cc | |
| parent | fa2cda44cb53f01a2bbfd410724a4bc314a236d1 (diff) | |
| parent | 0d0ce279ce1404f8b00d861b2fce123a71bb3312 (diff) | |
Merge "ART: Enable native stack dumping on timeout"
Diffstat (limited to 'runtime/runtime_linux.cc')
| -rw-r--r-- | runtime/runtime_linux.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/runtime/runtime_linux.cc b/runtime/runtime_linux.cc index 8237b06a56..bc963c5b8c 100644 --- a/runtime/runtime_linux.cc +++ b/runtime/runtime_linux.cc @@ -36,6 +36,7 @@ namespace art { static constexpr bool kDumpHeapObjectOnSigsevg = false; static constexpr bool kUseSigRTTimeout = true; +static constexpr bool kDumpNativeStackOnTimeout = true; struct Backtrace { public: @@ -350,7 +351,9 @@ void HandleUnexpectedSignal(int signal_number, siginfo_t* info, void* raw_contex if (runtime != nullptr) { if (IsTimeoutSignal(signal_number)) { // Special timeout signal. Try to dump all threads. - runtime->GetThreadList()->DumpForSigQuit(LOG(INTERNAL_FATAL)); + // Note: Do not use DumpForSigQuit, as that might disable native unwind, but the native parts + // are of value here. + runtime->GetThreadList()->Dump(LOG(INTERNAL_FATAL), kDumpNativeStackOnTimeout); } gc::Heap* heap = runtime->GetHeap(); LOG(INTERNAL_FATAL) << "Fault message: " << runtime->GetFaultMessage(); |