[CRIU] Re: Restore failed if a process is dumped/restored in a loop

Andrey Wagin avagin at gmail.com
Thu Sep 6 10:13:48 EDT 2012


I found that a wrong vma is marked as stack after restore
Before dump:
7fffaddab000-7fffaddcc000 rw-p 00000000 00:00 0                          [stack]
After restore:
00001000-00024000 rwxp 00000000 00:00 0
  [stack:7559]

If a task calls any syscall, a correct vma will be marked as stack.
It is, because pr_regs->esp in kernel is updated on syscalls.

2012/9/6 Andrey Vagin <avagin at openvz.org>:
> The problem is due to MAP_GROWSDOWN again.
>
> The log from strace:
> 7313  mmap(0x25000, 147456, PROT_READ|PROT_WRITE|PROT_EXEC,
> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS|MAP_GROWSDOWN, -1, 0) = 0x25000
>
> cat /proc/7313/maps
> 00026000-00049000 rwxp 00000000 00:00 0


More information about the CRIU mailing list