• Pavel Emelyanov's avatar
    page-server: Fine grained corking control (v3) · a20ed3c6
    Pavel Emelyanov authored
    When live migrating a container with large amount of processes
    inside the time to do page-server-ed dump may be up to 10 times
    slower than for the local dump.
    
    The delay is always introduced in the open_page_server_xfer()
    when criu negotiates the has_parent bit on the 2nd task. This
    likely happens because of the Nagel algo taking place -- after
    the write() of the OPEN2 command happened kernel delays this
    command sending waiting for more data.
    
    v2:
    Fix this by turning on CORK option on memory transfer sockets
    on send side, and NODELAY one once on urgent data. Receive
    side is always NODELAY-ed. According to Alexey Kuznetsov this
    is the best mode ever for such type of transfers.
    
    v3:
    Push packets in pre-dump's check_parent_server_xfer too.
    Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
    Acked-by: 's avatarAndrew Vagin <avagin@odin.com>
    a20ed3c6
Name
Last commit
Last update
..
asm-generic Loading commit data...
action-scripts.h Loading commit data...
aio.h Loading commit data...
bfd.h Loading commit data...
bug.h Loading commit data...
cgroup.h Loading commit data...
compiler.h Loading commit data...
config-base.h Loading commit data...
cpu.h Loading commit data...
cr-errno.h Loading commit data...
cr-service-const.h Loading commit data...
cr-service.h Loading commit data...
cr-show.h Loading commit data...
cr_options.h Loading commit data...
criu-log.h Loading commit data...
criu-plugin.h Loading commit data...
crtools.h Loading commit data...
err.h Loading commit data...
errno.h Loading commit data...
eventfd.h Loading commit data...
eventpoll.h Loading commit data...
fault-injection.h Loading commit data...
fcntl.h Loading commit data...
fifo.h Loading commit data...
file-ids.h Loading commit data...
file-lock.h Loading commit data...
files-reg.h Loading commit data...
files.h Loading commit data...
fs-magic.h Loading commit data...
fsnotify.h Loading commit data...
image-desc.h Loading commit data...
image.h Loading commit data...
imgset.h Loading commit data...
inet_diag.h Loading commit data...
ipc_ns.h Loading commit data...
irmap.h Loading commit data...
kcmp-ids.h Loading commit data...
kcmp.h Loading commit data...
kerndat.h Loading commit data...
libnetlink.h Loading commit data...
list.h Loading commit data...
lock.h Loading commit data...
log.h Loading commit data...
lsm.h Loading commit data...
magic.h Loading commit data...
mem.h Loading commit data...
mman.h Loading commit data...
mount.h Loading commit data...
namespaces.h Loading commit data...
net.h Loading commit data...
netfilter.h Loading commit data...
netlink_diag.h Loading commit data...
packet_diag.h Loading commit data...
page-pipe.h Loading commit data...
page-read.h Loading commit data...
page-xfer.h Loading commit data...
pagemap-cache.h Loading commit data...
parasite-syscall.h Loading commit data...
parasite-vdso.h Loading commit data...
parasite.h Loading commit data...
pid.h Loading commit data...
pipes.h Loading commit data...
plugin.h Loading commit data...
posix-timer.h Loading commit data...
prctl.h Loading commit data...
proc_parse.h Loading commit data...
protobuf-desc.h Loading commit data...
protobuf.h Loading commit data...
pstree.h Loading commit data...
ptrace.h Loading commit data...
rbtree.h Loading commit data...
restorer.h Loading commit data...
rst-malloc.h Loading commit data...
rst_info.h Loading commit data...
seccomp.h Loading commit data...
security.h Loading commit data...
seize.h Loading commit data...
servicefd.h Loading commit data...
setproctitle.h Loading commit data...
shmem.h Loading commit data...
sigframe.h Loading commit data...
signalfd.h Loading commit data...
sk-inet.h Loading commit data...
sk-packet.h Loading commit data...
sk-queue.h Loading commit data...
sockets.h Loading commit data...
stats.h Loading commit data...
string.h Loading commit data...
syscall-types.h Loading commit data...
sysctl.h Loading commit data...
sysfs_parse.h Loading commit data...
timerfd.h Loading commit data...
tty.h Loading commit data...
tun.h Loading commit data...
unix_diag.h Loading commit data...
util-pie.h Loading commit data...
util-vdso.h Loading commit data...
util.h Loading commit data...
uts_ns.h Loading commit data...
vdso.h Loading commit data...
vma.h Loading commit data...
xmalloc.h Loading commit data...