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

(0.48) CRIU supports Java debugger via the restore option file #20191

Merged

Conversation

JasonFengJ9
Copy link
Member

CRIU supports Java debugger via the restore option file

Debugger support related code are guarded with isDebugOnRestoreEnabled();
For -Xint mode, do not disable JVMTI capabilities required for JDWP debugger before checkpoint, add a capability can_access_local_variables;
For JIT mode, add JVMTI capabilities required for JDWP debugger before checkpoint;
Hooked J9HOOK_VM_PREPARING_FOR_RESTORE event to determine if a JDWP agent is specified in the restore option file, also hooked J9HOOK_VM_CRIU_RESTORE to load the agent libraries;
Refactored the agent library creation from J9VMInitArgs;
Added some trace points.

Cherry-pick

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

Debugger support related code are guarded with
isDebugOnRestoreEnabled();
For -Xint mode, do not disable JVMTI capabilities required for JDWP
debugger before checkpoint, add a capability can_access_local_variables;
For JIT mode, add JVMTI capabilities required for JDWP debugger before
checkpoint;
Hooked J9HOOK_VM_PREPARING_FOR_RESTORE event to determine if a JDWP
agent is specified in the restore option file, also hooked
J9HOOK_VM_CRIU_RESTORE to load the agent libraries;
Support -agentlib/-agentpath and -Xrunjdwp;
Refactored the agent library creation from J9VMInitArgs;
Added some trace points;
Disable criu_jitPostRestore.xml failure conditions until the JIT PR is
merged.

Signed-off-by: Jason Feng <[email protected]>
@JasonFengJ9 JasonFengJ9 added comp:vm criu Used to track CRIU snapshot related work labels Sep 18, 2024
@JasonFengJ9 JasonFengJ9 marked this pull request as draft September 19, 2024 12:13
@JasonFengJ9
Copy link
Member Author

@JasonFengJ9
Copy link
Member Author

#20194 has been resolved via #20202

@tajila this is ready for 0.48. Irwin's #20219 is based on it.

The following two PRs will be backported to 0.48 afterward:

@tajila
Copy link
Contributor

tajila commented Oct 1, 2024

Ill merge after tonights builds

@JasonFengJ9
Copy link
Member Author

It seems last night's builds have no failure related to

and it did resolve the failures reported in #20194.

@tajila tajila merged commit bf4fdbc into eclipse-openj9:v0.48.0-release Oct 2, 2024
2 checks passed
@JasonFengJ9 JasonFengJ9 deleted the jdwpoptionfile-v0.48 branch October 2, 2024 13:29
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.

2 participants