Disable Dex2oatImageTest.TestModesAndFilters for gtest-heap-poisoning.
This test is failing on the gtest-heap-poisoning configuration
(AddressSanitizer + CMS/RosAlloc + heap-poisoning).
Temporarily disable this test on this configuration to keep
our automated build/testing green while we work on a fix.
Test: ART_HEAP_POISONING=true ART_USE_READ_BARRIER=false SANITIZE_HOST=address ASAN_OPTIONS='detect_leaks=0' make test-art-host-gtest-dex2oat_image_test
Bug: 111061592
Change-Id: If1cb300ed19331a203226031a294c204de767f37
diff --git a/dex2oat/dex2oat_image_test.cc b/dex2oat/dex2oat_image_test.cc
index 0366467..ae8e1b7 100644
--- a/dex2oat/dex2oat_image_test.cc
+++ b/dex2oat/dex2oat_image_test.cc
@@ -232,6 +232,11 @@
};
TEST_F(Dex2oatImageTest, TestModesAndFilters) {
+ // This test crashes on the gtest-heap-poisoning configuration
+ // (AddressSanitizer + CMS/RosAlloc + heap-poisoning); see b/111061592.
+ // Temporarily disable this test on this configuration to keep
+ // our automated build/testing green while we work on a fix.
+ TEST_DISABLED_FOR_MEMORY_TOOL_WITH_HEAP_POISONING_WITHOUT_READ_BARRIERS();
if (kIsTargetBuild) {
// This test is too slow for target builds.
return;
diff --git a/runtime/common_runtime_test.h b/runtime/common_runtime_test.h
index 892abb4..d21973e 100644
--- a/runtime/common_runtime_test.h
+++ b/runtime/common_runtime_test.h
@@ -220,6 +220,13 @@
printf("WARNING: TEST DISABLED FOR HEAP POISONING\n"); \
return; \
}
+
+#define TEST_DISABLED_FOR_MEMORY_TOOL_WITH_HEAP_POISONING_WITHOUT_READ_BARRIERS() \
+ if (kRunningOnMemoryTool && kPoisonHeapReferences && !kEmitCompilerReadBarrier) { \
+ printf("WARNING: TEST DISABLED FOR MEMORY TOOL WITH HEAP POISONING WITHOUT READ BARRIERS\n"); \
+ return; \
+ }
+
} // namespace art
#endif // ART_RUNTIME_COMMON_RUNTIME_TEST_H_