criu/contrib/dependencies
Radostin Stoyanov 47f14e9469 crit: Convert memory page compression offline
CRIT can edit image metadata but cannot convert the matching page
payloads as one consistent image set. Changing either side alone can
leave pagemap, inventory, and payload data incompatible.

Add compress and decompress commands for checkpoint directories. Match
CRIU's block encoding, raw threshold, alignment, image version, parent
compatibility, and validation rules. Keep hugetlb and external-plugin
ranges raw because CRIU cannot premap them generically, and add the
Python LZ4 binding to supported dependencies.

Stage every output before replacing any image. Preserve ownership,
permissions, timestamps, xattrs, ACLs, and security metadata; create
exclusive hard-link backups; synchronize directory changes; and defer
terminating signals until the transaction has a definite result. Roll
back the complete image set after a failure and retain the recoverable
source if rollback or cleanup also fails.

Reject symlinks, non-regular images, unsupported versions, inconsistent
compression metadata, unknown modes, and truncated payloads. Recheck
source identities before replacement so a changed pathname is not
overwritten. Cover page and region images, parent chains, exceptional
mappings, metadata preservation, signals, races, and rollback failures.

Assisted-by: Codex:GPT-5
Assisted-by: Claude:claude-fable-5
Signed-off-by: Radostin Stoyanov <rstoyanov@fedoraproject.org>
2026-07-14 10:17:01 +01:00
..
apk-packages.sh crit: Convert memory page compression offline 2026-07-14 10:17:01 +01:00
apt-cross-packages.sh make: Add optional LZ4 support 2026-07-14 10:17:01 +01:00
apt-packages.sh crit: Convert memory page compression offline 2026-07-14 10:17:01 +01:00
dnf-packages.sh crit: Convert memory page compression offline 2026-07-14 10:17:01 +01:00
pacman-packages.sh crit: Convert memory page compression offline 2026-07-14 10:17:01 +01:00