mirror of
https://github.com/checkpoint-restore/criu.git
synced 2026-07-22 17:49:13 +00:00
A child queues a message to a SO_PASSPIDFD socket, exits and is reaped before the dump, so the skb pid references a dead process. After checkpoint/restore the test verifies the packet survived and that recvmsg yields a pidfd that behaves exactly as it would have before the dump. Only kernels >= 6.17 can mint a pidfd for an already reaped process (see kernel commit "af_unix: enable handing out pidfds for reaped tasks in SCM_PIDFD"); older kernels put a negative error code into the cmsg payload instead. The test probes the kernel's behavior with a throwaway socketpair before the dump and asserts the post-restore behavior matches: on new kernels the restored pidfd must be stale (pidfd_send_signal() fails with ESRCH, fdinfo shows Pid: -1), on old kernels the receiver must get a negative value, as it would have pre-dump. Signed-off-by: Ahmed Elaidy <elaidya225@gmail.com> |
||
|---|---|---|
| .. | ||
| compel | ||
| cuda-checkpoint | ||
| exhaustive | ||
| inhfd | ||
| javaTests | ||
| jenkins | ||
| libfault | ||
| others | ||
| pki | ||
| plugins | ||
| zdtm | ||
| .gitignore | ||
| abrt.sh | ||
| crit-recode.py | ||
| empty-netns-prep.sh | ||
| groups.desc | ||
| inhfd.desc | ||
| Makefile | ||
| pycriu | ||
| umount2.c | ||
| zdtm.desc | ||
| zdtm.py | ||
| zdtm_ct.c | ||
| zdtm_mount_cgroups | ||
| zdtm_umount_cgroups | ||