[CRIU] Restoring failed on ARMv7

Christopher Covington cov at codeaurora.org
Fri Oct 30 06:58:48 PDT 2015


On 10/30/2015 05:52 AM, Pavel Emelyanov wrote:
> On 10/30/2015 12:38 PM, Artem Kuzmitskiy wrote:
>> Hi all,
>>
>> I checked criu on armv7 with 3.16 kernel and got next error when restoring:
>> ....
>> (00.087176)   6034: task_args: 0xd6000
>> task_args->pid: 6034
>> task_args->nr_threads: 1
>> task_args->clone_restore_fn: 0xd1c90
>> task_args->thread_args: 0xd62c0
>> pie: Switched to the restorer 6034
>> pie: Error (pie/restorer.c:772): Unable to unmap (-): 1992687616

The return code appears to be positive. What does that mean?

> Ouch, the pie logging is ... not complete :) Can you strace the restoring
> to see what's going on with this syscall?

There's a bug with %p I've never chased down. Cast to unsigned long and and
use an %lx format and the address should print fine.

>> pie: Error (pie/restorer.c:1304): Restorer fail 6034
>> (00.087584) Error (cr-restore.c:1927): Restoring FAILED
>> ...
>>
>> Is it current criu limitation or kernel should patched?
> 
> I'm not an expert on ARM :) Maybe Christopher would suggest something?
> 
>> Test performed on two versions of criu, details below.
>>
>> Kernel version:
>> 3.16 + configuration options from criu.org <http://criu.org>

When I first saw the error, a VDSO issue came to mind, but I don't think the
VDSO was introduced to 32 bit ARM until v4.0-rc1.

I'm not quite sure what's going on. Knowing what the address is (fix/hack up
the error message) and what's there (correlate with /proc/$pid/maps) might
help in debugging.

Christopher Covington

-- 
Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project


More information about the CRIU mailing list