[CRIU] lxc-checkpoint restore failed
Jason Lee
ldm5235 at gmail.com
Thu Oct 15 04:58:33 PDT 2015
OK!
Here it is:
root at dslab:/home/dslab/tools/criu# ./crit show
/home/checkpoint/c2/packetsk.img
{
"magic": "PACKETSK",
"entries": [
{
"id": 61,
"type": 10,
"protocol": 768,
"flags": "0x80002",
"ifindex": 73,
"fown": {
"uid": 0,
"euid": 0,
"signum": 0,
"pid_type": 0,
"pid": 0
},
"opts": {
"so_sndbuf": 212992,
"so_rcvbuf": 212992,
"so_snd_tmo_sec": 0,
"so_snd_tmo_usec": 0,
"so_rcv_tmo_sec": 0,
"so_rcv_tmo_usec": 0,
"reuseaddr": false,
"so_priority": 0,
"so_rcvlowat": 1,
"so_mark": 0,
"so_passcred": false,
"so_passsec": false,
"so_dontroute": false,
"so_no_check": false,
"so_filter": [
1.1258999068426252e+16,
5911008870664192.0,
1.3510798882111512e+16,
5911000280727569.0,
1.125899906842626e+16,
1.942617143955456e+16,
4.982107087778613e+16,
2.026619832316725e+16,
5910978805891140.0,
1688854155231231.0,
1688849860263936.0
]
},
"version": 0,
"reserve": 0,
"aux_data": false,
"orig_dev": false,
"vnet_hdr": false,
"loss": false,
"timestamp": 0,
"copy_thresh": 0
}
]
}
2015-10-15 17:27 GMT+08:00 Pavel Emelyanov <xemul at parallels.com>:
> On 10/14/2015 09:54 PM, Tycho Andersen wrote:
>
> >>> Warn (cr-restore.c:1041): Set CLONE_PARENT | CLONE_NEWPID but it
> might cause restore problem,because not all kernels support such clone
> flags combinations!
> >>> RTNETLINK answers: File exists
> >>> RTNETLINK answers: File exists
> >>> RTNETLINK answers: File exists
> >>> RTNETLINK answers: File exists
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x36a8 peer 0 (name /run/systemd/notify dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x36aa peer 0 (name /run/systemd/private dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x36b4 peer 0 (name /run/systemd/shutdownd dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x36b6 peer 0 (name /run/systemd/journal/dev-log dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x36ba peer 0 (name /run/systemd/journal/stdout dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x36bc peer 0 (name /run/systemd/journal/socket dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x5bad peer 0x70ea (name /run/systemd/journal/stdout dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x6da7 peer 0x3788 (name /run/systemd/journal/stdout dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x6da6 peer 0x5f21 (name /run/systemd/journal/stdout dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x6da8 peer 0x784b (name /run/systemd/journal/stdout dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x6da9 peer 0x6b10 (name /run/systemd/journal/stdout dir -)
> >>> 1: Warn (sk-unix.c:1229): sk unix: Can't unlink stale socket
> 0x6daa peer 0x6159 (name /run/systemd/journal/stdout dir -)
> >>> 68: Error (sk-packet.c:419): Can't bind packet socket: Invalid
> argument
> >>> Error (cr-restore.c:1236): 3159 killed by signal 19
> >>> Error (cr-restore.c:1236): 3159 killed by signal 19
> >>> Error (cr-restore.c:1933): Restoring FAILED.
> >
> > Here the real problem. bind() is failing, probably because the unlink
> > above failed. Unfortunately, we don't log the reason for the bind()
> > failing, can you try with the attached patch?
>
> The unlink failed with ENOENT, so there's no conflict for bind. Also note,
> that we unlink unix socket, but bind the packet one :) so the conflict is
> not only not there, but not possible at all ;)
>
> After looking at the kernel sources, I guess this is failure of criu --
> there
> are two types of packet socket and each imposes different requirements on
> the
> sockaddr structure that is passed into bind. And criu looks like to support
> only one of them :\
>
> Jason, can you show the decoded contents of packetsk.img file?
>
> > Pavel, perhaps we should apply this so it does report the error?
>
> Applied. Would you send one more patch making the unlink_stale() void? :)
>
> -- Pavel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvz.org/pipermail/criu/attachments/20151015/17c0351c/attachment.html>
More information about the CRIU
mailing list