Checklist crnext
From Linux Checkpoint / Restart Wiki
What is implemented
* open regular files and directories: * ext2, ext3, ext4 * /dev/null, zero, random, urandom * epoll fd's * event fd's * timer fd's * signal fd's * unix sockets * ipv4 sockets (except time-wait sockets) * SYSV IPC (message queues, semaphores, and shared memory) * except semaphore undo * Unix98 ptys * futexes * process ids * credentials (userid, group, and POSIX capabilities) * Smack LSM labels * pipes * FIFOs * signals * multiple processes, threads * nested namespaces of: * user * IPC * UTS (hostname) * IPC * (nested pid namespaces only require userspace support)
What is NOT implemented (please make each a link to a page describing issues, a design for solving, how we will detect it to refuse checkpoint if we will not support it, and "how ugly it will make the kernel". The table summarizes these details. )
Not Implemented | Refuses to Checkpoint (Yes/No) |
Anticipated Solution Impact |
---|---|---|
mounts | Yes | |
network devices, time-wait inet sockets | Yes | |
unlinked files and directories | Yes | |
inotify | Yes | Probably gross due to watches attaching to inodes |
FUSE | Yes | Clean but requires per-FUSE-filesystem support |
network and distributed filesystems | Yes | |
SYSV IPC: semaphore undo | No | Small, clean |
netlink | Yes | |
new, expiremental, and/or infrastructure-oriented network protocols |
Yes | |
file locks | Yes | |
file leases | Yes | |
fowner+sigio | Yes | |
ptraced tasks | Yes | |
time namespace | N/A | |
restart of 64-bit task from 32-bit task and vice versa |
Yes | |
inet6 sockets (previously supported, just need to add it back in. minor) |
Yes | |
Hardware devices other than those mentioned above. Includes mmap, /dev/foo, Infiniband devices |
Yes (mostly) | |
System-specific files in sysfs (things like UUID files) |
Yes |