-
Cyrill Gorcunov authored
The maximal size which may be used in the kernel for sending TCP data on restore is varies depending on how many memory installed on the system, moreover the memory allocated for "read queue" is bigger than used for "write queue". Thus when we checkpointed a big slab of data we need to figure out which size is allowed for sending data on restore. For this we read /proc/sys/net/ipv4/tcp_[wmem|rmem] on restore and calculate the size needed, then we simply chop data to segements and send it in a loop. Typical output on restore is something like | (00.013001) 30110: TCP queue memory limits are 2097152:3145728 https://bugzilla.openvz.org/show_bug.cgi?id=2751 [xemul: moved stuff to kerndat.c] Reported-by:
Andrey Vagin <avagin@openvz.org> Signed-off-by:
Cyrill Gorcunov <gorcunov@openvz.org> Signed-off-by:
Pavel Emelyanov <xemul@parallels.com>
664659a0