RFR: 8311177: Switching to interpreter only mode in carrier thread can lead to crashes [v3]

Serguei Spitsyn sspitsyn at openjdk.org
Mon Jun 3 19:01:36 UTC 2024


On Sat, 1 Jun 2024 00:22:45 GMT, Alex Menkov <amenkov at openjdk.org> wrote:

>> Serguei Spitsyn has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   review: refactored def and use of process_pending_interp_only()
>
> test/hotspot/jtreg/serviceability/jvmti/vthread/CarrierThreadEventNotification/libCarrierThreadEventNotification.cpp line 40:
> 
>> 38: 
>> 39: static const char* CTHREAD_NAME_START = "ForkJoinPool";
>> 40: static const size_t CTHREAD_NAME_START_LEN = (int)strlen("ForkJoinPool");
> 
> `(int)` cast is not needed

Thanks, fixed now.

> test/hotspot/jtreg/serviceability/jvmti/vthread/CarrierThreadEventNotification/libCarrierThreadEventNotification.cpp line 58:
> 
>> 56:       cthreads[ct_cnt++] = jni->NewGlobalRef(thread);
>> 57:     }
>> 58:     deallocate(jvmti, jni, (void*)tname);
> 
> cast to `void*` is not needed

Why do you think, the cast is not needed?

This is the `deallocate()` function in the `jvmti_common.hpp`:

static void
deallocate(jvmtiEnv *jvmti, JNIEnv* jni, void* ptr) {
  jvmtiError err = jvmti->Deallocate((unsigned char*)ptr);
  check_jvmti_status(jni, err, "deallocate: error in JVMTI Deallocate call");
}

> test/hotspot/jtreg/serviceability/jvmti/vthread/CarrierThreadEventNotification/libCarrierThreadEventNotification.cpp line 96:
> 
>> 94:     }
>> 95:     jvmtiError err = jvmti->Deallocate((unsigned char*)carrier_threads);
>> 96:     check_jvmti_status(jni, err, "deallocate: error in JVMTI Deallocate call");
> 
> replace with `deallocate(jvmti, jni, carrier_threads);` ?

Thanks, fixed now.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/19438#discussion_r1624909747
PR Review Comment: https://git.openjdk.org/jdk/pull/19438#discussion_r1624911862
PR Review Comment: https://git.openjdk.org/jdk/pull/19438#discussion_r1624914083


More information about the hotspot-dev mailing list