Problem
There is currently no CRIU notification hook that satisfies both of the following constraints simultaneously:
- The container mount tree is fully restored (mounts are at their final paths, not staged under
/tmp/.criu.mntns.*/mnt-*)
pivot_root has not yet been called
This gap makes it impossible to implement correct prestart/createRuntime OCI hook integration under CRIU restore
existing notifications
None of the existing notifications satisfy both constraints:
| Notification |
Pre-pivot_root? |
Mount tree at final paths? |
Notes |
setup-namespaces |
✅ |
❌ |
Mount tree not yet restored at all |
post-setup-namespaces |
✅ |
❌ |
Under mount-v2 engine, mounts are still staged under /tmp/.criu.mntns.*/mnt-* |
post-restore |
❌ |
✅ |
pivot_root has already happened |
Proposed Solution
Expose a new restore-side notification, e.g. post-mounts or pre-pivot fired after the mount tree is fully restored to its final paths but before the pivot_root call.
Context
This was surfaced while implementing CRIU checkpoint/restore support in a runc issue
Problem
There is currently no CRIU notification hook that satisfies both of the following constraints simultaneously:
/tmp/.criu.mntns.*/mnt-*)pivot_roothas not yet been calledThis gap makes it impossible to implement correct
prestart/createRuntimeOCI hook integration under CRIU restoreexisting notifications
None of the existing notifications satisfy both constraints:
pivot_root?setup-namespacespost-setup-namespacesmount-v2engine, mounts are still staged under/tmp/.criu.mntns.*/mnt-*post-restorepivot_roothas already happenedProposed Solution
Expose a new restore-side notification, e.g.
post-mountsorpre-pivotfired after the mount tree is fully restored to its final paths but before thepivot_rootcall.Context
This was surfaced while implementing CRIU checkpoint/restore support in a runc issue