RFR 8251118: BiasedLocking::preserve_marks should not have a HandleMark

Patricio Chilano patricio.chilano.mateo at oracle.com
Tue Aug 11 20:27:46 UTC 2020


Hi Dan,

Thanks for looking at this.

On 8/11/20 4:53 PM, Daniel D. Daugherty wrote:
> On 8/11/20 2:11 PM, Patricio Chilano wrote:
>> Hi all,
>>
>> Please review the following small fix which involves removing the 
>> added HandleMark in BiasedLocking::preserve_marks():
>>
>> Bug: https://bugs.openjdk.java.net/browse/JDK-8251118
>> Webrev: http://cr.openjdk.java.net/~pchilanomate/8251118/v1/webrev/
>
> src/hotspot/share/runtime/biasedLocking.cpp
>     No comments.
>
> As mentioned by Harold, adding a new test case to:
>
>     test/hotspot/jtreg/runtime/7158988/FieldMonitor.java
>
> that enables '-XX:+UseBiasedLocking' is a good idea.
I suggested adding it to test TestFullGCALot.java instead because it 
fails much more consistently.

> Also, Coleen added this note to your bug report:
>
>> Also in the patch for JDK-8249192 
>> <https://bugs.openjdk.java.net/browse/JDK-8249192>, vframe.hpp 
>> shouldn't include
>> handles.inline.hpp (only cpp and inline.hpp files can include
>> inline.hpp). It doesn't look like it needs handles.inline.hpp,
>> only handles.hpp. 
>
> Were you planning on resolving that left over in this bug?
Not really. I can change it here if you are okay though.

Patricio
> Dan
>
>
>>
>> I've inspected the callers of BiasedLocking::preserve_marks() and 
>> they all have an assert that the current thread is the VMThread. 
>> Since the VMThread creates a HandleMark object before executing a VM 
>> operation the extra HandleMark added in 8249192 is not needed.
>> I've run tiers1-3 in mach5 with -XX:+UseBiasedLocking and without the 
>> patch I get several crashes in BiasedLocking::restore_marks(). With 
>> the patch tests completed successfully.
>>
>> Thanks,
>> Patricio
>>
>



More information about the hotspot-runtime-dev mailing list