RFR: 8364973: Add JVMTI stress testing mode [v3]
Magnus Ihse Bursie
ihse at openjdk.org
Mon Aug 11 09:30:16 UTC 2025
On Sun, 10 Aug 2025 06:09:00 GMT, Leonid Mesnik <lmesnik at openjdk.org> wrote:
>> The fix added JVMTI stress testing mode.
>>
>> This mode enables stress agent that could be executed with jtreg test and help to ensure that jvmti functionality doesn't break the other JVM/JDK functionality.
>>
>> I filed few issues and more are coming. I want to push the agent so it is possible to provide reproduces for problems uncovered by this agent.
>>
>> The agent has 2 modes now:
>> - regular that is compatible with most of tests including other jvmti, jdi and jdb tests
>> - debugger, that additionally test some function requiring solo capabilities and not compatible with debugger and some jvmti tests
>>
>> The tests incompatible wiht agent (IR, CDS) and some individual tests from tier1 are excluded. There are not plans to support stable execution of all tests with agent right now. However it provokes some crashes worth to be used for exploratory testing.
>> Note, that flagless tests are excluded automatically and not executed in this mode.
>
> Leonid Mesnik has updated the pull request incrementally with one additional commit since the last revision:
>
> fixed makefiles
make/RunTests.gmk line 882:
> 880: ifneq ($$(JTREG_JVMTI_STRESS_AGENT), )
> 881: AGENT := $$(LIBRARY_PREFIX)JvmtiStressAgent$$(SHARED_LIBRARY_SUFFIX)=$$(JTREG_JVMTI_STRESS_AGENT)
> 882: $1_JTREG_BASIC_OPTIONS += -javaoption:'-agentpath:${TEST_IMAGE_DIR}/hotspot/jtreg/native/$${AGENT}'
Suggestion:
$1_JTREG_BASIC_OPTIONS += -javaoption:'-agentpath:$(TEST_IMAGE_DIR)/hotspot/jtreg/native/$$(AGENT)'
make/RunTests.gmk line 885:
> 883: $1_JTREG_BASIC_OPTIONS += $$(addprefix $$(JTREG_PROBLEM_LIST_PREFIX), $$(wildcard \
> 884: $$(addprefix $$($1_TEST_ROOT)/, ProblemList-jvmti-stress-agent.txt) \
> 885: ))
Suggestion:
$$(addprefix $$($1_TEST_ROOT)/, ProblemList-jvmti-stress-agent.txt) \
))
Also, the comment on line length applies here.
test/lib/jdk/test/lib/jvmti/libJvmtiStressAgent.cpp line 38:
> 36: * Test supports 2 modes:
> 37: * - standard, where the agent doesn't require debugging capabilities
> 38: * - debug, where the agent additionally test debug-related functionality
Suggestion:
* - debug, where the agent additionally test debug-related functionality
test/lib/jdk/test/lib/jvmti/libJvmtiStressAgent.cpp line 40:
> 38: * - debug, where the agent additionally test debug-related functionality
> 39: * The debug mode is incompatible with debugger tests and debug jvmti tests.
> 40: * The standard mode should be compatible with all tests except probelmlisted.
Suggestion:
* The standard mode should be compatible with all tests except problemlisted.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/26360#discussion_r2266130714
PR Review Comment: https://git.openjdk.org/jdk/pull/26360#discussion_r2266133869
PR Review Comment: https://git.openjdk.org/jdk/pull/26360#discussion_r2266137865
PR Review Comment: https://git.openjdk.org/jdk/pull/26360#discussion_r2266138425
More information about the serviceability-dev
mailing list