JDK-8230459: Test failed to resume JVMCI CompilerThread
Kim Barrett
kim.barrett at oracle.com
Mon Oct 28 19:45:19 UTC 2019
> On Oct 28, 2019, at 12:04 AM, David Holmes <david.holmes at oracle.com> wrote:
>
> On 28/10/2019 1:42 pm, Kim Barrett wrote:
>> I think either that comment about an old thread is wrong (and the NULL
>> assertion I suggested is okay), or I think the whole mechanism here
>> has problems. Or at least I was unable to figure out how it could work...
>
> I'm not following sorry. You can't assert NULL unless it's actually set to NULL which it presently isn't. But it could be set NULL as Martin suggested:
>
> "We may want to improve that further by setting the handle pointer to NULL and asserting that it is NULL before adding the new one."
>
> and which I also supported. But that aside once the delete_global has been called that JNIHandle no longer references the j.l.Thread that it did, at which point it is only reachable via the threadObj() of the CompilerThread.
I spent some more time figuring out how it works, and agree I was confused.
More information about the hotspot-compiler-dev
mailing list