[crac] RFR: 8376959: [CRaC] Turn simengine into shared library [v2]
Radim Vansa
rvansa at openjdk.org
Tue Feb 3 14:48:27 UTC 2026
On Tue, 3 Feb 2026 11:58:51 GMT, Timofei Pushkin <tpushkin at openjdk.org> wrote:
>> Radim Vansa has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Implement static build & other platforms
>
> src/hotspot/share/runtime/crac_engine.cpp line 69:
>
>> 67: }
>> 68:
>> 69: static bool find_engine(const char *dll_dir, char *path, size_t path_size, bool *is_library, char *resolved_engine, size_t resolved_engine_size) {
>
> This is becoming so complex... With the planned removal of `crexec` it should become simpler but I wonder if we can also simplify it also by deprecating the ability to use both `nameengine` and `name`: allow only `name` that must map to `nameengine.so`? Can be done in a separate PR.
Using only `name` means in practice `-XX:CRaCEngine=criu` (now it's `criuengine`), and `-XX:CRaCEngine=sim`. The latter does not sound too descriptive to me :-/
I agree with having `libsimengine.so` in `lib/` - just `libsim.so` would be also a bit confusing, and there's similar name `libsimdsort.so`.
What about deprecating the short names, keeping `-XX:CRaCEngine=criuengine` (current default) and `-XX:CRaCEngine=simengine`? Preferring this long form also works better if there's 3rd engine that does not use the `engine` suffix.
-------------
PR Review Comment: https://git.openjdk.org/crac/pull/289#discussion_r2759454118
More information about the crac-dev
mailing list