• Cyrill Gorcunov's avatar
    fifo: Add checkpoint restore for fifos v4 · ea1ce8e4
    Cyrill Gorcunov authored
    Checkpoint and restore of fifo is similar to
    pipes c/r except the pipe end-points are named
    file.
    
    Because the fifo has a name we use regular files
    facility for fifo path c/r.
    
    Still there is a trick used to "open" fifo:
    the opening procedure migh sleep if a fifo's peer
    is not yet opened, so before doing a real open
    we yield a fake open procedure (with O_RDWR flag)
    which prevents us from sleeping even if peer
    is not yet ready. Also we need writable fifo
    end to restore data queued.
    
    v2:
     - add open/priv members to reg_file_info
     - make open_fifo_fd to use open_fe_fd
     - comment on pipe_id
     - make sure the fifo data is not restored twice
    
    v3:
     - drop useless fixme comment and add sane one
    v4:
     - Use restore_data flag to escape data restore duplication
     - Use S_ISREG for file contents copying
    Signed-off-by: 's avatarCyrill Gorcunov <gorcunov@openvz.org>
    Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
    ea1ce8e4
Name
Last commit
Last update
..
atomic.h Loading commit data...
bitops.h Loading commit data...
compiler.h Loading commit data...
crtools.h Loading commit data...
eventfd.h Loading commit data...
eventpoll.h Loading commit data...
fifo.h Loading commit data...
file-ids.h Loading commit data...
files-reg.h Loading commit data...
files.h Loading commit data...
image.h Loading commit data...
inet_diag.h Loading commit data...
inotify.h Loading commit data...
ipc_ns.h Loading commit data...
kcmp-ids.h Loading commit data...
libnetlink.h Loading commit data...
linkage.h Loading commit data...
list.h Loading commit data...
lock.h Loading commit data...
log.h Loading commit data...
memcpy_64.h Loading commit data...
mount.h Loading commit data...
namespaces.h Loading commit data...
netfilter.h Loading commit data...
parasite-syscall.h Loading commit data...
parasite.h Loading commit data...
pipes.h Loading commit data...
proc_parse.h Loading commit data...
processor-flags.h Loading commit data...
pstree.h Loading commit data...
ptrace.h Loading commit data...
rbtree.h Loading commit data...
restorer-log.h Loading commit data...
restorer.h Loading commit data...
shmem.h Loading commit data...
sk-inet.h Loading commit data...
sk-queue.h Loading commit data...
sockets.h Loading commit data...
syscall-types.h Loading commit data...
syscall-x86-64.def Loading commit data...
sysctl.h Loading commit data...
types.h Loading commit data...
unix_diag.h Loading commit data...
util-net.h Loading commit data...
util.h Loading commit data...
uts_ns.h Loading commit data...