changeset 1953:8d81b4a1d3e1

6998802: ScavengeALot: assert(!gch->incremental_collection_failed()) failed: Twice in a row Summary: Weaken assert by excluding scavenges resulting from -XX:+ScavengeALot stress-testing option. Reviewed-by: jmasa, tonyp
author ysr
date Thu, 11 Nov 2010 10:42:43 -0800
parents 4df7f8cba524
children e3e1fb85e50a
files src/share/vm/memory/defNewGeneration.cpp
diffstat 1 files changed, 3 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/memory/defNewGeneration.cpp	Tue Nov 09 10:47:20 2010 -0800
+++ b/src/share/vm/memory/defNewGeneration.cpp	Thu Nov 11 10:42:43 2010 -0800
@@ -838,7 +838,9 @@
         gch->incremental_collection_failed()) {
       seen_incremental_collection_failed = true;
     } else if (seen_incremental_collection_failed) {
-      assert(!gch->incremental_collection_failed(), "Twice in a row");
+      assert(gch->gc_cause() == GCCause::_scavenge_alot || !gch->incremental_collection_failed(),
+             "Twice in a row");
+
       seen_incremental_collection_failed = false;
     }
 #endif // ASSERT