RFR: 8191333: Zero variant broken after 8189941
Robbin Ehn
robbin.ehn at oracle.com
Thu Nov 16 07:46:32 UTC 2017
Hi
On 2017-11-15 19:44, John Paul Adrian Glaubitz wrote:
> On 11/15/2017 05:48 PM, coleen.phillimore at oracle.com wrote:
>>> What about the handles?
>>
>> Honestly, after looking at it, I have no idea. It seems like something you should remove and see if that works. The comment says that there should be no
>> active handles. Maybe have a NoHandleMark unconditionally? then SafepointMechanism::block_if_requested(THREAD) so that the comment is actually an assertion.
>> Sorry for too quick review.
>
> I just tested that. This builds fine. Whether it's the way to go, I'm
> not sure. Maybe Robbin can make a statement regarding this.
Depending on how much testing you have time for, if little time keep Handle, e.g something like:
101 #define SAFEPOINT \
103 { \
104 /* zap freed handles rather than GC'ing them */ \
105 HandleMarkCleaner __hmc(THREAD); \
106 } \
107 CALL_VM(SafepointMechanism::block_if_requested(THREAD), handle_exception);
If this is the only places that zero does safepoints poll, thread-local handshake should actually work with above.
I can test it if/when I get time.
>
> The freshly JVM is run during the build if I remember correctly, so I
> assume it works with this particular change.
If you build the image, yes.
/Robbin
>
> Adrian
>
More information about the hotspot-dev
mailing list