diff options
author | Jeff Hao <jeffhao@google.com> | 2014-09-15 18:03:41 -0700 |
---|---|---|
committer | Jeff Hao <jeffhao@google.com> | 2014-09-17 14:31:55 -0700 |
commit | 69dbec6d9d55eeb2867949c2791d01dc9aa916c8 (patch) | |
tree | be4eca8161eafb4a8466f5adf28a2c8f27cd37d1 /runtime/trace.cc | |
parent | 926d8e99aa69151a271180299df68963688010d8 (diff) | |
download | art-69dbec6d9d55eeb2867949c2791d01dc9aa916c8.tar.gz art-69dbec6d9d55eeb2867949c2791d01dc9aa916c8.tar.bz2 art-69dbec6d9d55eeb2867949c2791d01dc9aa916c8.zip |
Avoid suspending for alloc trace enabling when already suspended.
Bug: 17499772
(cherry picked from commit 1d6ee090fddd4bfd35c304d6ceb929d5c529dfcc)
Change-Id: Id09809c476c685f0a197ee75bb08638931364efd
Diffstat (limited to 'runtime/trace.cc')
-rw-r--r-- | runtime/trace.cc | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/runtime/trace.cc b/runtime/trace.cc index 6dcc5fe6bb..b32e0429b1 100644 --- a/runtime/trace.cc +++ b/runtime/trace.cc @@ -373,11 +373,9 @@ void Trace::Start(const char* trace_filename, int trace_fd, int buffer_size, int // Enable count of allocs if specified in the flags. if ((flags && kTraceCountAllocs) != 0) { - runtime->SetStatsEnabled(true); + runtime->SetStatsEnabled(true, true); } - - if (sampling_enabled) { CHECK_PTHREAD_CALL(pthread_create, (&sampling_pthread_, NULL, &RunSamplingThread, reinterpret_cast<void*>(interval_us)), @@ -492,7 +490,7 @@ void Trace::FinishTracing() { size_t final_offset = cur_offset_.LoadRelaxed(); if ((flags_ & kTraceCountAllocs) != 0) { - Runtime::Current()->SetStatsEnabled(false); + Runtime::Current()->SetStatsEnabled(false, true); } std::set<mirror::ArtMethod*> visited_methods; |