[CRIU] CRIU tries to dump VFP registers while there is not VFP

Maikel Coenen maikel.coenen at nedap.com
Wed Aug 21 09:21:59 MSK 2019


>0/08/2019, 21:02, "Radostin Stoyanov" <rstoyanov1 at gmail.com> wrote:>On 20/08/2019 19:42, Radostin Stoyanov wrote:
>> Hi Maikel,
>>
>> What is your CRIU version, kernel version and CPU architecture?

root at mini-sheeva:~# criu --version
Version: 3.11
GitID: v3.11

root at mini-sheeva:~# cat /proc/cpuinfo
processor   : 0
model name  : Feroceon 88FR131 rev 1 (v5l)
BogoMIPS    : 333.33
Features    : swp half thumb fastmult edsp 
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant : 0x2
CPU part    : 0x131
CPU revision    : 1

Hardware    : Marvell Kirkwood (Flattened Device Tree)
Revision    : 0000
Serial      : 0000000000000000

root at mini-sheeva:~# uname -a
Linux mini-sheeva 4.19.0-yocto-standard-custom #1 PREEMPT Tue Aug 20 11:41:47 UTC 2019 armv5tel GNU/Linux

As you can see I am trying to get CRIU working on an ARMv5. Up till this point it is perfectly working.
Maybe that is part of the problem because you enabled VFP by default because most of the architectures from ARMv6 upwards
have VFP.

Do we already parse /proc/cpuinfo?

>
>P.S. it seems like CRIU assumes that CONFIG_VFP is enabled for arm: 
>https://github.com/checkpoint-restore/criu/commit/9c5817391 which is 
>likely the reason for the failure.
>
>What is the output of $ cat /proc/cpuinfo | grep vfp ?
>
>>
>> On 20/08/2019 12:59, Maikel Coenen wrote:
>>> Hi all,
>>>
>>> I’m currently experimenting with CRIU to dump a Java application. 
>>> Unfortunately, it fails during dump because it tries to save the VFP 
>>> register while I don’t have a VFP.
>>>
>>> (19.642166) Collecting fds (pid: 1031)
>>> (19.642209) ----------------------------------------
>>> (19.644116) Found 123 file descriptors
>>> (19.644203) ----------------------------------------
>>> (19.656345) Set up parasite blob using memfd
>>> (19.656457) Putting parasite blob into 0xb6c44000->0xab1b3000
>>> (19.657000) Dumping GP/FPU registers for 1031
>>> (19.657078) Error (compel/arch/arm/src/lib/infect.c:78): Can't obtain 
>>> FPU registers for 1031: Input/output error
>>> (19.657202) Error (compel/src/lib/infect.c:675): Can't obtain regs 
>>> for thread 1031
>>> (19.658142) Error (criu/cr-dump.c:1280): Can't infect (pid: 1031) 
>>> with parasite
>>> (19.658964) Unlock network
>>> (19.659036) Unfreezing tasks into 1
>>> (19.669074) Error (criu/cr-dump.c:1732): Dumping FAILED.
>>>
>>> Did I make a mistake in the build process using Yocto for CRIU or my 
>>> kernel or is it another setting of CRIU which I must enable/disable?
>>>
>>> Kind regards,
>>>
>>> Maikel Coenen
>>>
>>>
>>> _______________________________________________
>>> CRIU mailing list
>>> CRIU at openvz.org
>>> https://lists.openvz.org/mailman/listinfo/criu
>>
>
>




More information about the CRIU mailing list