crac icon indicating copy to clipboard operation
crac copied to clipboard

8353243: [CRaC] Show all options in engine help

Open TimPushkin opened this issue 7 months ago • 5 comments

C/R engines are now advised to list all options in configuration_doc. If JVM does not let users to control some options it states that in the engine help message.

crexec now documents internal options, such as image_location and exec_location, in its doc message.

This is how crexec's help looks with this change:

$ java -XX:CRaCEngineOptions=help
crexec - pseudo-CRaC-engine used to relay data from JVM to a "real" engine implemented as an executable (instead of a library). The engine executable is expected to have CRaC-CRIU-like CLI. Support of the configuration options also depends on the engine executable.

Configuration options:
* image_location=<path> (no default) - path to a directory with checkpoint/restore files.
* exec_location=<path> (no default) - path to the engine executable.
* keep_running=<true/false> (default: false) - keep the process running after the checkpoint or kill it.
* direct_map=<true/false> (default: true) - on restore, map process data directly from saved files. This may speedup the restore but the resulting process will not be the same as before the checkpoint.
* args=<string> (default: "") - free space-separated arguments passed directly to the engine executable, e.g. "--arg1 --arg2 --arg3".

Configuration options controlled by the JVM: image_location, exec_location

Progress

  • [x] Change must not contain extraneous whitespace

Issue

  • JDK-8353243: [CRaC] Show all options in engine help (Enhancement - P3)

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/crac.git pull/220/head:pull/220
$ git checkout pull/220

Update a local copy of the PR:
$ git checkout pull/220
$ git pull https://git.openjdk.org/crac.git pull/220/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 220

View PR using the GUI difftool:
$ git pr show -t 220

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/crac/pull/220.diff

Using Webrev

Link to Webrev Comment

TimPushkin avatar Mar 31 '25 08:03 TimPushkin