RFR: JDK-8151336: Root region scanning should be cancelled and disabled when the ConcurrentMarkThread::run_service() exits (original) (raw)
Thomas Schatzl thomas.schatzl at oracle.com
Wed Mar 16 12:58:51 UTC 2016
- Previous message (by thread): RFR: JDK-8151336: Root region scanning should be cancelled and disabled when the ConcurrentMarkThread::run_service() exits
- Next message (by thread): RFR(xs): 8062506: Java GCCause enum is out of sync with C++ GCCause enum
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi all,
On Wed, 2016-03-16 at 12:46 +0100, Thomas Schatzl wrote:
Hi Bengt,
On Tue, 2016-03-15 at 16:11 +0100, Bengt Rutisson wrote: > Hi again everyone, > > Here's an updated webrev: > http://cr.openjdk.java.net/~brutisso/8151336/webrev.01 > > I removed the extra hasterminated state and am instead using the > ConcurrentMarkThread::shouldterminate() state to make sure we > don't > start a new initial mark if the concurrent mark thread is about to > terminate or has already terminated. > > The shouldterminate state is set in ConcurrentGCThread::stop() > where > we first take the Terminatorlock with a safepoint check. So, we > should > be able to rely on this value inside of > docollectionpauseatsafepoint(). I would prefer if the cmThread->shouldterminate() condition should be inside decideonconcmarkinitiation(). It seems to be a quite generic condition that should apply anywhere. Although decideonconcmarkinitiation() has only this caller, this may cause bugs in the future if keeping it there.
I talked to Bengt about this in detail, and we came to the conclusion that any simple fix has some kind of wart. We filed https://bugs.openjdk.java.net/browse/JDK-8151995 to follow up on that.
Thanks, Thomas
- Previous message (by thread): RFR: JDK-8151336: Root region scanning should be cancelled and disabled when the ConcurrentMarkThread::run_service() exits
- Next message (by thread): RFR(xs): 8062506: Java GCCause enum is out of sync with C++ GCCause enum
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]