-
Notifications
You must be signed in to change notification settings - Fork 721
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
Refactor J9JVMTI_HEAP_EVENT_STACK data parsing #18864
Conversation
7030698
to
0dfe314
Compare
0dfe314
to
65f7533
Compare
fe4e1c2
to
f658d36
Compare
#19486 reverted some of the changes in #18180 which properly handle reference chain walking on virtual thread stack. |
@babsingh @LinHu2016 can you please take a look at this |
Consistent formattingThere are places where there is space before and after
Similarly, if we're adding a cast, then the preferred approach is to not have space after the closing bracket
|
How have these changes been tested? Were any personal builds run? If so, which test suites were selected? |
I've include link to personal build, see above #18864 (comment) |
Are any of the failures and unstable builds related to this PR?
Does VThreadStackRefTest.java pass on all platforms? |
f658d36
to
2b0aa8c
Compare
Test failure have been resolved by eclipse-openj9/openj9#18864 Signed-off-by: Jack Lu <Jack.S.Lu@ibm.com>
No
I've only tested on xlinux and amac for JDK 21, but since the test are all testing JVM internals, there shouldn't be any platform related differences. |
LGTM, need to confirm ReferenceChainWalker is not caller during concurrent scavenger(currently it is only used during STW GC, read threadObject via Java API during concurrent scavenger might cause an infinity loop). |
Added new structure to hold JNI and Stack local referrer data. Update JNI locals found via jniLocalReferences table to be marked as Stack root. Signed-off-by: Jack Lu <Jack.S.Lu@ibm.com>
10c72e1
to
2338a3e
Compare
@LinHu2016 added assertions to ensure API only used under exclusive access |
3d88a08
to
711194c
Compare
jenkins test sanity,extended.openjdk zlinux jdk21 |
jenkins test sanity alinux jdk11 |
There are compilation errors on JDK11. vthread code is missing ifdefs.
|
- Cache and fill in virtual thread object for jvmtiFollowReferences calls - Add exclusive VM access assertion check to j9gc_ext calls Signed-off-by: Jack Lu <Jack.S.Lu@ibm.com>
711194c
to
3380c62
Compare
Added ifdef to fix JDK11 compile error, the JDK 21 PR build also failed due to jenkins flow error, @babsingh can you restart the builds please |
jenkins test sanity,extended.openjdk zlinux jdk21 |
jenkins test sanity win,alinux jdk11 |
jenkins test sanity win jdk21 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Test_openjdk21_j9_extended.openjdk
PR build has unrelated security/SSL failures.
Test failure have been resolved by eclipse-openj9/openj9#18864 Signed-off-by: Jack Lu <Jack.S.Lu@ibm.com>
Added new structure to hold JNI and Stack local referrer data. Update JNI locals found via jniLocalReferences table to be marked as Stack root.
Closes: #18416
Signed-off-by: Jack Lu Jack.S.Lu@ibm.com