[CRIU] Process migration between two RPi2 with Criu
alex vk
avankemp at gmail.com
Mon May 23 02:04:32 PDT 2016
Hi,
The two Rpi2 are identical, and has each 4 processors.
Here is their respective /proc/cpuinfo :
RPI 1 (where restore fails)
pi at raspberrypi:~ $ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 1
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 2
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 3
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
Hardware : BCM2709
Revision : a01041
Serial : 0000000026505904
----------------------------------------------------------------------
RPI 2 (where restore suceeds)
pi at raspberrypi:~ $ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 1
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 2
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 3
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
vfpd32 lpae evtstrm
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
Hardware : BCM2709
Revision : a01041
Serial : 0000000004b73703
2016-05-21 17:01 GMT+02:00 Andrew Vagin <avagin at virtuozzo.com>:
> How many cpus has each of these RPi-s?
>
> cat /proc/cpuinfo
>
> On Fri, May 20, 2016 at 11:06:53AM +0200, alex vk wrote:
> > Hi Andrew,
> >
> > You're right, there was no "cpuset" on the Rpi where I tried the
> restoring
> > process, whereas it's present on the other one..
> > If I swap the roles between the two Pis, the checkpoint/restore succeeds
> :)
> >
> > I dont't really understand how come the configuration is different as I
> was
> > using the exact same image loaded on the SD card..
> > Do you have an idea why cpuset it disabled on one Rpi, or how I could
> enable it
> > ?
> >
> > Thanks a lot,
> > Alex.
> >
> >
> > Raspberry 1 : (Restore on this Rpi)
> > pi at raspberrypi:~ $ cat /proc/cgroups
> > #subsys_name hierarchy num_cgroups enabled
> > cpu 2 1 1
> > cpuacct 2 1 1
> > memory 0 1 0
> > devices 3 1 1
> > freezer 4 1 1
> > net_cls 5 1 1
> > blkio 6 1 1
> >
> > Raspberry 2 : (Snapshot on this Rpi)
> > #subsys_name hierarchy num_cgroups enabled
> > cpuset 2 1 1
> > cpu 3 1 1
> > cpuacct 3 1 1
> > memory 0 1 0
> > devices 4 1 1
> > freezer 5 1 1
> > net_cls 6 1 1
> > blkio 7 1 1
> >
> > 2016-05-19 23:26 GMT+02:00 Andrew Vagin <avagin at virtuozzo.com>:
> >
> > Hi Alex,
> >
> > Can you show /proc/cgroups from both hosts?
> >
> > On Thu, May 19, 2016 at 06:37:10PM +0200, alex vk wrote:
> > >
> > > pi at raspberrypi:~/criu/criu $ ./migrate-ssh.sh
> > > Warn (autofs.c:74): Failed to find pipe_ino option (old kernel?)
> > > Connection to 192.168.0.2 closed.
> > > Snapshoted
> > > cgroup.img 100% 1948 1.9KB/s
> > 00:00
> > > core-943.img 100% 602 0.6KB/s
> > 00:00
> > > fdinfo-2.img 100% 80 0.1KB/s
> > 00:00
> > > fs-943.img 100% 18 0.0KB/s
> > 00:00
> > > ids-943.img 100% 32 0.0KB/s
> > 00:00
> > > inetsk.img 100% 251 0.3KB/s
> > 00:00
> > > inventory.img 100% 38 0.0KB/s
> > 00:00
> > > mm-943.img 100% 1862 1.8KB/s
> > 00:00
> > > pagemap-943.img 100% 242 0.2KB/s
> > 00:00
> > > pages-1.img 100% 252KB 252.0KB/s
> > 00:00
> > > pstree.img 100% 26 0.0KB/s
> > 00:00
> > > reg-files.img 100% 994 1.0KB/s
> > 00:00
> > > sigacts-943.img 100% 752 0.7KB/s
> > 00:00
> > > stats-dump 100% 36 0.0KB/s
> > 00:00
> > > tty.img 100% 30 0.0KB/s
> > 00:00
> > > tty-info.img 100% 178 0.2KB/s
> > 00:00
> > > Image transfered
> > > (00.082257) Pagemap is fully functional
> > > (00.082543) Found task size of 7f000000
> > > (00.082892) Reading image tree
> > > (00.083089) Add mnt ns 5 pid 943
> > > (00.083211) Migrating process tree (GID 943->805 SID 791->741)
> > > (00.083259) Will restore in 0 namespaces
> > > (00.083295) NS mask to use 0
> > > (00.083331) Collecting 39/18 (flags 1)
> > > (00.083428) Collected [dev/pts/0] ID 0x1
> > > (00.083486) Collected [lib/arm-linux-gnueabihf/libresolv-2.19.so]
> ID 0x5
> > > (00.083536) Collected [lib/arm-linux-gnueabihf/libnss_dns-2.19.so]
> ID 0x6
> > > (00.083581) Collected [lib/arm-linux-gnueabihf/
> libnss_files-2.19.so] ID
> > 0x7
> > > (00.083626) Collected [lib/arm-linux-gnueabihf/libc-2.19.so] ID
> 0x8
> > > (00.083672) Collected [lib/arm-linux-gnueabihf/libgcc_s.so.1] ID
> 0x9
> > > (00.083715) Collected [lib/arm-linux-gnueabihf/libm-2.19.so] ID
> 0xa
> > > (00.083759) Collected
> [usr/lib/arm-linux-gnueabihf/libstdc++.so.6.0.20]
> > ID 0xb
> > > (00.083804) Collected [lib/arm-linux-gnueabihf/libz.so.1.2.8] ID
> 0xc
> > > (00.083847) Collected
> [usr/lib/arm-linux-gnueabihf/libenet.so.7.0.0] ID
> > 0xd
> > > (00.083892) Collected [usr/lib/arm-linux-gnueabihf/libarmmem.so]
> ID 0xe
> > > (00.083935) Collected [lib/arm-linux-gnueabihf/ld-2.19.so] ID 0xf
> > > (00.083978) Collected
> [lib/arm-linux-gnueabihf/libnss_mdns4_minimal.so.2]
> > ID
> > > 0x10
> > > (00.084022) Collected [usr/lib/cube2/cube2_server] ID 0x11
> > > (00.084064) Collected [usr/lib/cube2] ID 0x12
> > > (00.084104) Collected [.] ID 0x13
> > > (00.084151) `- ... done
> > > (00.084182) Collecting 52/56 (flags 0)
> > > (00.084259) No remap-fpath.img image
> > > (00.084318) `- ... done
> > > (00.084384) Collecting 42/21 (flags 0)
> > > (00.084549) `- ... done
> > > (00.084991) cg: Preparing cgroups yard (cgroups restore mode 0x4)
> > > (00.089011) cg: Opening .criu.cgyard.lg48ci as cg yard
> > > (00.089161) cg: Making controller dir .criu.cgyard.lg48ci/blkio
> (blkio)
> > > (00.089465) cg: Determined cgroup dir blkio/ already exist
> > > (00.089495) cg: Skip restoring properties on cgroup dir blkio/
> > > (00.089593) cg: Making controller dir .criu.cgyard.lg48ci/net_cls
> > (net_cls)
> > > (00.089862) cg: Determined cgroup dir net_cls/ already exist
> > > (00.089899) cg: Skip restoring properties on cgroup dir net_cls/
> > > (00.089978) cg: Making controller dir .criu.cgyard.lg48ci/freezer
> > (freezer)
> > > (00.090218) cg: Determined cgroup dir freezer/ already exist
> > > (00.090257) cg: Skip restoring properties on cgroup dir freezer/
> > > (00.090334) cg: Making controller dir .criu.cgyard.lg48ci/devices
> > (devices)
> > > (00.090646) cg: Determined cgroup dir devices/ already exist
> > > (00.090708) cg: Skip restoring properties on cgroup dir devices/
> > > (00.090811) cg: Making controller dir
> .criu.cgyard.lg48ci/cpu,cpuacct
> > > (cpu,cpuacct)
> > > (00.091066) cg: Determined cgroup dir cpu,cpuacct/ already exist
> > > (00.091123) cg: Skip restoring properties on cgroup dir
> cpu,cpuacct/
> > > (00.091229) cg: Making controller dir .criu.cgyard.lg48ci/cpuset
> > (cpuset)
> > > (00.091431) Error (cgroup.c:1562): cg: Can't mount controller dir
> > > .criu.cgyard.lg48ci/cpuset: No such file or directory
> > >
> > > Hi everyone,
> > >
> > > I'm coming back to you because I
> > > still have a problem when
> > > restoring a snapshotted process
> > > from a given RPi2 on another
> > > RPi2.
> > >
> > > The snapshot/restore works well
> > > on the same RPi2 thanks to the
> > > patch :
> > > https://lists.openvz.org/
> > > pipermail/criu/2016-April/
> > > 027743.html
> > > (Criu-dev version + patch and
> > > Kernel 3.18)
> > >
> > > However when I try to restore a
> > > snapshotted process from a given
> > > RPi2 on another RPi2. (with
> > > exactly the same image installed ssh -t
> > > on the SD card) I obtain the pi at 192.168.0.1
> > > following error : 'pid=$(pidof
> scp
> > > (00.091431) Error cube2_server);
> > pi at 192.168.0.1: sudo criu restore
> > > (cgroup.c:1562): cg: Can't mount sudo criu dump -D echo
> /home/
> > pi/ echo "Image -d -D /home/pi/ echo "Image restored"
> > > controller dir /home/pi/ "Snapshotted"
> > checkpoint/* / transferred" checkpoint/
> > --------------------------------
> > > .criu.cgyard.lg48ci/cpuset: No checkpoint/ -t
> home/pi
> > / --shell-job
> > > such file or directory $pid
> > checkpoint/ --tcp-established
> > > (the snapshot process has --tcp-established
> > > succeeded on the first Rpi2) --shell-job'
> > >
> > > The dir .criu.cgyard.lg48ci is
> > > indeed empty.
> > > CONFIG_CGROUPS and CONFIG_MEMCG
> > > are enabled (CONFIG_MEMCG_SWAP
> > > and CONFIG_MEMCG_KMEM are
> > > disabled) if that matters...
> > >
> > > Am I doing something wrong here ?
> > >
> > >
> > > Thanks again for your help,
> > >
> > > Alex
> > >
> > >
> > > Here is the simple script i'm
> > > using to migrate and the full log
> > > of the restore:
> > >
> > > --------------------------------
> >
> > > _______________________________________________
> > > CRIU mailing list
> > > CRIU at openvz.org
> > > https://lists.openvz.org/mailman/listinfo/criu
> >
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvz.org/pipermail/criu/attachments/20160523/6fc59b01/attachment-0001.html>
More information about the CRIU
mailing list