Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JDK19 serviceability_jvmti_j9_0_FAILED check_vthread_consistency_suspended: vthread is expected to be virtual #16751

Closed
JasonFengJ9 opened this issue Feb 21, 2023 · 7 comments

Comments

@JasonFengJ9
Copy link
Member

Failure link

From an internal build(paix817):

openjdk version "19.0.2" 2023-01-17
IBM Semeru Runtime Open Edition 19.0.2+7 (build 19.0.2+7)
Eclipse OpenJ9 VM 19.0.2+7 (build master-042864b42, JRE 19 AIX ppc64-64-Bit Compressed References 20230117_46 (JIT enabled, AOT enabled)
OpenJ9   - 042864b42
OMR      - b86560818
JCL      - edc950934d based on jdk-19.0.2+7)

Rerun in Grinder - Change TARGET to run only the failed test targets.

Optional info

Failure output (captured from console output)

[2023-02-18T19:05:43.974Z] variation: Mode150
[2023-02-18T19:05:44.314Z] JVM_OPTIONS:  -XX:+UseCompressedOops 

[2023-02-18T19:10:55.905Z] TEST: serviceability/jvmti/stress/StackTrace/Suspended/GetStackTraceSuspendedStressTest.java

[2023-02-18T19:10:55.908Z] STDERR:
[2023-02-18T19:10:55.908Z] 
[2023-02-18T19:10:55.908Z] Fatal error: Agent: check_vthread_consistency_suspended: vthread is expected to be virtual

[2023-02-18T19:14:21.765Z] serviceability_jvmti_j9_0_FAILED

This failure occurred across platforms.
x86-64_linux
ppc64le_linux

FYI @babsingh

@babsingh
Copy link
Contributor

@JasonFengJ9 This failure should not block JDK19. So, I will target this issue for JDK20. In the meanwhile, we can disable the test.

The failure is intermittent. There is a slow path in the test case, which isn't always taken. In the slow path, the new JVMTI extension function (GetVirtualThread) returns a platform thread instead of a virtual thread, which causes the fatal error.

babsingh added a commit to babsingh/aqa-tests that referenced this issue Feb 22, 2023
babsingh added a commit to babsingh/aqa-tests that referenced this issue Feb 22, 2023
@babsingh babsingh modified the milestones: Java 19 0.37, Java 20 0.39? Feb 22, 2023
karianna pushed a commit to adoptium/aqa-tests that referenced this issue Feb 23, 2023
babsingh added a commit to babsingh/openj9 that referenced this issue Feb 27, 2023
If no virtual thread is mounted on the targetThread i.e.
carrierThreadObject == threadObject, then return null
for the output virtual thread value.

Virtual thread is not pinned in this function. So, read
threadObject and carrierThreadObject once and store their
values to avoid inconsistency.

Related: eclipse-openj9#16688
Related: eclipse-openj9#16751

Signed-off-by: Babneet Singh <[email protected]>
babsingh added a commit to babsingh/openj9 that referenced this issue Feb 27, 2023
Continuation.execute is renamed to Continuation.enter.

Matching the RI will allow us to run more OpenJDK tests without
tweaking them for our implementation and be better prepared to
support unimplemented/new features in the future.

Related: eclipse-openj9#16688
Related: eclipse-openj9#16751

Signed-off-by: Babneet Singh <[email protected]>
@babsingh
Copy link
Contributor

babsingh commented Mar 8, 2023

Yes, it was fixed with #16786 and #16787. The only remaining step is to re-enable the test. Then, this issue can be closed.

sophia-guo pushed a commit to sophia-guo/openjdk-tests that referenced this issue Mar 10, 2023
sophia-guo pushed a commit to sophia-guo/openjdk-tests that referenced this issue Mar 10, 2023
smlambert added a commit to adoptium/aqa-tests that referenced this issue Mar 10, 2023
* Set up jdk for jck interactive (#4239)

* Set up jdk for jck interactive

Signed-off-by: Sophia Guo <[email protected]>

* Add parameter SETUP_JCK_RUN explicitely

Signed-off-by: Sophia Guo <[email protected]>

---------

Signed-off-by: Sophia Guo <[email protected]>

* [Jtreg/FFI] Disable FFI related test suite in JDK20 (#4318)

The change is to exclude the FFI related test cases
in AttachTest.java captured at
eclipse-openj9/openj9#16656
given the FFI related code in JDK20 has been disabled
for the moment and will be enabled once the code has
been updated against the latest APIs.

Signed-off-by: ChengJin01 <[email protected]>

* Fix if condition for tck interactive setup (#4320)

Signed-off-by: Mesbah Alam <[email protected]>

* [Jtreg/FFI] update the issue no for FFI test suites in JDK20 (#4324)

The change updates the issue no by replacing
#16656 with #16565 as #16656 will be closed
as duplicate of #16565, in which case #16565
serves as the only issue that keeps track of
the excluded FFI test suites in JDK20.

Signed-off-by: ChengJin01 <[email protected]>

* Add OpenJ9 timeout handler to security and rmi extended tests (#4333)

Signed-off-by: Peter Shipton <[email protected]>

* Disable GetStackTraceSuspendedStressTest (#4360)

Related: eclipse-openj9/openj9#16751

Signed-off-by: Babneet Singh <[email protected]>

* Update JDK20 exclude list (#4371)

Re-enable Thread related tests fixed in JDK19

Signed-off-by: Jack Lu <[email protected]>

* Disable ContinuationTest (#4380)

ContinuationTest is being disabled for OpenJ9 since it is specific to
the reference implementation and it does not apply to OpenJ9.

Signed-off-by: Babneet Singh <[email protected]>

* Permanently disable ContinuationTest (#4382)

Refer to #1297 to permanently exclude.

Related: eclipse-openj9/openj9#16792
Related: #1297

Signed-off-by: Babneet Singh <[email protected]>

* Exclude jdk/internal/platform/docker/TestDockerCpuMetrics.java (#4387)

Signed-off-by: Jason Feng <[email protected]>

* AUTO: auto exclude test jdk_svc_sanity plat=ppc64_aix impl=hotspot (#4389)

- related: #4218 (comment)

Signed-off-by: GitHub <[email protected]>
Co-authored-by: smlambert <[email protected]>

---------

Signed-off-by: Sophia Guo <[email protected]>
Signed-off-by: ChengJin01 <[email protected]>
Signed-off-by: Mesbah Alam <[email protected]>
Signed-off-by: Peter Shipton <[email protected]>
Signed-off-by: Babneet Singh <[email protected]>
Signed-off-by: Jack Lu <[email protected]>
Signed-off-by: Jason Feng <[email protected]>
Signed-off-by: GitHub <[email protected]>
Co-authored-by: Cheng Jin <[email protected]>
Co-authored-by: Mesbah Alam <[email protected]>
Co-authored-by: Peter Shipton <[email protected]>
Co-authored-by: Babneet Singh <[email protected]>
Co-authored-by: Jack Lu <[email protected]>
Co-authored-by: Jason Feng <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: smlambert <[email protected]>
@JasonFengJ9
Copy link
Member Author

Re-enabled JDK19/JDK29 serviceability/jvmti/stress/StackTrace/Suspended/GetStackTraceSuspendedStressTest.java.
Closing as per #16751 (comment)

@pshipton
Copy link
Member

Don't forget to remove the "test excluded" label.

@pshipton
Copy link
Member

The fix isn't in the 0.37 branch, so we can expect the jdk19 testing on 0.37 to fail.

@JasonFengJ9
Copy link
Member Author

The fix isn't in the 0.37 branch, so we can expect the jdk19 testing on 0.37 to fail.

Do we want this fix in 0.37? If not, I will just ignore the failure in JDK19 m2 and later builds.

@babsingh
Copy link
Contributor

Do we want this fix in 0.37?

No. See #16751 (comment). GetVirtualThread is a JVMTI extension function. It isn't required for JDK19.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants