[crac] RFR: 8353243: [CRaC] Show all options in engine help
Radim Vansa
rvansa at openjdk.org
Wed Apr 2 14:03:26 UTC 2025
On Mon, 31 Mar 2025 08:58:32 GMT, Timofei Pushkin <tpushkin at openjdk.org> wrote:
> 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
src/hotspot/share/runtime/crac_engine.cpp line 415:
> 413: }
> 414:
> 415: if (strcmp(id, "crexec") == 0) {
I don't think you need the `crexec` check here. I would also drop the logging parts, unlikely to be useful in the practice.
-------------
PR Review Comment: https://git.openjdk.org/crac/pull/220#discussion_r2024895757
More information about the crac-dev
mailing list