[crac] RFR: 8353243: [CRaC] Show all options in engine help [v4]
Timofei Pushkin
tpushkin at openjdk.org
Tue Apr 8 10:53:21 UTC 2025
> 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
Timofei Pushkin has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains four commits:
- Make list of VM-controlled options static
- Use comma as a separator when printing controlled options
- Simplify vm_controlled_options
- Show all options in engine help
-------------
Changes: https://git.openjdk.org/crac/pull/220/files
Webrev: https://webrevs.openjdk.org/?repo=crac&pr=220&range=03
Stats: 82 lines in 6 files changed: 61 ins; 8 del; 13 mod
Patch: https://git.openjdk.org/crac/pull/220.diff
Fetch: git fetch https://git.openjdk.org/crac.git pull/220/head:pull/220
PR: https://git.openjdk.org/crac/pull/220
More information about the crac-dev
mailing list