[CRIU] [PATCH cr 00/12] Use the common scheme for restoring pipes (v2)

Andrey Vagin avagin at openvz.org
Thu Apr 5 12:02:04 EDT 2012


What is a pipe? It's a set of file structs, which connect to
pipe's tails.

Information about pipes are saved in one files.
pipe_entry describes a pipe's file struct.
A pipe has not own properties, so it has not own object.
All pipe_entry of the same pipes connet in pipe_list. When all
pipe_entry-s and fdinfo-s collected, we enumirate them one
more time to choose who will create pipes.
A pipe is restored by the process with minimal pid for
the descriptor with minimal number. Other recipients
get it via unix sockets even if they are in the same process.
It may be optimized in the future.

All pipe data are aligned in imege file due to splice.

A few zdtm test cases are added.

v2: * save pipe data in a separate file
    * fix comments from Pavel Emelyanov


More information about the CRIU mailing list