On Tue, 22 Sep 2026 09:26:48 GMT, Serguei Spitsyn <[email protected]> wrote:

> The test 
> `serviceability/jvmti/events/FieldModification/fieldmod02/fieldmod02.java` is 
> crashing with the option:
> `-XX:-DoJVMTIVirtualThreadTransitions`.
> The capability `can_support_virtual_threads` must be rejected with the VM 
> option `-XX:-DoJVMTIVirtualThreadTransitions`. The fix is implementing it. It 
> impacts just a couple of code lines.
> 
> Testing:
>  - Run the test 
> `serviceability/jvmti/events/FieldModification/fieldmod02/fieldmod02.java` 
> with the option `-XX:-DoJVMTIVirtualThreadTransitions`. Now, it is failed 
> with rejecting the capability instead of crashing:
> 
> (AddCapabilities) unexpected error: JVMTI_ERROR_NOT_AVAILABLE (98)
> Error occurred during initialization of VM
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

src/hotspot/share/prims/jvmtiManageCapabilities.cpp line 106:

> 104:   jc.can_generate_resource_exhaustion_heap_events = 1;
> 105:   jc.can_generate_resource_exhaustion_threads_events = 1;
> 106:   jc.can_support_virtual_threads = DoJVMTIVirtualThreadTransitions;

Do we still need to have assertions like

    assert(DoJVMTIVirtualThreadTransitions || 
!JvmtiExport::can_support_virtual_threads(), "sanity check");

in a few places?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/33001#discussion_r4101060466

Reply via email to