RFR: 8062036: ConcurrentMarkThread::slt may be invoked before ConcurrentMarkThread::makeSurrogateLockerThread causing intermittent crashes
Kim Barrett
kim.barrett at oracle.com
Tue Nov 4 21:18:31 UTC 2014
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