[CRIU] [PATCH v4 0/3] net: diag -- Placate diag probing
Radostin Stoyanov
rstoyanov1 at gmail.com
Thu Dec 13 02:48:56 MSK 2018
On 12/12/2018 22:14, Cyrill Gorcunov wrote:
> On Wed, Dec 12, 2018 at 03:02:27PM +0100, Adrian Reber wrote:
>> On Wed, Dec 12, 2018 at 04:58:27PM +0300, Cyrill Gorcunov wrote:
>>> On Wed, Dec 12, 2018 at 02:54:22PM +0100, Adrian Reber wrote:
>>>> Hmm, I am running through runc which usually does -v4. I copied the
>>>> complete log file to:
>>>>
>>>> https://lisas.de/~adrian/dump.log
>>> Weird. Could you please remove /run/criu.kdat file and restart?
>> Please reload https://lisas.de/~adrian/dump.log
> So lack of error message is because pre-dump-finish enters with
> some @status != 0 from previous operation, and it looks like
> somewhere earlier we lost an error message. Will continue
> tomorrow.
I was able to reproduce the this issue (on fedora 29) with runc and the
following change seems to fix it.
diff --git a/criu/sockets.c b/criu/sockets.c
index 48c71940..09aa0637 100644
--- a/criu/sockets.c
+++ b/criu/sockets.c
@@ -826,8 +826,12 @@ int collect_sockets(struct ns_id *ns)
req.r.i.idiag_ext = 0;
req.r.i.idiag_states = -1; /* All */
tmp = do_collect_req(nl, &req, sizeof(req), inet_receive_one,
collect_err, ns, &req.r.i);
- if (tmp)
- err = tmp;
+ if (tmp) {
+ pr_warn("The current kernel doesn't support ipv4
raw_diag module\n");
+ if (tmp != -ENOENT)
+ err = tmp;
+
+ }
/* Collect IPv6 TCP sockets */
req.r.i.sdiag_family = AF_INET6;
@@ -866,8 +870,12 @@ int collect_sockets(struct ns_id *ns)
req.r.i.idiag_ext = 0;
req.r.i.idiag_states = -1; /* All */
tmp = do_collect_req(nl, &req, sizeof(req), inet_receive_one,
collect_err, ns, &req.r.i);
- if (tmp)
- err = tmp;
+ if (tmp) {
+ pr_warn("The current kernel doesn't support ipv6
raw_diag module\n");
+ if (tmp != -ENOENT)
+ err = tmp;
+
+ }
req.r.p.sdiag_family = AF_PACKET;
req.r.p.sdiag_protocol = 0;
Radostin
More information about the CRIU
mailing list