RFR: 8062036: ConcurrentMarkThread::slt may be invoked before ConcurrentMarkThread::makeSurrogateLockerThread causing intermittent crashes

Bengt Rutisson bengt.rutisson at oracle.com
Wed Nov 5 09:41:24 UTC 2014


Hi Kim,

Latest webrev (8062036/webrev01/) looks good to me.

Bengt

On 2014-11-04 22:18, Kim Barrett wrote:
> On Nov 3, 2014, at 4:31 PM, Jon Masamitsu <jon.masamitsu at oracle.com> wrote:
>> Some suggestions.
>>
>> http://cr.openjdk.java.net/~kbarrett/8062036/webrev/src/share/vm/gc_implementation/g1/vm_operations_g1.cpp.frames.html
>>
>>> 216   if (SurrogateLockerThread* slt = ConcurrentMarkThread::slt()) {
>>> 217     slt->manipulatePLL(SurrogateLockerThread::acquirePLL);
>>> 218   } else {
>>> 219     SurrogateLockerThread::report_missing_slt();
>>> 220   }
>> I have a preference for
>>
>> SurrogateLockerThread* slt = ConcurrentMarkThread::slt();
>> if (slt != NULL) {
>>   slt->manipulatePLL(SurrogateLockerThread::acquirePLL);
>> } else {
>>   SurrogateLockerThread::report_missing_slt();
>> }
>>
> Done
>
>> http://cr.openjdk.java.net/~kbarrett/8062036/webrev/src/share/vm/gc_implementation/shared/concurrentGCThread.hpp.frames.html
>>
>> 96   // Terminate VM with error message that SLT needed but not yet created.
>>
>> I think it would read better as
>>
>> "SLT needed but not yet created." => "SLT is needed but has not yet been created."
> Done
>
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8062036
>
> Updated webrev:
> http://cr.openjdk.java.net/~kbarrett/8062036/webrev01/
>
> Incremental webrev:
> http://cr.openjdk.java.net/~kbarrett/8062036/webrev01-inc/
>



More information about the hotspot-gc-dev mailing list