summaryrefslogtreecommitdiffstats
path: root/runtime/utils.cc
diff options
context:
space:
mode:
authorAndreas Gampe <agampe@google.com>2014-10-24 22:13:45 -0700
committerAndreas Gampe <agampe@google.com>2014-11-06 19:47:07 -0800
commitd7576328811e5103e99d31f834a857522cc1463f (patch)
tree5c20cecc09ca8786434b663cbfcad31e56c7ac72 /runtime/utils.cc
parentb7ce2074ef43ff221cdec6ddba953f0b0c67447b (diff)
downloadart-d7576328811e5103e99d31f834a857522cc1463f.tar.gz
art-d7576328811e5103e99d31f834a857522cc1463f.tar.bz2
art-d7576328811e5103e99d31f834a857522cc1463f.zip
ART: Fix valgrind
Allow ValgrindMallocSpace wrapper for RosAlloc.Requires refactoring, as ValgrindMallocSpace was bound to the signature of DlMallocSpace. Also turn of native stack dumping when running under Valgrind to work around b/18119146. Ritzperf before and after Mean 3190.725 3082.475 Standard Error 11.68407 10.37911 Mode 3069 2980 Median 3182.5 3051.5 Variance 16382.117 12927.125 Standard Deviation 127.99264 113.69751 Kurtosis 1.1065632 0.3657799 Skewness 0.9013805 0.9117792 Range 644 528 Minimum 2991 2928 Maximum 3635 3456 Count 120 120 Bug: 18119146 Change-Id: I25558ea7cb578406011dede9d3d0bdbfee4ff4d5
Diffstat (limited to 'runtime/utils.cc')
-rw-r--r--runtime/utils.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/utils.cc b/runtime/utils.cc
index 037370817..f2d710dc4 100644
--- a/runtime/utils.cc
+++ b/runtime/utils.cc
@@ -1121,6 +1121,11 @@ std::string GetSchedulerGroupName(pid_t tid) {
void DumpNativeStack(std::ostream& os, pid_t tid, const char* prefix,
mirror::ArtMethod* current_method) {
#ifdef __linux__
+ // b/18119146
+ if (RUNNING_ON_VALGRIND != 0) {
+ return;
+ }
+
std::unique_ptr<Backtrace> backtrace(Backtrace::Create(BACKTRACE_CURRENT_PROCESS, tid));
if (!backtrace->Unwind(0)) {
os << prefix << "(backtrace::Unwind failed for thread " << tid << ")\n";