RFR (S) 8251336: Shenandoah: assert "only get here when SATB active" after JDK-8244997

David Holmes david.holmes at oracle.com
Tue Aug 11 22:01:17 UTC 2020


On 12/08/2020 12:42 am, Roman Kennke wrote:
> On Tue, 2020-08-11 at 23:35 +1000, David Holmes wrote:
>> Hi Coleen,
>>
>> On 11/08/2020 9:40 pm, Coleen Phillimore wrote:
>>> Summary: Release OopStorage oops outside a safepoint.
>>>
>>> Tested with tier1-6.
>>>
>>> open webrev at
>>> http://cr.openjdk.java.net/~coleenp/2020/8251336.01/webrev
>>> bug link https://bugs.openjdk.java.net/browse/JDK-8251336
>>>
>>> Thank you to Zhengyu for alerting me about this issue.
>>
>> Yeah ... I was focusing on the locking aspect and completely
>> overlooked
>> the fact that section of code is within the scope of the TBIVM. Not
>> that
>> it would have immediately rung any alarm bells.
>>
>> Do we have usage rules about manipulating OopStorage at a safepoint?
>> If
>> some GC's can't cope with it then there should be some detection of
>> that
>> in the OopStorage APIs.
> 
> In general, non-GC threads should not mess with GC roots (e.g.
> OopStorage) during safepoints. I don't think that this plays well with
> any GC. Not sure if it can be automatically detected, it sure would be
> nice if that would fire an assert or so.

I will file a RFE for that.

David
-----

> Roman
> 
> 


More information about the hotspot-dev mailing list