RFR(XS) 8252593: [TESTBUG] serviceability/jvmti/GetLocalVariable/GetLocalWithoutSuspendTest.java failed with JVMTI_ERROR_INVALID_SLOT

Reingruber, Richard richard.reingruber at sap.com
Wed Sep 2 14:37:04 UTC 2020


Hi,

please help review this fix for  a TESTBUG in
serviceability/jvmti/GetLocalVariable/GetLocalWithoutSuspendTest.java

Webrev: http://cr.openjdk.java.net/~rrich/webrevs/8252593/webrev.0/
Bug:    https://bugs.openjdk.java.net/browse/JDK-8252593

With this change the JVMTI test agent silently accepts JVMTI_ERROR_INVALID_SLOT
as result of a JVMTI GetLocalObject() call.

The target frame of the call varies because the target thread is running. In
rare cases it might not be one of the many frames of
GetLocalWithoutSuspendTest.recursiveMethod() as intended but the frame of a static
method without parameters which the target thread might call after returning from all
the recursive calls. This would result in JVMTI_ERROR_INVALID_SLOT.

Anyway JVMTI_ERROR_INVALID_SLOT has to be expected and should be silently
ignored.

Furthermore I have corrected the type of the parameter waitCycles of
Java_GetLocalWithoutSuspendTest_notifyAgentToGetLocal() to be jint. Now it
matches the declaration in GetLocalWithoutSuspendTest.java.

Thanks, Richard.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/serviceability-dev/attachments/20200902/5cf28bfa/attachment.htm>


More information about the serviceability-dev mailing list