Skip to content

CRIU: Remove CRIU debug interpreter #19835

Closed
@tajila

Description

@tajila

The CRIU interpreter was added here, #17245, to do

  1. Enable support for hooks (needed for xtrace and xdump)
  2. Allow one to avoid using the debug interpreter at starup

Now that we have the ability to transition to the debug interpreter on restore, we no longer need the criu interpreter. Instead we can start with the standard interpreter, and transition to the debug interpreter if needed.

Steps

  1. Add a new field in J9CRIUCheckpointState called debugInterpreterRequested
  2. The hooks for criuRestoreInitializeTrace and criuRestoreInitializeDump set the debugInterpreterRequested to true
  3. In checkTransitionToDebugInterpreter check if debugInterpreterRequested is set then attempt to transition to the debug interpreter.
  4. Add a new restore hook (similar to the ones above) and take the code in checkTransitionToDebugInterpreter that looks for the VMOPT_XXDEBUGINTERPRETER and move it to that function. It should set the debugInterpreterRequested if debug interpreter is there.
  5. Move checkTransitionToDebugInterpreter to after runInternalJVMRestoreHooks

Metadata

Metadata

Assignees

Labels

comp:vmcriuUsed to track CRIU snapshot related work

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions