2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-22 01:51:51 +00:00
Pavel Emelyanov 505652ef86 page-server: Fine grained corking control (v3)
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: Pavel Emelyanov <xemul@parallels.com>
Acked-by: Andrew Vagin <avagin@odin.com>

Conflicts:
	include/util.h
	util.c
2015-11-11 19:13:57 +03:00
2015-09-01 12:30:56 +03:00
2015-08-10 17:44:53 +03:00
2015-07-24 18:57:35 +03:00
2015-08-03 17:06:42 +03:00
2012-03-25 23:31:20 +04:00
2015-07-23 15:12:50 +03:00
2015-04-22 15:39:05 +03:00
2015-09-02 15:53:31 +03:00
2013-04-01 12:29:06 +04:00
2015-08-18 18:17:31 +03:00
2014-12-19 18:58:46 +03:00
2012-07-30 13:52:37 +04:00
2013-04-30 20:17:55 +04:00
2014-09-30 21:48:10 +04:00
2014-09-30 21:48:13 +04:00
2015-08-18 18:17:31 +03:00
2014-09-30 21:48:13 +04:00
2015-04-14 15:18:32 +03:00
2015-03-13 14:42:54 +03:00
2015-08-18 18:17:31 +03:00
2015-10-28 10:30:29 +03:00
2015-08-03 17:14:18 +03:00
2015-10-22 17:13:31 +04:00
2014-09-03 20:56:58 +04:00
2015-03-13 14:42:54 +03:00
2014-09-03 20:48:36 +04:00
2015-03-16 15:58:32 +03:00
2015-05-19 22:38:06 +03:00
2013-12-12 09:58:50 +04:00
2013-12-12 09:58:50 +04:00
2015-02-10 16:54:31 +03:00
2015-10-22 17:20:57 +04:00
2014-09-30 21:48:13 +04:00
2014-09-30 21:48:13 +04:00
2013-11-29 15:36:07 +04:00
2015-05-12 15:58:58 +03:00

CRIU (Checkpoint and Restore in Userspace)

An utility to checkpoint/restore tasks. Using this tool, you can freeze a running application (or part of it) and checkpoint it to a hard drive as a collection of files. You can then use the files to restore and run the application from the point it was frozen at. The distinctive feature of the CRIU project is that it is mainly implemented in user space.

The project home is at http://criu.org.

Pages worth starting with are:

How to contribute

Description
No description provided
Readme 81 MiB
Languages
C 86%
Python 6.1%
Java 2.6%
Shell 2.6%
Makefile 2%
Other 0.7%