2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-22 09:58:09 +00:00

tcp: disable the repair mode only for sockets of a current process (v3)

rst_tcp_repair_sockets is filled when all sockets are collected,
but the repair mode should be disabled only for sockets which
are restored in a current process.

https://bugzilla.openvz.org/show_bug.cgi?id=3281

v2: add a comment
v3: typo fix

Fixes: 73e303c8e265 ('rst: Fix rst_tcp_sock memory management')
Signed-off-by: Andrey Vagin <avagin@openvz.org>
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
This commit is contained in:
Andrey Vagin 2015-07-15 14:21:00 +03:00 committed by Pavel Emelyanov
parent 9c96c55b7a
commit 2045ef1884

View File

@ -665,6 +665,13 @@ int rst_tcp_socks_prep(void)
list_for_each_entry(ii, &rst_tcp_repair_sockets, rlist) {
struct rst_tcp_sock *rs;
/*
* rst_tcp_repair_sockets contains all sockets, so we need to
* select sockets which restored in a current porcess.
*/
if (ii->sk_fd == -1)
continue;
rs = rst_mem_alloc(sizeof(*rs), RM_PRIVATE);
if (!rs)
return -1;