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

-agentpath: libraries require no path/name decoration #20202

Merged
merged 1 commit into from
Oct 1, 2024

Conversation

JasonFengJ9
Copy link
Member

@JasonFengJ9 JasonFengJ9 commented Sep 20, 2024

-agentpath: libraries require no path/name decoration

The agent library specified via -agentpath: has an absolute path/name, it should not be decorated again during the agent library loading;
For -agentpath: option in the restore option file, compare the actual platform-dependent library name.

Related

closes #20194

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

@JasonFengJ9 JasonFengJ9 added comp:vm criu Used to track CRIU snapshot related work labels Sep 20, 2024
@gacholio
Copy link
Contributor

I still think this is the wrong way to do this. Check for JVMTI capabilities, not a specific library name.

@JasonFengJ9
Copy link
Member Author

I still think this is the wrong way to do this. Check for JVMTI capabilities, not a specific library name.

This is a CRIU-specific use case, there is no JDWP debug agent specified pre-checkpoint, post-restore the user would like to enable debugging via a command line option in the restore option file such as

  • -Xrunjdwp:transport=dt_socket,server=y,suspend=y
  • -agentlib:jdwp=transport=dt_socket,server=y,suspend=y
  • -agentpath:/path/to/libjdwp.so=transport=dt_socket,server=y,suspend=n

These agent platform dependent/independent names are the only input available at CRIU restore stage.

@JasonFengJ9
Copy link
Member Author

JasonFengJ9 commented Sep 25, 2024

For another CRIU case, the JDWP agent is specified pre-checkpoint which will enable debug support post-restore, the library name-checking GAC referred could be replaced with JVMTI capabilities which is to be addressed w/ #20204

runtime/jvmti/jvmtiStartup.c Outdated Show resolved Hide resolved
runtime/jvmti/jvmtiStartup.c Outdated Show resolved Hide resolved
runtime/jvmti/jvmtiStartup.c Outdated Show resolved Hide resolved
runtime/jvmti/jvmtiStartup.c Outdated Show resolved Hide resolved
runtime/jvmti/jvmtiStartup.c Outdated Show resolved Hide resolved
runtime/jvmti/jvmtiStartup.c Outdated Show resolved Hide resolved
The agent library specified via -agentpath: has an absolute path/name,
it should not be decorated again during the agent library loading;
For -agentpath: option in the restore option file, compare the actual
platform-dependent library name.

Signed-off-by: Jason Feng <[email protected]>
@keithc-ca
Copy link
Contributor

Jenkins test sanity xlinux jdk21

@keithc-ca
Copy link
Contributor

I believe the sanity.functional failures are due to a mismatch between the JDK and the tests (since #19872 was merged).

@tajila tajila merged commit b279a6d into eclipse-openj9:master Oct 1, 2024
4 of 6 checks passed
@JasonFengJ9 JasonFengJ9 deleted the agentpath branch October 1, 2024 13:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp:vm criu Used to track CRIU snapshot related work
Projects
None yet
Development

Successfully merging this pull request may close these issues.

80 FVT_Serviceability.diagnostics.xdump_thrstart.Mode101.1 Initialization error for library j9jvmti29(-3)
4 participants