[crac] RFR: 8378446: [CRaC] Replace libcrexec with libcriuengine [v2]

Radim Vansa rvansa at openjdk.org
Tue Feb 24 13:33:46 UTC 2026


> After [JDK-8376959](https://bugs.openjdk.org/browse/JDK-8376959) the only use of libcrexec is running CRIU; in fact the code already is quite CRIU-dependent. The point of this task is to stop pretending that libcrexec is generic, and move code from criuengine binary (now removed) into libcriuengine implementing the C/R API.
> 
> This removes smuggling of some parameters through environment variables and execution of the criuengine. We still require anexecuteable (now called `criuhelper`) to become parent of the restored process, but this has significantly simplified implementation.
> 
> Replacement of communication between the restoring and restored process through signals and temporary files is out of scope of this change.

Radim Vansa has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains three commits:

 - Merge remote-tracking branch 'origin/crac' into crexec_to_criuengine
 - Fix Windows build
 - 8378446: [CRaC] Replace libcrexec with libcriuengine

-------------

Changes: https://git.openjdk.org/crac/pull/297/files
  Webrev: https://webrevs.openjdk.org/?repo=crac&pr=297&range=01
  Stats: 2620 lines in 20 files changed: 1034 ins; 1527 del; 59 mod
  Patch: https://git.openjdk.org/crac/pull/297.diff
  Fetch: git fetch https://git.openjdk.org/crac.git pull/297/head:pull/297

PR: https://git.openjdk.org/crac/pull/297


More information about the crac-dev mailing list