6735416: G1: runThese javasoft.sqe.tests.lang.thrd011.thrd01101.thrd01101 fails

Fri, 22 Aug 2008 11:48:25 -0700

author
iveresov
date
Fri, 22 Aug 2008 11:48:25 -0700
changeset 793
8651a65ac4b4
parent 792
2564c620fa42
child 794
d515536da189

6735416: G1: runThese javasoft.sqe.tests.lang.thrd011.thrd01101.thrd01101 fails
6622418: G1: assert(false,"Non-balanced monitor enter/exit!") fails
Summary: The mark-sweep compact (which we use for full gc) wrapper did not save the mark words for biased locked objects. The fix is to trivially call the appropriate methods.
Reviewed-by: tonyp, ysr

src/share/vm/gc_implementation/g1/g1MarkSweep.cpp file | annotate | diff | comparison | revisions
src/share/vm/gc_implementation/includeDB_gc_g1 file | annotate | diff | comparison | revisions
     1.1 --- a/src/share/vm/gc_implementation/g1/g1MarkSweep.cpp	Thu Aug 21 23:38:19 2008 -0400
     1.2 +++ b/src/share/vm/gc_implementation/g1/g1MarkSweep.cpp	Fri Aug 22 11:48:25 2008 -0700
     1.3 @@ -50,6 +50,10 @@
     1.4  
     1.5    allocate_stacks();
     1.6  
     1.7 +  // We should save the marks of the currently locked biased monitors.
     1.8 +  // The marking doesn't preserve the marks of biased objects.
     1.9 +  BiasedLocking::preserve_marks();
    1.10 +
    1.11    mark_sweep_phase1(marked_for_unloading, clear_all_softrefs);
    1.12  
    1.13    if (G1VerifyConcMark) {
    1.14 @@ -67,7 +71,7 @@
    1.15    mark_sweep_phase4();
    1.16  
    1.17    GenMarkSweep::restore_marks();
    1.18 -
    1.19 +  BiasedLocking::restore_marks();
    1.20    GenMarkSweep::deallocate_stacks();
    1.21  
    1.22    // We must invalidate the perm-gen rs, so that it gets rebuilt.
     2.1 --- a/src/share/vm/gc_implementation/includeDB_gc_g1	Thu Aug 21 23:38:19 2008 -0400
     2.2 +++ b/src/share/vm/gc_implementation/includeDB_gc_g1	Fri Aug 22 11:48:25 2008 -0700
     2.3 @@ -19,7 +19,7 @@
     2.4  // Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
     2.5  // CA 95054 USA or visit www.sun.com if you need additional information or
     2.6  // have any questions.
     2.7 -//  
     2.8 +//
     2.9  //
    2.10  
    2.11  // NOTE: DO NOT CHANGE THIS COPYRIGHT TO NEW STYLE - IT WILL BREAK makeDeps!
    2.12 @@ -100,7 +100,7 @@
    2.13  
    2.14  concurrentZFThread.hpp			concurrentGCThread.hpp
    2.15  concurrentZFThread.hpp			coTracker.hpp
    2.16 -	  
    2.17 +
    2.18  dirtyCardQueue.cpp                      atomic.hpp
    2.19  dirtyCardQueue.cpp                      dirtyCardQueue.hpp
    2.20  dirtyCardQueue.cpp			heapRegionRemSet.hpp
    2.21 @@ -183,6 +183,7 @@
    2.22  top.hpp                                 g1_globals.hpp
    2.23  
    2.24  g1MarkSweep.cpp                         aprofiler.hpp
    2.25 +g1MarkSweep.cpp                         biasedLocking.hpp
    2.26  g1MarkSweep.cpp                         codeCache.hpp
    2.27  g1MarkSweep.cpp                         events.hpp
    2.28  g1MarkSweep.cpp                         fprofiler.hpp

mercurial