RFR: 8339725: Concurrent GC crashed due to GetMethodDeclaringClass [v5]
    Liang Mao 
    lmao at openjdk.org
       
    Wed Sep 11 02:41:06 UTC 2024
    
    
  
On Wed, 11 Sep 2024 02:23:10 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> Liang Mao has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Exclude libagent8339725.cpp compiling for windows
>
> src/hotspot/share/prims/jvmtiEnv.cpp line 3216:
> 
>> 3214:   NULL_CHECK(method, JVMTI_ERROR_INVALID_METHODID);
>> 3215:   Klass* k = method->method_holder();
>> 3216:   Handle holder(Thread::current(), k->klass_holder()); // keep the klass alive
> 
> How do we know `k` is not already unloaded?
We don't know `k` would be unloaded or not in the middle of GC concurrent marking. So I think we need to keep it alive just like accessing weak reference.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/20907#discussion_r1753034077
    
    
More information about the hotspot-dev
mailing list