criu/include
Kinsbursky Stanislav 8ce9e94705 parasite: support sockets queues
This patch adds sockets queue dump functionality. Key ideas
1) sockets info is passed as plain array in parasite args.
2) new socket option SO_PEEK_OFF with MSG_PEEK is used to read the get the
   queue's packets.
3) Buffer for packet will be allocated for each socket separately and with
   size of socket sending buffer. For stream sockets is means, that it's queue
   will be dumped in chunks of this size.

Note: loop around sys_msgrcv() is required for DGRAM sockets - sys_msgrcv()
with MSG_PEEK will return only one packet.

Based on xemul@ patches.

Signed-off-by: Stanislav Kinsbursky <skinsbursky@openvz.org>
Acked-by: Pavel Emelyanov <xemul@parallels.com>
Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
2012-02-29 17:42:30 +04:00
..
atomic.h Gather futex helpers into lock.h 2011-12-26 23:54:18 +04:00
bitops.h restore: Add mutexes via futex syscall and order threads creation 2011-11-18 16:09:01 +04:00
compiler.h files: Use sys_kcmp to find file descriptor duplicates v4 2012-02-28 19:13:47 +04:00
crtools.h IPC: dump semaphores set 2012-02-15 13:33:46 +04:00
file-ids.h files: Use sys_kcmp to find file descriptor duplicates v4 2012-02-28 19:13:47 +04:00
files.h files: Use sys_kcmp to find file descriptor duplicates v4 2012-02-28 19:13:47 +04:00
image.h parasite: support sockets queues 2012-02-29 17:42:30 +04:00
inet_diag.h Trivial whitespace cleanup 2012-01-30 21:29:42 +04:00
ipc_ns.h IPC: show semaphores set 2012-02-15 13:33:46 +04:00
libnetlink.h net: Define named constant for nlmsg_seq 2011-12-27 20:13:18 +04:00
list.h list: Cleanup spaces/tabs mess 2012-02-01 14:38:49 +04:00
lock.h lock: add a new primitive cr_wait_until_greater (v2) 2012-01-19 16:16:58 +04:00
log.h log: Add log-levels 2012-02-20 14:23:28 +04:00
namespaces.h namespaces: parametrized namespace option introduced 2012-01-31 22:32:22 +04:00
parasite-syscall.h dump: use prctl to dump clear_tid_address 2012-02-22 15:06:51 +04:00
parasite.h parasite: support sockets queues 2012-02-29 17:42:30 +04:00
proc_parse.h open_proc() and friends: hide pid_dir 2012-02-17 16:46:25 +04:00
processor-flags.h Add processor-flags.h 2012-02-14 17:18:08 +04:00
ptrace.h dump: use prctl to dump clear_tid_address 2012-02-22 15:06:51 +04:00
rbtree.h files: Use sys_kcmp to find file descriptor duplicates v4 2012-02-28 19:13:47 +04:00
restorer-log.h restorer: move log descriptor from crtools (v2) 2012-01-17 18:08:03 +03:00
restorer.h restore: Add checkpoint/restore for /proc/pid/exe symlink 2012-02-07 20:08:01 +04:00
sockets.h parasite: support sockets queues 2012-02-29 17:42:30 +04:00
syscall-codes.h parasite: support sockets queues 2012-02-29 17:42:30 +04:00
syscall.h parasite: support sockets queues 2012-02-29 17:42:30 +04:00
sysctl.h Add sysctl handling engine 2012-02-02 21:22:20 +04:00
types.h syscalls: Introduce sys_kcmp syscall 2012-02-28 19:13:46 +04:00
unix_diag.h sockets: Update unix_diag.h 2012-01-10 17:26:50 +04:00
util-net.h util: move recv_fd and send_fd in a separate file 2012-02-01 19:26:41 +04:00
util.h util: Add missing \n into BUG_ON_HANDLER 2012-02-28 19:13:47 +04:00
uts_ns.h namespaces: split UTS and generic code 2012-01-31 13:43:28 +04:00